aboutsummaryrefslogtreecommitdiff
path: root/gcc/simplify-rtx.c
diff options
context:
space:
mode:
authorBernd Schmidt <bernd.schmidt@analog.com>2006-04-24 19:35:38 +0000
committerBernd Schmidt <bernds@gcc.gnu.org>2006-04-24 19:35:38 +0000
commite551ad2608228e879d774e51b935089e1bd2dae4 (patch)
tree18e2a0a01b54455ec7b83b50a6b6607d07c7c934 /gcc/simplify-rtx.c
parentbfa1122312a8db70406aaf8a97e55352258f336e (diff)
downloadgcc-e551ad2608228e879d774e51b935089e1bd2dae4.zip
gcc-e551ad2608228e879d774e51b935089e1bd2dae4.tar.gz
gcc-e551ad2608228e879d774e51b935089e1bd2dae4.tar.bz2
rtl.def (SS_ASHIFT, SS_NEG): New codes.
* rtl.def (SS_ASHIFT, SS_NEG): New codes. * doc/rtl.texi: Document them. * simplify-rtx.c (simplify_unary_operation, simplify_binary_operation_1): Don't abort when we see them. From-SVN: r113227
Diffstat (limited to 'gcc/simplify-rtx.c')
-rw-r--r--gcc/simplify-rtx.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 0ce033d..962c2de 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -1092,6 +1092,7 @@ simplify_const_unary_operation (enum rtx_code code, enum machine_mode mode,
case FLOAT_TRUNCATE:
case SS_TRUNCATE:
case US_TRUNCATE:
+ case SS_NEG:
return 0;
default:
@@ -2422,6 +2423,7 @@ simplify_binary_operation_1 (enum rtx_code code, enum machine_mode mode,
/* Fall through.... */
case ASHIFT:
+ case SS_ASHIFT:
case LSHIFTRT:
if (trueop1 == CONST0_RTX (mode))
return op0;
@@ -3110,6 +3112,7 @@ simplify_const_binary_operation (enum rtx_code code, enum machine_mode mode,
case US_PLUS:
case SS_MINUS:
case US_MINUS:
+ case SS_ASHIFT:
/* ??? There are simplifications that can be done. */
return 0;