diff options
-rw-r--r-- | gcc/config/rs6000/rs6000.h | 11 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/powerpc/not-promote-mode.c | 13 |
2 files changed, 13 insertions, 11 deletions
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index 164d359..a5f7b1d 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -667,17 +667,6 @@ extern unsigned char rs6000_recip_bits[]; /* Target machine storage layout. */ -/* Define this macro if it is advisable to hold scalars in registers - in a wider mode than that declared by the program. In such cases, - the value is constrained to be within the bounds of the declared - type, but kept valid in the wider mode. The signedness of the - extension may differ from that of the type. */ - -#define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \ - if (GET_MODE_CLASS (MODE) == MODE_INT \ - && GET_MODE_SIZE (MODE) < (TARGET_32BIT ? 4 : 8)) \ - (MODE) = TARGET_32BIT ? SImode : DImode; - /* Define this if most significant bit is lowest numbered in instructions that operate on numbered bit-fields. */ /* That is true on RS/6000. */ diff --git a/gcc/testsuite/gcc.target/powerpc/not-promote-mode.c b/gcc/testsuite/gcc.target/powerpc/not-promote-mode.c new file mode 100644 index 0000000..29af1f8 --- /dev/null +++ b/gcc/testsuite/gcc.target/powerpc/not-promote-mode.c @@ -0,0 +1,13 @@ +/* { dg-do compile { target { lp64 } } } */ +/* { dg-options "-O2" } */ + +extern void bar (); + +void foo () +{ + int i; + for (i = 0; i < 10000; i++) + bar (); +} + +/* { dg-final { scan-assembler-not {\mrldicl\M} } } */ |