Browse Source

* adjustments/fixes for AIX/ppc64

git-svn-id: trunk@21053 -
Jonas Maebe 13 years ago
parent
commit
9d1063f94c
4 changed files with 26 additions and 12 deletions
  1. 2 1
      tests/tbs/tb0528.pp
  2. 18 10
      tests/test/opt/tretopt.pp
  3. 1 1
      tests/webtbs/tw17236.pp
  4. 5 0
      tests/webtbs/tw2494.pp

+ 2 - 1
tests/tbs/tb0528.pp

@@ -1,7 +1,8 @@
 {%CPU=x86_64,powerpc64}
-{%skiptarget=darwin}
+{%skiptarget=darwin,aix}
 
 { darwin limits statically declared data structures to 32 bit for efficiency reasons }
+{ the aix assembler cannot deal with the way we declare these arrays in assembler code )
 
 program tb0528;
 

+ 18 - 10
tests/test/opt/tretopt.pp

@@ -269,16 +269,20 @@ begin
 {$endif}
 {$ifdef cpupowerpc64}
     la  r3,t
-{$ifndef darwin}
+{$if defined(darwin)}
+    lis  r4, p3@ha
+    std  r3,p3@l(r4)
+{$elseif defined(aix)}
+    ld   r4,p3(r2)
+    std  r3,0(r4)
+{$else}
     lis  r4, p3@highesta
     ori  r4, r4, p3@highera
     sldi r4, r4, 32
     oris r4, r4, p3@ha
-{$else darwin}
-    lis  r4, p3@ha
-{$endif darwin}
     std  r3,p3@l(r4)
-{$endif}
+{$endif darwin}
+{$endif cpupowerpc64}
 {$ifdef cpui386}
     leal t,%eax
 {$ifndef FPC_PIC}
@@ -320,16 +324,20 @@ begin
 {$endif}
 {$ifdef cpupowerpc64}
     la  r3,t
-{$ifndef darwin}
+{$if defined(darwin)}
+    lis  r4, p3@ha
+    std  r3,p3@l(r4)
+{$elseif defined(aix)}
+    ld   r4,p3(r2)
+    std  r3,0(r4)
+{$else}
     lis  r4, p3@highesta
     ori  r4, r4, p3@highera
     sldi r4, r4, 32
     oris r4, r4, p3@ha
-{$else darwin}
-    lis  r4, p3@ha
-{$endif darwin}
     std  r3,p3@l(r4)
-{$endif}
+{$endif darwin}
+{$endif cpupowerpc64}
 {$ifdef cpui386}
     leal t,%eax
 {$ifndef FPC_PIC}

+ 1 - 1
tests/webtbs/tw17236.pp

@@ -1,4 +1,4 @@
-{ %target=linux,darwin,freebsd,netbsd,openbsd,sunos,beos,haiku,aix }
+{ %target=linux,darwin,freebsd,netbsd,openbsd,sunos,beos,haiku }
 { %cpu=x86_64,powerpc64,mips64,sparc64,ia64,alpha }
 
 { windows does not support statics > 2GB }

+ 5 - 0
tests/webtbs/tw2494.pp

@@ -1,3 +1,8 @@
+{ %skiptarget=aix }
+
+{ this kills one of the make-processes when executed during a testsuite
+  run on AIX/ppc64 }
+
 { Source provided for Free Pascal Bug Report 2494 }
 { Submitted by "Alan Mead" on  2003-05-17 }
 { e-mail: [email protected] }