* gcc.dg/980523-1.c, gcc.dg/980526-1.c, gcc.dg/
20020103-1.c,
gcc.dg/
20040625-1.c, gcc.dg/asm-b.c, gcc.dg/iftrap-1.c,
gcc.dg/iftrap-2.c, gcc.dg/simd-3.c, gcc.dg/switch-1.c,
gcc.dg/tree-ssa/bool-1.c, gcc.dg/tree-ssa/bool-2.c,
gcc.dg/tree-ssa/bool-4.c, gcc.dg/tree-ssa/bool-5.c,
gcc.dg/tree-ssa/bool-6.c, gcc.dg/tree-ssa/bool-8.c,
gcc.dg/tree-ssa/bool-9.c, gcc.target/powerpc/980827-1.c,
gcc.target/powerpc/
20040622-1.c, gcc.target/powerpc/
20050603-3.c,
gcc.target/powerpc/
20050830-1.c, gcc.target/powerpc/altivec-6.c,
gcc.target/powerpc/altivec-14.c, gcc.target/powerpc/altivec-22.c,
gcc.target/powerpc/doloop-1.c, gcc.target/powerpc/ppc-and-1.c,
gcc.target/powerpc/ppc-bitfield1.c, gcc.target/powerpc/ppc-compare-1.c,
gcc.target/powerpc/ppc-mov-1.c, gcc.target/powerpc/ppc-sdata-1.c,
gcc.target/powerpc/ppc-sdata-2.c,
gcc.target/powerpc/ppc-stackalign-1.c,
gcc.target/powerpc/ppc64-abi-1.c, gcc.target/powerpc/ppc64-abi-2.c,
gcc.target/powerpc/ppc64-abi-3.c, gcc.target/powerpc/ppc64-toc.c,
gcc.target/powerpc/pr18096-1.c, gcc.target/powerpc/rs6000-ldouble-1.c,
gcc.target/powerpc/rs6000-ldouble-2.c,
gcc.target/powerpc/rs6000-power2-1.c,
gcc.target/powerpc/rs6000-power2-2.c: Don't use powerpc-*-* or
powerpc64-*-* in target selection strings. Instead use powerpc*-*-*
and ilp32 or lp64 as appropriate. Merge dg-require-effective-target
option into target selector.
* gcc.dg/
20020919-1.c: Compile for powerpc*-*-*. Handle powerpc64.
* gcc.misc-tests/linkage.exp: Set native_cflags for powerpc*-*-linux*.
From-SVN: r108457
+2005-12-13 Alan Modra <amodra@bigpond.net.au>
+
+ * gcc.dg/980523-1.c, gcc.dg/980526-1.c, gcc.dg/20020103-1.c,
+ gcc.dg/20040625-1.c, gcc.dg/asm-b.c, gcc.dg/iftrap-1.c,
+ gcc.dg/iftrap-2.c, gcc.dg/simd-3.c, gcc.dg/switch-1.c,
+ gcc.dg/tree-ssa/bool-1.c, gcc.dg/tree-ssa/bool-2.c,
+ gcc.dg/tree-ssa/bool-4.c, gcc.dg/tree-ssa/bool-5.c,
+ gcc.dg/tree-ssa/bool-6.c, gcc.dg/tree-ssa/bool-8.c,
+ gcc.dg/tree-ssa/bool-9.c, gcc.target/powerpc/980827-1.c,
+ gcc.target/powerpc/20040622-1.c, gcc.target/powerpc/20050603-3.c,
+ gcc.target/powerpc/20050830-1.c, gcc.target/powerpc/altivec-6.c,
+ gcc.target/powerpc/altivec-14.c, gcc.target/powerpc/altivec-22.c,
+ gcc.target/powerpc/doloop-1.c, gcc.target/powerpc/ppc-and-1.c,
+ gcc.target/powerpc/ppc-bitfield1.c, gcc.target/powerpc/ppc-compare-1.c,
+ gcc.target/powerpc/ppc-mov-1.c, gcc.target/powerpc/ppc-sdata-1.c,
+ gcc.target/powerpc/ppc-sdata-2.c,
+ gcc.target/powerpc/ppc-stackalign-1.c,
+ gcc.target/powerpc/ppc64-abi-1.c, gcc.target/powerpc/ppc64-abi-2.c,
+ gcc.target/powerpc/ppc64-abi-3.c, gcc.target/powerpc/ppc64-toc.c,
+ gcc.target/powerpc/pr18096-1.c, gcc.target/powerpc/rs6000-ldouble-1.c,
+ gcc.target/powerpc/rs6000-ldouble-2.c,
+ gcc.target/powerpc/rs6000-power2-1.c,
+ gcc.target/powerpc/rs6000-power2-2.c: Don't use powerpc-*-* or
+ powerpc64-*-* in target selection strings. Instead use powerpc*-*-*
+ and ilp32 or lp64 as appropriate. Merge dg-require-effective-target
+ option into target selector.
+ * gcc.dg/20020919-1.c: Compile for powerpc*-*-*. Handle powerpc64.
+ * gcc.misc-tests/linkage.exp: Set native_cflags for powerpc*-*-linux*.
+
2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
PR objc/25348
/* Verify that constant equivalences get reloaded properly, either by being
spilled to the stack, or regenerated, but not dropped to memory. */
-/* { dg-do compile { target i?86-*-* powerpc-*-* rs6000-*-* alpha*-*-* x86_64-*-*} } */
+/* { dg-do compile { target { { i?86-*-* rs6000-*-* alpha*-*-* x86_64-*-* } || { powerpc*-*-* && ilp32 } } } } */
/* { dg-options "-O2 -fpic -fno-omit-frame-pointer -fno-asynchronous-unwind-tables" } */
/* { dg-final { scan-assembler-not "LC\[0-9\]" } } */
You must be this tall ---> fit two long longs in asm-declared registers
to enter this amusement. */
-/* { dg-do compile { target alpha-*-* cris-*-* i?86-*-* mmix-*-* powerpc-*-* rs6000-*-* x86_64-*-* } } */
+/* { dg-do compile { target alpha-*-* cris-*-* i?86-*-* mmix-*-* powerpc*-*-* rs6000-*-* x86_64-*-* } } */
/* { dg-options "-O2" } */
/* Constructed examples; input/output (same register), output, input, and
|| defined (__POWERPC__) || defined (PPC) || defined (_IBMR2)
# define REG1 "6"
# define REG2 "7"
-# define REG3 "8"
-# define REG4 "9"
+# ifndef __powerpc64__
+# define REG3 "8"
+# define REG4 "9"
+# endif
#elif defined (__x86_64__)
# define REG1 "rax"
# define REG2 "rdx"
/* { dg-do run } */
/* { dg-options "-O2" } */
-/* { dg-options "-mminimal-toc" { target powerpc64-*-* powerpc-ibm-aix* } } */
+/* { dg-options "-mminimal-toc" { target { { powerpc*-*-* && lp64 } || { powerpc-ibm-aix* } } } } */
extern void abort (void);
extern void exit (int);
-/* { dg-do run { target rs6000-*-linux* powerpc-*-linux*} } */
+/* { dg-do run { target rs6000-*-linux* powerpc*-*-linux*} } */
/* { dg-options "-O2 -fpic" } */
extern void exit (int);
-/* { dg-do compile { target rs6000-*-linux* powerpc-*-linux* } } */
+/* { dg-do compile { target rs6000-*-linux* powerpc*-*-linux* } } */
/* { dg-options "-O2 -fpic" } */
int
-/* { dg-do run { target powerpc-*-* i?86-*-* x86_64-*-* } } */
+/* { dg-do run { target powerpc*-*-* i?86-*-* x86_64-*-* } } */
/* { dg-options "-O1" } */
/* Test to make sure that inline-asm causes the tree optimizers to get the
V_MAY_DEFs and clobber memory. */
/* Verify that we optimize to conditional traps. */
/* { dg-options "-O" } */
-/* { dg-do compile { target rs6000-*-* powerpc-*-* sparc*-*-* ia64-*-* } } */
+/* { dg-do compile { target rs6000-*-* powerpc*-*-* sparc*-*-* ia64-*-* } } */
/* { dg-final { scan-assembler-not "^\t(trap|ta|break)\[ \t\]" } } */
void f1(int p)
/* Verify that we optimize to conditional traps. */
/* { dg-options "-O" } */
-/* { dg-do compile { target rs6000-*-* powerpc-*-* sparc*-*-* ia64-*-* } } */
+/* { dg-do compile { target rs6000-*-* powerpc*-*-* sparc*-*-* ia64-*-* } } */
/* { dg-final { scan-assembler-not "^\t(trap|ta|break)\[ \t\]" } } */
extern void abort(void);
/* { dg-do compile } */
-/* { dg-options "-maltivec" { target powerpc-*-* } } */
+/* { dg-options "-maltivec" { target powerpc*-*-* } } */
__attribute__ ((vector_size (2))) signed char v1, v2, v3;
void
-/* { dg-do compile { target rs6000-*-linux* powerpc-*-linux*} } */
+/* { dg-do compile { target rs6000-*-linux* powerpc*-*-linux*} } */
/* { dg-options "-fpic -O2" } */
void f (char *s)
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no adde for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "adde" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "adde" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* There should be no subfe for powerpc. Checking if we actually optimizated
away the comparision. */
-/* { dg-final { scan-assembler-times "subfe" 0 { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler-times "subfe" 0 { target powerpc*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
if [ string match "*ELF-64*" $file_string ] {
set native_cflags "+DD64"
}
- } elseif [istarget "powerpc64*-*-linux*"] {
+ } elseif [istarget "powerpc*-*-linux*"] {
set file_string [exec file "linkage-x.o"]
if [ string match "*64-bit*" $file_string ] {
set native_cflags "-m64"
+ } elseif [ string match "*32-bit*" $file_string ] {
+ set native_cflags "-m32"
}
}
/* { dg-options "-Os -mlong-double-128" } */
-/* { dg-do compile { target rs6000-*-* powerpc-*-* } } */
+/* { dg-do compile { target { { rs6000-*-* } || { powerpc*-*-* && lp64 } } } } */
/* Make sure compiler doesn't generate [reg+reg] address mode
for long doubles. */
union arg {
-/* { dg-do compile { target "powerpc-*-*" } } */
+/* { dg-do compile { target { ilp32 } } } */
/* { dg-options "-O2" } */
struct Q
{
/* Make sure the doloop optimization is done for this loop. */
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target powerpc*-*-* } } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler "bdn" } } */
extern int a[];
-/* { dg-do run { target rs6000-*-linux* powerpc-*-linux*} } */
+/* { dg-do run { target { *-*-linux* && ilp32 } } } */
/* { dg-options -O2 } */
extern void exit (int);
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target { powerpc*-*-* && ilp32 } } } */
/* { dg-xfail-if "" { "powerpc-*-eabispe*" "powerpc-ibm-aix*" } { "*" } { "" } } */
/* { dg-options "-maltivec" } */
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target { powerpc*-*-* && ilp32 } } } */
/* { dg-xfail-if "" { "powerpc-*-eabispe*" "powerpc-ibm-aix*" } { "*" } { "" } } */
/* { dg-options "-O3 -maltivec" } */
/* { dg-final { scan-assembler-not "mfcr" } } */
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target powerpc*-*-* } } */
/* { dg-xfail-if "" { "powerpc-ibm-aix*" } { "-maltivec" } { "" } } */
/* { dg-options "-maltivec -O0 -Wall" } */
If so, "bdnz" will be generated on ppc; if not,
you will get "ble" or "blt" or "bge". */
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target powerpc*-*-* } } */
/* { dg-options "-O2" } */
void foo (int count, char* pca, char* pcb) {
int i;
-/* { dg-do compile { target powerpc64-*-* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler "rlwinm \[0-9\]+,\[0-9\]+,0,0,30" } } */
-/* { dg-do compile { target powerpc64-*-* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler-not "rlwinm \[0-9\]+,\[0-9\]+,\[0-9\]+,1,31" } } */
-/* { dg-do compile { target powerpc64-*-* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler-not "cmpw" } } */
-/* { dg-do compile { target powerpc64-*-* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler-not "fmr \[0-9\]+,\[0-9\]+" } }
-/* { dg-do compile { target powerpc-*-linux* powerpc-*-sysv* powerpc-*-eabi* } } */
+/* { dg-do compile { target { { powerpc*-*-linux* && ilp32 } || { powerpc-*-sysv* powerpc-*-eabi* } } } } */
/* { dg-options "-O2 -fno-common -G 8 -meabi -msdata=eabi" } */
/* { dg-final { scan-assembler "\\.section\[ \t\]\\.sdata," } } */
/* { dg-final { scan-assembler "\\.section\[ \t\]\\.sdata2," } } */
-/* { dg-do compile { target powerpc-*-linux* powerpc-*-sysv* powerpc-*-eabi* } } */
+/* { dg-do compile { target { { powerpc*-*-linux* && ilp32 } || { powerpc-*-sysv* powerpc-*-eabi* } } } } */
/* { dg-options "-O2 -fno-common -G 8 -msdata=sysv" } */
/* { dg-final { scan-assembler "\\.section\[ \t\]\\.sdata," } } */
/* { dg-final { scan-assembler-not "\\.section\[ \t\]\\.sdata2," } } */
-/* { dg-do run { target powerpc-*-linux* powerpc-*-sysv* } } */
+/* { dg-do run { target powerpc*-*-linux* powerpc-*-sysv* } } */
/* { dg-options {} } */
/* Test stack pointer alignment against variable alloca. */
-/* { dg-do run { target powerpc64-*-* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do run { target { powerpc*-*-* && lp64 } } } */
/* { dg-options "-O2" } */
#include <stdarg.h>
#include <signal.h>
-/* { dg-do run { target powerpc64-*-linux* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do run { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-options "-O2 -fprofile -mprofile-kernel -maltivec -mabi=altivec" } */
#include <stdarg.h>
#include <signal.h>
-/* { dg-do compile { target powerpc64-*-linux* } } */
-/* { dg-require-effective-target lp64 } */
+/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-options "-Wall" } */
/* Testcase to check for ABI compliance of parameter passing
for the PowerPC64 ABI. */
/* { dg-do link } */
-/* { dg-options "-mminimal-toc" { target { powerpc64-*-* && lp64 } } } */
+/* { dg-options "-mminimal-toc" { target { powerpc*-*-* && lp64 } } } */
char *strchr (const char *, int);
/* PR middle-end/18096 */
-/* { dg-do compile { target powerpc-*-* } } */
+/* { dg-do compile { target { powerpc*-*-* && ilp32 } } } */
/* { dg-options "-O2" } */
void f(char*);
-/* { dg-do run { target powerpc*-*-darwin* powerpc*-*-aix* powerpc64-*-linux rs6000-*-* } } */
+/* { dg-do run { target { { powerpc*-*-darwin* powerpc*-*-aix* rs6000-*-* } || { powerpc*-*-linux && lp64 } } } } */
/* { dg-options "-mlong-double-128" } */
/* Check that long double values are rounded correctly when being converted
-/* { dg-do run { target powerpc*-*-darwin* powerpc*-*-aix* powerpc64-*-linux rs6000-*-* } } */
+/* { dg-do run { target { { powerpc*-*-darwin* powerpc*-*-aix* rs6000-*-* } || { powerpc*-*-linux && lp64 } } } } */
/* { dg-options "-mlong-double-128" } */
/* Check that LDBL_EPSILON is right for 'long double'. */
-/* { dg-do compile { target powerpc-*-* rs6000-*-* } } */
+/* { dg-do compile { target { ilp32 } } } */
/* { dg-options "-O3 -mcpu=power2 -fno-schedule-insns -w -mhard-float" } */
/* This used to ICE as the peephole was not checking to see
if the register is a floating point one (I think this cannot
-/* { dg-do compile { target powerpc-*-* rs6000-*-* } } */
+/* { dg-do compile { target { ilp32 } } } */
/* { dg-options "-O3 -mcpu=power2 -fno-schedule-insns -w -mhard-float" } */
/* { dg-final { scan-assembler-not "lfd" } } */
/* { dg-final { scan-assembler-not "sfd" } } */