diff options
author | Richard Henderson <rth@redhat.com> | 2004-12-02 19:27:34 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-12-02 19:27:34 -0800 |
commit | 6e4b5aaf4d243e54a95bcd6fe88f1c28fe03ac26 (patch) | |
tree | c8e985a98ef2b37b448cfd9488fab481f606d9a8 /gcc | |
parent | 9208393247645077a2d64d0542cd43227e7ae500 (diff) | |
download | gcc-6e4b5aaf4d243e54a95bcd6fe88f1c28fe03ac26.zip gcc-6e4b5aaf4d243e54a95bcd6fe88f1c28fe03ac26.tar.gz gcc-6e4b5aaf4d243e54a95bcd6fe88f1c28fe03ac26.tar.bz2 |
re PR target/18774 (mmix-knuth-mmixware testsuite failure: gcc.c-torture/execute/20020227-1.c -Os -O2 compile)
PR 18774
* simplify-rtx.c (simplify_immed_subreg): Fail complex modes.
From-SVN: r91672
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/simplify-rtx.c | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ad04198..471219c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2004-12-02 Richard Henderson <rth@redhat.com> + + * simplify-rtx.c (simplify_immed_subreg): Fail complex modes. + 2004-12-03 Ben Elliston <bje@au.ibm.com> * doc/cfg.texi (Edges): Update. Document the edge_iterator data diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c index 75bf42a..580782d 100644 --- a/gcc/simplify-rtx.c +++ b/gcc/simplify-rtx.c @@ -3326,6 +3326,10 @@ simplify_immed_subreg (enum machine_mode outermode, rtx op, if (GET_MODE_CLASS (outermode) == MODE_CC && GET_CODE (op) == CONST_INT) return op; + /* We have no way to represent a complex constant at the rtl level. */ + if (COMPLEX_MODE_P (outermode)) + return NULL_RTX; + /* Unpack the value. */ if (GET_CODE (op) == CONST_VECTOR) |