diff options
author | Edmar Wienskoski <edmar@freescale.com> | 2008-06-11 20:02:55 +0000 |
---|---|---|
committer | Joseph Myers <jsm28@gcc.gnu.org> | 2008-06-11 21:02:55 +0100 |
commit | 567f0b17912a7d55ec333eb93b74f82e7a4f8761 (patch) | |
tree | da0b9688d10794c9322f4d5ef458b06eb3194cf2 /gcc | |
parent | 4653cae5b8dc090912f262572d0105f27ec2c83b (diff) | |
download | gcc-567f0b17912a7d55ec333eb93b74f82e7a4f8761.zip gcc-567f0b17912a7d55ec333eb93b74f82e7a4f8761.tar.gz gcc-567f0b17912a7d55ec333eb93b74f82e7a4f8761.tar.bz2 |
re PR target/36425 (Option -mno-isel not working)
2008-06-11 Edmar Wienskoski <edmar@freescale.com>
PR target/36425
* config/rs6000/rs6000.c (rs6000_override_options): Set
rs6000_isel conditionally to the absence of comand line
override.
* config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS):
Remove duplicate rs6000_isel setting.
* config/rs6000/eabispe.h: Ditto.
testsuite:
2008-06-11 Edmar Wienskoski <edmar@freescale.com>
* gcc.target/powerpc/e500-1.c: New test case to verify
mno-isel option.
From-SVN: r136681
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/rs6000/eabispe.h | 2 | ||||
-rw-r--r-- | gcc/config/rs6000/linuxspe.h | 2 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/powerpc/e500-1.c | 14 |
6 files changed, 31 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 95a86b0..d66d335 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2008-06-11 Edmar Wienskoski <edmar@freescale.com> + + PR target/36425 + * config/rs6000/rs6000.c (rs6000_override_options): Set + rs6000_isel conditionally to the absence of comand line + override. + * config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): + Remove duplicate rs6000_isel setting. + * config/rs6000/eabispe.h: Ditto. + 2008-06-11 Richard Guenther <rguenther@suse.de> * alias.c (get_alias_set): Use the element alias-set for arrays. diff --git a/gcc/config/rs6000/eabispe.h b/gcc/config/rs6000/eabispe.h index c3a3f2b..ae14651 100644 --- a/gcc/config/rs6000/eabispe.h +++ b/gcc/config/rs6000/eabispe.h @@ -37,8 +37,6 @@ rs6000_float_gprs = 1; \ if (!rs6000_explicit_options.spe) \ rs6000_spe = 1; \ - if (!rs6000_explicit_options.isel) \ - rs6000_isel = 1; \ if (target_flags & MASK_64BIT) \ error ("-m64 not supported in this configuration") diff --git a/gcc/config/rs6000/linuxspe.h b/gcc/config/rs6000/linuxspe.h index c526cf8..bcc403e 100644 --- a/gcc/config/rs6000/linuxspe.h +++ b/gcc/config/rs6000/linuxspe.h @@ -36,8 +36,6 @@ rs6000_float_gprs = 1; \ if (!rs6000_explicit_options.spe) \ rs6000_spe = 1; \ - if (!rs6000_explicit_options.isel) \ - rs6000_isel = 1; \ if (target_flags & MASK_64BIT) \ error ("-m64 not supported in this configuration") diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index dcbccbc..66e4b51 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -1553,7 +1553,7 @@ rs6000_override_options (const char *default_cpu) } } - if (TARGET_E500) + if (TARGET_E500 && !rs6000_explicit_options.isel) rs6000_isel = 1; if (rs6000_cpu == PROCESSOR_PPCE300C2 || rs6000_cpu == PROCESSOR_PPCE300C3) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 08bd74c..dfbe10d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2008-06-11 Edmar Wienskoski <edmar@freescale.com> + + PR target/36425 + * gcc.target/powerpc/e500-1.c: New test case to verify + mno-isel option. + 2008-06-11 Eric Botcazou <ebotcazou@adacore.com> * gnat.dg/specs/varsize_copy.ad[sb]: New test. diff --git a/gcc/testsuite/gcc.target/powerpc/e500-1.c b/gcc/testsuite/gcc.target/powerpc/e500-1.c new file mode 100644 index 0000000..76a0e4a --- /dev/null +++ b/gcc/testsuite/gcc.target/powerpc/e500-1.c @@ -0,0 +1,14 @@ +/* Test functioning of command option -mno-isel */ +/* { dg-do compile { target powerpc*-*-linux* } } */ +/* { dg-options "-O2 -mno-isel" } */ + +/* { dg-final { scan-assembler-not "isel" } } */ + +int +foo (int x, int y) +{ + if (x < y) + return x; + else + return y; +} |