diff options
author | Joseph Myers <joseph@codesourcery.com> | 2004-10-14 20:49:34 +0100 |
---|---|---|
committer | Joseph Myers <jsm28@gcc.gnu.org> | 2004-10-14 20:49:34 +0100 |
commit | b419bac76437541dd7887158f0d231dfc2aa4f90 (patch) | |
tree | 83879e3b08938947ffe10b507adda4454e793824 /gcc | |
parent | d58005c7d647a2c0ae5f842c34792f2582879e10 (diff) | |
download | gcc-b419bac76437541dd7887158f0d231dfc2aa4f90.zip gcc-b419bac76437541dd7887158f0d231dfc2aa4f90.tar.gz gcc-b419bac76437541dd7887158f0d231dfc2aa4f90.tar.bz2 |
eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS), [...]): Disallow -m64.
* config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS),
config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow
-m64.
testsuite:
* gcc.dg/ppc-spe64-1.c: New test.
From-SVN: r89048
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/eabispe.h | 4 | ||||
-rw-r--r-- | gcc/config/rs6000/linuxspe.h | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/ppc-spe64-1.c | 6 |
5 files changed, 22 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a685ef6..0a10096 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-10-14 Joseph S. Myers <joseph@codesourcery.com> + + * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS), + config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow + -m64. + 2004-10-14 Ulrich Weigand <uweigand@de.ibm.com> * reload.c (find_reloads): When reloading a PLUS with constant diff --git a/gcc/config/rs6000/eabispe.h b/gcc/config/rs6000/eabispe.h index 1551dc1..3abad99 100644 --- a/gcc/config/rs6000/eabispe.h +++ b/gcc/config/rs6000/eabispe.h @@ -40,7 +40,9 @@ if (rs6000_spe_string == NULL) \ rs6000_spe = 1; \ if (rs6000_isel_string == NULL) \ - rs6000_isel = 1 + rs6000_isel = 1; \ + if (target_flags & MASK_64BIT) \ + error ("-m64 not supported in this configuration") /* The e500 ABI says that either long doubles are 128 bits, or if implemented in any other size, the compiler/linker should error out. diff --git a/gcc/config/rs6000/linuxspe.h b/gcc/config/rs6000/linuxspe.h index 59eb831..91ad950 100644 --- a/gcc/config/rs6000/linuxspe.h +++ b/gcc/config/rs6000/linuxspe.h @@ -53,7 +53,9 @@ if (rs6000_spe_string == NULL) \ rs6000_spe = 1; \ if (rs6000_isel_string == NULL) \ - rs6000_isel = 1 + rs6000_isel = 1; \ + if (target_flags & MASK_64BIT) \ + error ("-m64 not supported in this configuration") /* The e500 ABI says that either long doubles are 128 bits, or if implemented in any other size, the compiler/linker should error out. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 0932934..e454497 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2004-10-14 Joseph S. Myers <joseph@codesourcery.com> + + * gcc.dg/ppc-spe64-1.c: New test. + 2004-10-14 Devang Patel <dpatel@apple.com> PR 17635 diff --git a/gcc/testsuite/gcc.dg/ppc-spe64-1.c b/gcc/testsuite/gcc.dg/ppc-spe64-1.c new file mode 100644 index 0000000..8055668 --- /dev/null +++ b/gcc/testsuite/gcc.dg/ppc-spe64-1.c @@ -0,0 +1,6 @@ +/* Test that SPE targets do not permit -m64. */ +/* Origin: Joseph Myers <joseph@codesourcery.com> */ +/* { dg-do compile { target powerpc-*-*spe } } */ +/* { dg-options "-m64" } */ + +/* { dg-error "-m64 not supported in this configuration" "SPE not 64-bit" { target *-*-* } 0 } */ |