summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/bench/shootout/fpascal2.diff
blob: 440cde58e27817174ab58d11fdc13e8badafbafe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
Index: Make.header
===================================================================
RCS file: /cvsroot/shootout/shootout/Make.header,v
retrieving revision 1.95
diff -u -r1.95 Make.header
--- Make.header	18 May 2007 03:09:48 -0000	1.95
+++ Make.header	28 May 2007 10:36:22 -0000
@@ -26,6 +26,7 @@
 ERLANG := /usr/bin/erl
 FELIX := /usr/bin/flx
 FPASCAL := /usr/bin/fpc
+FPASCAL2 := /usr/bin/fpc2
 G95 := /usr/bin/g95
 GFORTRAN := /usr/bin/gfortran
 GAWK := /usr/bin/gawk
@@ -113,7 +114,7 @@
 XEMACS := /usr/bin/xemacs
 
 LANGS := $(BASH) $(BIGLOO) $(CHICKEN) $(CIAOC) $(CLM) $(CMUCL) $(CURRY) $(CYCLONE) \
-	 $(DLANG) $(ERLANG) $(FELIX) $(FPASCAL) $(G95) $(GFORTRAN) \
+	 $(DLANG) $(ERLANG) $(FELIX) $(FPASCAL) $(FPASCAL2) $(G95) $(GFORTRAN) \
 	 $(GAWK) $(GCC) $(GCL) $(GCJ) $(GFORTH) $(GHC) $(GPC) $(GST) $(GUILE) \
 	 $(GWYDION) $(GXX) $(HUGS) $(ICON) $(ICPP) $(IFC) $(IO) $(IRON) $(GIJ) \
 	 $(JAVA14) $(JAVA15) $(KAFFE) $(JAVASCRIPT) $(LUA) $(MAWK) $(MERCURY) \
Index: Minibench.conf
===================================================================
RCS file: /cvsroot/shootout/shootout/Minibench.conf,v
retrieving revision 1.101
diff -u -r1.101 Minibench.conf
--- Minibench.conf	18 May 2007 03:09:48 -0000	1.101
+++ Minibench.conf	28 May 2007 10:36:22 -0000
@@ -6,7 +6,7 @@
 tabdir       data
 
 automake     bigloo,chicken,ciao,clean,cmucl,csharp,curry,cyc,dlang,erlang,
-automake     felix,fpascal,g95,gpp,gcc,gcj,gcl,gfortran,ghc,gij,gnat,gpc,
+automake     felix,fpascal,fpascal2,g95,gpp,gcc,gcj,gcl,gfortran,ghc,gij,gnat,gpc,
 automake     gprolog,gwydion,hipe,hugs,icc,icon,icpp,ifc,iron,java,java14,javaxint,
 automake     javaclient,kaffe,mercury,mlton,mzscheme,mzc,
 automake     nhc98,nice,objc,ocaml,ocamlb,ooc,oz,parrot,pike,poly,python,psyco,
Index: langs.pl
===================================================================
RCS file: /cvsroot/shootout/shootout/langs.pl,v
retrieving revision 1.100
diff -u -r1.100 langs.pl
--- langs.pl	1 May 2007 20:43:32 -0000	1.100
+++ langs.pl	28 May 2007 10:36:22 -0000
@@ -932,6 +932,22 @@
        },
      },
 
