From: Richard Henderson Date: Fri, 3 Dec 2004 03:27:34 +0000 (-0800) Subject: re PR target/18774 (mmix-knuth-mmixware testsuite failure: gcc.c-torture/execute... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6e4b5aaf4d243e54a95bcd6fe88f1c28fe03ac26;p=gcc.git 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ad04198dd99..471219c77f8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2004-12-02 Richard Henderson + + * simplify-rtx.c (simplify_immed_subreg): Fail complex modes. + 2004-12-03 Ben Elliston * doc/cfg.texi (Edges): Update. Document the edge_iterator data diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c index 75bf42afbd4..580782d600f 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)