summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2007-12-01 14:34:50 +0000
committerjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2007-12-01 14:34:50 +0000
commit0045cce1e96bef63a067f13cd26a3fa657e4533d (patch)
tree191686f2cd6b3faf5fb4bc90490fb3c91f820ac9
parenteaadaa3af8013b7925a334168c9989eb0ea1953f (diff)
downloadfpc-0045cce1e96bef63a067f13cd26a3fa657e4533d.tar.gz
* fixed tests now that i386 assembler code is checked for correct PIC
usage in case PIC generation is on (some by adding PIC-versions of the assembler code, most by adding -Cg- to the options to be used). Note: the Intel assembler reader does not yet support the Delphi PIC construct, so tests with that (like test/tasmread and test/tcg1) do not work with -Cg on non-Darwin (Darwin needs a different PIC construct) git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@9370 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r--tests/tbf/tb0037.pp1
-rw-r--r--tests/tbs/tb0106.pp1
-rw-r--r--tests/tbs/tb0145.pp1
-rw-r--r--tests/tbs/tb0193.pp1
-rw-r--r--tests/tbs/tb0194.pp1
-rw-r--r--tests/tbs/tb0236.pp1
-rw-r--r--tests/tbs/tb0261.pp1
-rw-r--r--tests/tbs/tb0267.pp1
-rw-r--r--tests/tbs/tb0275.pp1
-rw-r--r--tests/tbs/tb0319.pp1
-rw-r--r--tests/tbs/tb0320.pp1
-rw-r--r--tests/tbs/tb0495.pp1
-rw-r--r--tests/test/opt/tretopt.pp26
-rw-r--r--tests/test/tasmread.pp12
-rw-r--r--tests/test/tcg1.pp90
-rw-r--r--tests/test/testsse2.pp20
-rw-r--r--tests/test/tfpu3.pp1
-rw-r--r--tests/test/tfpu4.pp1
-rw-r--r--tests/test/tfpu5.pp1
-rw-r--r--tests/webtbf/tw3931b.pp1
-rw-r--r--tests/webtbs/tw0735.pp1
-rw-r--r--tests/webtbs/tw0761.pp1
-rw-r--r--tests/webtbs/tw0892.pp1
-rw-r--r--tests/webtbs/tw0919.pp1
-rw-r--r--tests/webtbs/tw0944.pp1
-rw-r--r--tests/webtbs/tw1023.pp1
-rw-r--r--tests/webtbs/tw1066a.pp1
-rw-r--r--tests/webtbs/tw1066b.pp1
-rw-r--r--tests/webtbs/tw1090.pp1
-rw-r--r--tests/webtbs/tw1117.pp1
-rw-r--r--tests/webtbs/tw1902.pp1
-rw-r--r--tests/webtbs/tw1950.pp1
-rw-r--r--tests/webtbs/tw2323.pp1
-rw-r--r--tests/webtbs/tw2668.pp1
-rw-r--r--tests/webtbs/tw2806.pp1
-rw-r--r--tests/webtbs/tw2998.pp2
-rw-r--r--tests/webtbs/tw3093.pp1
-rw-r--r--tests/webtbs/tw3274.pp1
-rw-r--r--tests/webtbs/tw3577.pp1
-rw-r--r--tests/webtbs/tw3863.pp1
-rw-r--r--tests/webtbs/tw3931a.pp1
-rw-r--r--tests/webtbs/tw4240.pp1
-rw-r--r--tests/webtbs/tw4388.pp2
-rw-r--r--tests/webtbs/tw4450.pp1
-rw-r--r--tests/webtbs/tw5015.pp1
-rw-r--r--tests/webtbs/tw8195a.pp1
-rw-r--r--tests/webtbs/tw8195b.pp1
47 files changed, 189 insertions, 4 deletions
diff --git a/tests/tbf/tb0037.pp b/tests/tbf/tb0037.pp
index e9b171bfa0..b482e280b2 100644
--- a/tests/tbf/tb0037.pp
+++ b/tests/tbf/tb0037.pp
@@ -1,4 +1,5 @@
{ %FAIL }
+{ %OPT=-Cg- }
{ Old file: tbf0175.pp }
{ Asm, mov word,%eax should not be allowed without casting emits a warning (or error with range checking enabled) OK 0.99.11 (PM) }
diff --git a/tests/tbs/tb0106.pp b/tests/tbs/tb0106.pp
index 6d26ec4f02..0dca9dab7a 100644
--- a/tests/tbs/tb0106.pp
+++ b/tests/tbs/tb0106.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0124b.pp }
{ }
diff --git a/tests/tbs/tb0145.pp b/tests/tbs/tb0145.pp
index b6d12ff030..6838a80fcf 100644
--- a/tests/tbs/tb0145.pp
+++ b/tests/tbs/tb0145.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0175.pp }
{ Asm, mov word,%eax should not be allowed without casting emits a warning (or error with range checking enabled) OK 0.99.11 (PM) }
diff --git a/tests/tbs/tb0193.pp b/tests/tbs/tb0193.pp
index a2c7880b1e..ee3beec9db 100644
--- a/tests/tbs/tb0193.pp
+++ b/tests/tbs/tb0193.pp
@@ -1,4 +1,5 @@
{ %skiptarget=win32,win64 }
+{ %OPT=-Cg- }
{ Old file: tbs0227.pp }
{ external var does strange things when declared in localsymtable OK 0.99.11 (PFV) }
diff --git a/tests/tbs/tb0194.pp b/tests/tbs/tb0194.pp
index 78cb8adf11..370547d266 100644
--- a/tests/tbs/tb0194.pp
+++ b/tests/tbs/tb0194.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0228.pp }
{ Asm, wrong warning for size OK 0.99.11 (PFV) }
diff --git a/tests/tbs/tb0236.pp b/tests/tbs/tb0236.pp
index 14867dce20..e21a374067 100644
--- a/tests/tbs/tb0236.pp
+++ b/tests/tbs/tb0236.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0276.pp }
{ Asm, intel reference parsing incompatibility OK 0.99.13 (PFV) }
diff --git a/tests/tbs/tb0261.pp b/tests/tbs/tb0261.pp
index 0d5c6e73eb..dda180c337 100644
--- a/tests/tbs/tb0261.pp
+++ b/tests/tbs/tb0261.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0304.pp }
{ Label redefined when inlining assembler OK 0.99.13 (PFV) }
diff --git a/tests/tbs/tb0267.pp b/tests/tbs/tb0267.pp
index 83337268a5..db435b1326 100644
--- a/tests/tbs/tb0267.pp
+++ b/tests/tbs/tb0267.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0309.pp }
{ problem with ATT assembler written by bin writer OK 0.99.14 (PFV) }
diff --git a/tests/tbs/tb0275.pp b/tests/tbs/tb0275.pp
index 1d7014ded7..f5c5a96ba8 100644
--- a/tests/tbs/tb0275.pp
+++ b/tests/tbs/tb0275.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Old file: tbs0322.pp }
{ }
diff --git a/tests/tbs/tb0319.pp b/tests/tbs/tb0319.pp
index 6192d02000..bc0f633b1c 100644
--- a/tests/tbs/tb0319.pp
+++ b/tests/tbs/tb0319.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode att}
const
diff --git a/tests/tbs/tb0320.pp b/tests/tbs/tb0320.pp
index b1354e3eae..15970a8df4 100644
--- a/tests/tbs/tb0320.pp
+++ b/tests/tbs/tb0320.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
const
diff --git a/tests/tbs/tb0495.pp b/tests/tbs/tb0495.pp
index 8f197ad9e4..1d5885f427 100644
--- a/tests/tbs/tb0495.pp
+++ b/tests/tbs/tb0495.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
var
Digits : array[0..63] of byte;
diff --git a/tests/test/opt/tretopt.pp b/tests/test/opt/tretopt.pp
index f733c46f6a..9483d2254c 100644
--- a/tests/test/opt/tretopt.pp
+++ b/tests/test/opt/tretopt.pp
@@ -281,8 +281,20 @@ begin
{$endif}
{$ifdef cpui386}
leal t,%eax
+{$ifndef FPC_PIC}
movl %eax,p3
-{$endif}
+{$else FPC_PIC}
+ call .Lpic
+.Lpic:
+ popl %ecx
+{$ifdef darwin}
+ movl %eax,p3-.Lpic(%ecx)
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %eax,p3@GOT(%ecx)
+{$endif darwin}
+{$endif FPC_PIC}
+{$endif cpui386}
end;
t.a:='x';
@@ -320,7 +332,19 @@ begin
{$endif}
{$ifdef cpui386}
leal t,%eax
+{$ifndef FPC_PIC}
movl %eax,p3
+{$else FPC_PIC}
+ call .Lpic
+.Lpic:
+ popl %ecx
+{$ifdef darwin}
+ movl %eax,p3-.Lpic(%ecx)
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %eax,p3@GOT(%ecx)
+{$endif darwin}
+{$endif FPC_PIC}
{$endif}
end;
diff --git a/tests/test/tasmread.pp b/tests/test/tasmread.pp
index 3db2c506b4..b30b593cd2 100644
--- a/tests/test/tasmread.pp
+++ b/tests/test/tasmread.pp
@@ -11,7 +11,19 @@ var l: longint;
begin
{$ifdef cpui386}
asm
+{$ifndef FPC_PIC}
mov test.l, 5
+{$else FPC_PIC}
+ call @@LPIC
+@@LPIC:
+ pop ecx
+{$ifdef darwin}
+ mov [test.l-@@LPIC+ecx],5
+{$else darwin}
+ add ecx, @_GLOBAL_OFFSET_TABLE_
+ mov [ecx].OFFSET test.l,5
+{$endif darwin}
+{$endif FPC_PIC}
end;
{$endif cpui386}
{$ifdef cpu68k}
diff --git a/tests/test/tcg1.pp b/tests/test/tcg1.pp
index 7ea0a5fa18..bd8f702c83 100644
--- a/tests/test/tcg1.pp
+++ b/tests/test/tcg1.pp
@@ -12,10 +12,28 @@ begin
{$ifdef CPUI386}
{$asmmode att}
asm
+{$ifndef FPC_PIC}
movl %esp,before
pushw %es
movl %esp,after
popw %es
+{$else not FPC_PIC}
+ call .LPIC
+.LPIC:
+ popl %ecx
+{$ifdef darwin}
+ movl %esp,before-.LPIC(%ecx)
+ pushw %es
+ movl %esp,after-.LPIC(%ecx)
+ popw %es
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %esp,before@GOT(%ecx)
+ pushw %es
+ movl %esp,after@GOT(%ecx)
+ popw %es
+{$endif darwin}
+{$endif not FPC_PIC}
end;
wpush:=before-after;
if wpush<>2 then
@@ -24,10 +42,28 @@ begin
haserror:=true;
end;
asm
+{$ifndef FPC_PIC}
movl %esp,before
pushl %es
movl %esp,after
popl %es
+{$else not FPC_PIC}
+ call .LPIC
+.LPIC:
+ popl %ecx
+{$ifdef darwin}
+ movl %esp,before-.LPIC(%ecx)
+ pushl %es
+ movl %esp,after-.LPIC(%ecx)
+ popl %es
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %esp,before@GOT(%ecx)
+ pushl %es
+ movl %esp,after@GOT(%ecx)
+ popl %es
+{$endif darwin}
+{$endif not FPC_PIC}
end;
lpush:=before-after;
@@ -38,10 +74,28 @@ begin
end;
asm
+{$ifndef FPC_PIC}
movl %esp,before
pushw %gs
movl %esp,after
popw %gs
+{$else not FPC_PIC}
+ call .LPIC
+.LPIC:
+ popl %ecx
+{$ifdef darwin}
+ movl %esp,before-.LPIC(%ecx)
+ pushw %gs
+ movl %esp,after-.LPIC(%ecx)
+ popw %gs
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %esp,before@GOT(%ecx)
+ pushw %gs
+ movl %esp,after@GOT(%ecx)
+ popw %gs
+{$endif darwin}
+{$endif not FPC_PIC}
end;
wpush:=before-after;
if wpush<>2 then
@@ -50,10 +104,28 @@ begin
haserror:=true;
end;
asm
+{$ifndef FPC_PIC}
movl %esp,before
pushl %gs
movl %esp,after
popl %gs
+{$else not FPC_PIC}
+ call .LPIC
+.LPIC:
+ popl %ecx
+{$ifdef darwin}
+ movl %esp,before-.LPIC(%ecx)
+ pushl %gs
+ movl %esp,after-.LPIC(%ecx)
+ popl %gs
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movl %esp,before@GOT(%ecx)
+ pushl %gs
+ movl %esp,after@GOT(%ecx)
+ popl %gs
+{$endif darwin}
+{$endif not FPC_PIC}
end;
lpush:=before-after;
@@ -64,10 +136,28 @@ begin
end;
{$asmmode intel}
asm
+{$ifndef FPC_PIC}
mov before,esp
push es
mov after,esp
pop es
+{$else not FPC_PIC}
+ call @@LPIC
+@@LPIC:
+ pop ecx
+{$ifdef darwin}
+ mov [before-@@LPIC+ecx],esp
+ push es
+ mov [after-@@LPIC+ecx],esp
+ pop es
+{$else darwin}
+ add ecx,@_GLOBAL_OFFSET_TABLE_
+ mov [ecx].OFFSET before,esp
+ push es
+ mov [ecx].OFFSET after,esp
+ pop es
+{$endif darwin}
+{$endif not FPC_PIC}
end;
Writeln('Intel "push es" uses ',before-after,' bytes');
{$endif CPUI386}
diff --git a/tests/test/testsse2.pp b/tests/test/testsse2.pp
index 40c73577c0..e6ecd81ad9 100644
--- a/tests/test/testsse2.pp
+++ b/tests/test/testsse2.pp
@@ -3,7 +3,7 @@
uses
mmx;
-{ only a small test to see if it works in principal }
+{ only a small test to see if it works in principle }
var
b : byte;
@@ -12,9 +12,27 @@ var
begin
if is_sse2_cpu then
asm
+{$ifdef FPC_PIC}
+ call .LPIC
+.LPIC:
+ popl %ecx
+{$ifdef darwin}
+ movdqa %xmm1,%xmm2
+ movdqa q-.LPIC(%ecx),%xmm4
+ psubq %xmm1,%xmm2
+ psubq q-.LPIC(%ecx),%xmm4
+{$else darwin}
+ addl $_GLOBAL_OFFSET_TABLE_,%ecx
+ movdqa %xmm1,%xmm2
+ movdqa q@GOT(%ecx),%xmm4
+ psubq %xmm1,%xmm2
+ psubq q@GOT(%ecx),%xmm4
+{$endif darwin}
+{$else FPC_PIC}
movdqa %xmm1,%xmm2
movdqa q,%xmm4
psubq %xmm1,%xmm2
psubq q,%xmm4
+{$endif FPC_PIC}
end;
end.
diff --git a/tests/test/tfpu3.pp b/tests/test/tfpu3.pp
index e1fde89854..3c8156b6b1 100644
--- a/tests/test/tfpu3.pp
+++ b/tests/test/tfpu3.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ %NOTE= this test requires that nasm assembler is installed }
{ testfdiv variant with NASM output forced }
{$ifdef go32v2}
diff --git a/tests/test/tfpu4.pp b/tests/test/tfpu4.pp
index 6d33219f3b..38a6e62c3f 100644
--- a/tests/test/tfpu4.pp
+++ b/tests/test/tfpu4.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ testfdiv variant with GNU AS output forced }
{$ifdef win32}
{$ifdef VER1_0}
diff --git a/tests/test/tfpu5.pp b/tests/test/tfpu5.pp
index 7a8af0caab..c63ab33f9f 100644
--- a/tests/test/tfpu5.pp
+++ b/tests/test/tfpu5.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ This test program deals with the
the delicate problem of
non commutative FPU instruction
diff --git a/tests/webtbf/tw3931b.pp b/tests/webtbf/tw3931b.pp
index 3239709e2e..a162988cb8 100644
--- a/tests/webtbf/tw3931b.pp
+++ b/tests/webtbf/tw3931b.pp
@@ -1,5 +1,6 @@
{ %fail }
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
diff --git a/tests/webtbs/tw0735.pp b/tests/webtbs/tw0735.pp
index 6adf70e462..19c68ea0e3 100644
--- a/tests/webtbs/tw0735.pp
+++ b/tests/webtbs/tw0735.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
{$inline on}
diff --git a/tests/webtbs/tw0761.pp b/tests/webtbs/tw0761.pp
index cee1eb6920..23b225b830 100644
--- a/tests/webtbs/tw0761.pp
+++ b/tests/webtbs/tw0761.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
Type TFather = Object A : Integer; end;
TSon = Object (TFather) B : Integer; end;
diff --git a/tests/webtbs/tw0892.pp b/tests/webtbs/tw0892.pp
index 49b2877ed5..472610011d 100644
--- a/tests/webtbs/tw0892.pp
+++ b/tests/webtbs/tw0892.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
diff --git a/tests/webtbs/tw0919.pp b/tests/webtbs/tw0919.pp
index e5b3b2442d..9c515b0b43 100644
--- a/tests/webtbs/tw0919.pp
+++ b/tests/webtbs/tw0919.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
var i:integer;
{$asmmode intel}
diff --git a/tests/webtbs/tw0944.pp b/tests/webtbs/tw0944.pp
index 3253abe9b4..b5504e98d3 100644
--- a/tests/webtbs/tw0944.pp
+++ b/tests/webtbs/tw0944.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$ifdef TP}
{$N+}
{$endif TP}
diff --git a/tests/webtbs/tw1023.pp b/tests/webtbs/tw1023.pp
index 341a4ad49f..0a2ffbae84 100644
--- a/tests/webtbs/tw1023.pp
+++ b/tests/webtbs/tw1023.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 1023 }
{ Submitted by "Denis Yarkovoy" on 2000-07-03 }
{ e-mail: gunky9@geocities.com }
diff --git a/tests/webtbs/tw1066a.pp b/tests/webtbs/tw1066a.pp
index fcdda599a7..dbbe2b31a4 100644
--- a/tests/webtbs/tw1066a.pp
+++ b/tests/webtbs/tw1066a.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 1066 }
{ Submitted by "Fernando Oscar Schmitt" on 2000-07-24 }
{ e-mail: pulp@cpovo.net }
diff --git a/tests/webtbs/tw1066b.pp b/tests/webtbs/tw1066b.pp
index 327ba3c5bf..32aa65b54b 100644
--- a/tests/webtbs/tw1066b.pp
+++ b/tests/webtbs/tw1066b.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{----------------cut here----------------}
{$asmmode intel}
diff --git a/tests/webtbs/tw1090.pp b/tests/webtbs/tw1090.pp
index a988055c09..d49ac092f5 100644
--- a/tests/webtbs/tw1090.pp
+++ b/tests/webtbs/tw1090.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
const
Number = $7FFFFFF;
diff --git a/tests/webtbs/tw1117.pp b/tests/webtbs/tw1117.pp
index 0a4fbf9d08..76c87aba9e 100644
--- a/tests/webtbs/tw1117.pp
+++ b/tests/webtbs/tw1117.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
var
l1,l2 : longint;
diff --git a/tests/webtbs/tw1902.pp b/tests/webtbs/tw1902.pp
index 50165c2071..1f34befb0d 100644
--- a/tests/webtbs/tw1902.pp
+++ b/tests/webtbs/tw1902.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$ifdef fpc}
{$MODE DELPHI}
diff --git a/tests/webtbs/tw1950.pp b/tests/webtbs/tw1950.pp
index a3b3f17aa8..9e448ca9be 100644
--- a/tests/webtbs/tw1950.pp
+++ b/tests/webtbs/tw1950.pp
@@ -11,6 +11,7 @@ procedure Test(const T: TTest);
begin
if @T = nil then exit;
// do something
+// halt(1);
end;
begin
diff --git a/tests/webtbs/tw2323.pp b/tests/webtbs/tw2323.pp
index 6f97d16843..d063c55e32 100644
--- a/tests/webtbs/tw2323.pp
+++ b/tests/webtbs/tw2323.pp
@@ -1,4 +1,5 @@
{ %CPU=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 2323 }
{ Submitted by "marco" on 2003-01-16 }
{ e-mail: marco@freepascal.org }
diff --git a/tests/webtbs/tw2668.pp b/tests/webtbs/tw2668.pp
index db41e1c257..8c56aae185 100644
--- a/tests/webtbs/tw2668.pp
+++ b/tests/webtbs/tw2668.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{ %version=1.1 }
{ Source provided for Free Pascal Bug Report 2668 }
{ Submitted by "Marco" on 2003-09-06 }
diff --git a/tests/webtbs/tw2806.pp b/tests/webtbs/tw2806.pp
index c142bbf761..1d7231664b 100644
--- a/tests/webtbs/tw2806.pp
+++ b/tests/webtbs/tw2806.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$ifdef fpc}{$asmmode intel}{$endif}
diff --git a/tests/webtbs/tw2998.pp b/tests/webtbs/tw2998.pp
index 5f6fdc16c5..30b0defaa5 100644
--- a/tests/webtbs/tw2998.pp
+++ b/tests/webtbs/tw2998.pp
@@ -1,5 +1,5 @@
{ %cpu=i386 }
-{ %OPT=-OaVARMIN=8 }
+{ %OPT=-OaVARMIN=8 -Cg- }
{ Source provided for Free Pascal Bug Report 2998 }
{ Submitted by "bartek" on 2004-03-02 }
diff --git a/tests/webtbs/tw3093.pp b/tests/webtbs/tw3093.pp
index 63d8772731..15e3fba5ca 100644
--- a/tests/webtbs/tw3093.pp
+++ b/tests/webtbs/tw3093.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 3093 }
{ Submitted by "Dail Singleton" on 2004-05-08 }
diff --git a/tests/webtbs/tw3274.pp b/tests/webtbs/tw3274.pp
index b7bbfc5afe..5b3e07d697 100644
--- a/tests/webtbs/tw3274.pp
+++ b/tests/webtbs/tw3274.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %opt=-Cg- }
{ Source provided for Free Pascal Bug Report 3274 }
{ Submitted by "Frank Kintrup" on 2004-08-27 }
diff --git a/tests/webtbs/tw3577.pp b/tests/webtbs/tw3577.pp
index 6675cdbee3..0772b63b08 100644
--- a/tests/webtbs/tw3577.pp
+++ b/tests/webtbs/tw3577.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %opt=-Cg- }
{ Source provided for Free Pascal Bug Report 3577 }
{ Submitted by "Simon Kissel" on 2005-01-19 }
diff --git a/tests/webtbs/tw3863.pp b/tests/webtbs/tw3863.pp
index b05669b605..4a97d93002 100644
--- a/tests/webtbs/tw3863.pp
+++ b/tests/webtbs/tw3863.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %opt=-Cg- }
{ Source provided for Free Pascal Bug Report 3863 }
{ Submitted by "Jernej" on 2005-04-01 }
diff --git a/tests/webtbs/tw3931a.pp b/tests/webtbs/tw3931a.pp
index aed2f0ebab..8dfb4ec91a 100644
--- a/tests/webtbs/tw3931a.pp
+++ b/tests/webtbs/tw3931a.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$asmmode intel}
diff --git a/tests/webtbs/tw4240.pp b/tests/webtbs/tw4240.pp
index e5c0d3df95..2383f97d2e 100644
--- a/tests/webtbs/tw4240.pp
+++ b/tests/webtbs/tw4240.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 4240 }
{ Submitted by "Den Jean" on 2005-07-30 }
{ e-mail: Den.Jean@telenet.be }
diff --git a/tests/webtbs/tw4388.pp b/tests/webtbs/tw4388.pp
index d73addea63..65d9ae08ba 100644
--- a/tests/webtbs/tw4388.pp
+++ b/tests/webtbs/tw4388.pp
@@ -1,4 +1,4 @@
-{ %opt=-O2r }
+{ %opt=-O2r -Cg- }
{ %cpu=i386 }
{$mode delphi}
diff --git a/tests/webtbs/tw4450.pp b/tests/webtbs/tw4450.pp
index 85e34fbfcf..e46c0e58bf 100644
--- a/tests/webtbs/tw4450.pp
+++ b/tests/webtbs/tw4450.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$ifdef fpc}{$asmmode intel}{$endif}
diff --git a/tests/webtbs/tw5015.pp b/tests/webtbs/tw5015.pp
index bfdc087f99..feac5c7de5 100644
--- a/tests/webtbs/tw5015.pp
+++ b/tests/webtbs/tw5015.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{ Source provided for Free Pascal Bug Report 5015 }
{ Submitted by "Zeljan Rikalo" on 2006-04-15 }
diff --git a/tests/webtbs/tw8195a.pp b/tests/webtbs/tw8195a.pp
index fd2213d349..7f37ffbf14 100644
--- a/tests/webtbs/tw8195a.pp
+++ b/tests/webtbs/tw8195a.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$APPTYPE CONSOLE}
diff --git a/tests/webtbs/tw8195b.pp b/tests/webtbs/tw8195b.pp
index 153fa0e886..4df46b7e2e 100644
--- a/tests/webtbs/tw8195b.pp
+++ b/tests/webtbs/tw8195b.pp
@@ -1,4 +1,5 @@
{ %cpu=i386 }
+{ %OPT=-Cg- }
{$APPTYPE CONSOLE}