+     fpascal2 =>
+     { Lang => 'Pascal2',
+       Name => 'Free Pascal',
+       Status => '+',
+       Home => 'http://www.freepascal.org',
+       Down => 'http://www.freepascal.org/download.html',
+       Type => 'native compiled',
+       Note => 'Structured programming plus objects',
+       Ext  => 'pas',
+       Verfun => sub {
+           my $ver = `$ENV{FPASCAL2} -i`;
+	   $ver =~ /(Free Pascal.*version [\d\.]+)/;
+	   return $1;
+       },
+     },
+
      php =>
      { Lang => 'PHP',
        Home => 'http://www.php.net/',
Index: bench/Makefile.mb
===================================================================
RCS file: /cvsroot/shootout/shootout/bench/Makefile.mb,v
retrieving revision 1.148
diff -u -r1.148 Makefile.mb
--- bench/Makefile.mb	8 Apr 2007 06:17:43 -0000	1.148
+++ bench/Makefile.mb	28 May 2007 10:36:22 -0000
@@ -23,6 +23,7 @@
 DLANGOPTS := -O -inline -release $(DLANGOPTS)
 FLXOPTS := -c --optimize --static
 FPCOPTS := -XX -Xs -O3p3r -Fi../../Include/fpascal -Fu../../Include/fpascal -I../../Include/fpascal $(FPCOPTS)
+FPC2OPTS := -XX -Xs -O3 -Fi../../Include/fpascal -Fu../../Include/fpascal -I../../Include/fpascal $(FPC2OPTS)
 G95OPTS := -pipe -Wall $(COPTS) $(G95OPTS)
 GCCOPTS := -pipe -Wall $(COPTS) $(GCCOPTS)
 GCJOPTS := $(COPTS) $(GCJOPTS)
@@ -665,6 +666,15 @@
 	-mv FPASCAL_RUN $@
 	-@rm -f $*.o
 
+%.pas: $(MB_SRCDIR)/%.fpascal2 $(FPASCAL2)
+	-cp $< $@
+
+%.fpascal2_run: %.pas
+	-@rm -f $@ 
+	-$(FPASCAL2) $(FPC2OPTS) -oFPASCAL_RUN $<
+	-mv FPASCAL_RUN $@
+	-@rm -f $*.o
+
 ########################################
 # gpc (GNU Pascal Compiler)
 ########################################
Index: bench/hello/Minibench.conf
===================================================================
RCS file: /cvsroot/shootout/shootout/bench/hello/Minibench.conf,v
retrieving revision 1.76
diff -u -r1.76 Minibench.conf
--- bench/hello/Minibench.conf	18 May 2007 03:09:48 -0000	1.76
+++ bench/hello/Minibench.conf	28 May 2007 10:36:23 -0000
@@ -2,7 +2,7 @@
 #
 
 automake     bigloo,chicken,ciao,clean,cmucl,csharp,cyc,dlang,erlang,felix,
-automake     fpascal,g95,gfortran,gpp,gcc,gcj,gcl,ghc,gij,gnat,gprolog,gwydion,hipe,hugs,
+automake     fpascal,fpascal2,g95,gfortran,gpp,gcc,gcj,gcl,ghc,gij,gnat,gprolog,gwydion,hipe,hugs,
 automake     icon,icc,icpp,ifc,iron,java,java14,javaxint,javaclient,kaffe,mercury,
 automake     mlton,mzc,nhc98,nice,oberon2,objc,ocaml,ocamlb,ooc,oz,parrot,pike,
 automake     python,poly,psyco,rep,sablevm,sbcl,scala,se,smlnj,stalin,swiprolog,
@@ -27,6 +27,7 @@
 commandline  gwydion: repeat %A ./%X
 commandline  felix: repeat %A %X
 commandline  fpascal: repeat %A %X
+commandline  fpascal2: repeat %A %X
 commandline  erlang: repeat %A $ERLANG $ERLFLAGS -noinput -run %T main
 commandline  gawk: repeat %A $GAWK -f ../%X
 commandline  g95: repeat %A %X
Index: bench/lists/Minibench.conf
===================================================================
RCS file: /cvsroot/shootout/shootout/bench/lists/Minibench.conf,v
retrieving revision 1.29
diff -u -r1.29 Minibench.conf
--- bench/lists/Minibench.conf	3 Nov 2006 15:16:11 -0000	1.29
+++ bench/lists/Minibench.conf	28 May 2007 10:36:23 -0000
@@ -6,7 +6,7 @@
 tabdir       data
 
 automake     bigloo,chicken,ciao,clean,cmucl,csharp,curry,cyc,dlang,erlang,
-automake     felix,fpascal,g95,gfortran,gpp,gcc,gcj,gcl,ghc,gij,gnat,gprolog,
+automake     felix,fpascal,fpascal2,g95,gfortran,gpp,gcc,gcj,gcl,ghc,gij,gnat,gprolog,
 automake     gwydion,hipe,hugs,icon,icc,icpp,iron,java,java14,kaffe,mercury,mlton,
 automake     mzc,nhc98,nice,oberon2,objc,ocaml,ocamlb,ooc,oz,poly,python,psyco,
 automake     rep,sablevm,sbcl,scala,se,smlnj,stalin,tcc,xds,xemacs,njs
Index: bin/make_links
===================================================================
RCS file: /cvsroot/shootout/shootout/bin/make_links,v
retrieving revision 1.11
diff -u -r1.11 make_links
--- bin/make_links	6 Oct 2006 17:00:29 -0000	1.11
+++ bin/make_links	28 May 2007 10:36:24 -0000
@@ -11,6 +11,7 @@
 
    cmucl =>    [ 'sbcl', 'gcl' ],
    erlang =>   [ 'hipe' ],
+   fpascal =>  [ 'fpascal2' ],
    ghc =>      [ 'nhc98', 'hugs' ],
    gcc =>      [ 'icc', 'tcc' ],
    gpp =>      [ 'icpp' ],