From 9d1063f94c9562b7c97a1f29e89295b324f1f39b Mon Sep 17 00:00:00 2001 From: Jonas Maebe Date: Wed, 25 Apr 2012 20:28:32 +0000 Subject: [PATCH] * adjustments/fixes for AIX/ppc64 git-svn-id: trunk@21053 - --- tests/tbs/tb0528.pp | 3 ++- tests/test/opt/tretopt.pp | 28 ++++++++++++++++++---------- tests/webtbs/tw17236.pp | 2 +- tests/webtbs/tw2494.pp | 5 +++++ 4 files changed, 26 insertions(+), 12 deletions(-) diff --git a/tests/tbs/tb0528.pp b/tests/tbs/tb0528.pp index ac75f60d51..8a6899c5a0 100644 --- a/tests/tbs/tb0528.pp +++ b/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; diff --git a/tests/test/opt/tretopt.pp b/tests/test/opt/tretopt.pp index ec4cead031..b10ac0933d 100644 --- a/tests/test/opt/tretopt.pp +++ b/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} diff --git a/tests/webtbs/tw17236.pp b/tests/webtbs/tw17236.pp index 02d7c5acc2..a5a466c6d6 100644 --- a/tests/webtbs/tw17236.pp +++ b/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 } diff --git a/tests/webtbs/tw2494.pp b/tests/webtbs/tw2494.pp index 6a3fc7a8f3..b624a23bbb 100644 --- a/tests/webtbs/tw2494.pp +++ b/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: cubrewer@yahoo.com }