From 07014ed97b1dad082284d9badecb7653b797eced Mon Sep 17 00:00:00 2001 From: kenner Date: Thu, 25 May 1995 11:11:49 +0000 Subject: [PATCH] (alpha_emit_set_const): Don't call expand_binop for other than add if SImode and can't create pseudos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9815 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/config/alpha/alpha.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 8611856..c0c6f07 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -728,9 +728,12 @@ alpha_emit_set_const (target, mode, c, n) } /* If we couldn't do it that way, try some other methods. But if we have - no instructions left, don't bother. */ + no instructions left, don't bother. Likewise, if this is SImode and + we can't make pseudos, we can't do anything since the expand_binop + and expand_unop calls will widen and try to make pseudos. */ - if (n == 1) + if (n == 1 + || (mode == SImode && ! rtx_equal_function_value_matters)) return 0; #if HOST_BITS_PER_WIDE_INT == 64 -- 2.7.4