aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1999-03-12 00:02:32 +0000
committerJeff Law <law@gcc.gnu.org>1999-03-11 17:02:32 -0700
commit6bcd94ae8068c63349c0bf1e97e2dfd5bd71328b (patch)
treeb56e732b1d9c6217591f238cbde9a872a72c2627 /gcc/expr.c
parentb6505b424925cbe61d9a6d28bf20d276f256a52b (diff)
downloadgcc-6bcd94ae8068c63349c0bf1e97e2dfd5bd71328b.zip
gcc-6bcd94ae8068c63349c0bf1e97e2dfd5bd71328b.tar.gz
gcc-6bcd94ae8068c63349c0bf1e97e2dfd5bd71328b.tar.bz2
expr.c (expand_expr): Allow a CALL_EXPR with a mode wider than MAX_INTEGER_COMPUTATION_MODE.
* expr.c (expand_expr): Allow a CALL_EXPR with a mode wider than MAX_INTEGER_COMPUTATION_MODE. From-SVN: r25714
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 660bba6..c3034c4 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -5552,6 +5552,7 @@ expand_expr (exp, target, tmode, modifier)
&& TREE_CODE (exp) != COMPONENT_REF
&& TREE_CODE (exp) != BIT_FIELD_REF
&& TREE_CODE (exp) != INDIRECT_REF
+ && TREE_CODE (exp) != CALL_EXPR
&& TREE_CODE (exp) != VAR_DECL)
{
enum machine_mode mode = GET_MODE (target);
@@ -5568,6 +5569,7 @@ expand_expr (exp, target, tmode, modifier)
&& TREE_CODE (exp) != BIT_FIELD_REF
&& TREE_CODE (exp) != INDIRECT_REF
&& TREE_CODE (exp) != VAR_DECL
+ && TREE_CODE (exp) != CALL_EXPR
&& GET_MODE_CLASS (tmode) == MODE_INT
&& tmode > MAX_INTEGER_COMPUTATION_MODE)
fatal ("unsupported wide integer operation");