aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/pa/pa.c
diff options
context:
space:
mode:
authorJohn David Anglin <dave@hiauly1.hia.nrc.ca>2001-08-29 17:57:47 +0000
committerJohn David Anglin <danglin@gcc.gnu.org>2001-08-29 17:57:47 +0000
commit6e9c53b489ad1dcda7e54ea1a668a4c74cebcfaf (patch)
tree50f09a1cc68243106c5b3d3cae9420b829f363e8 /gcc/config/pa/pa.c
parent53251a557518980db1280fb19db3c0e672126ea9 (diff)
downloadgcc-6e9c53b489ad1dcda7e54ea1a668a4c74cebcfaf.zip
gcc-6e9c53b489ad1dcda7e54ea1a668a4c74cebcfaf.tar.gz
gcc-6e9c53b489ad1dcda7e54ea1a668a4c74cebcfaf.tar.bz2
pa.c (move_operand): Cast GET_MODE_SIZE results to HOST_WIDE_INT for comparison with rtx INTVAL.
* pa.c (move_operand): Cast GET_MODE_SIZE results to HOST_WIDE_INT for comparison with rtx INTVAL. (pa_output_function_prologue): Don't mix signed and unsigned in `?' expression. * pa.h (FUNCTION_ARG_SIZE): Likewise. From-SVN: r45271
Diffstat (limited to 'gcc/config/pa/pa.c')
-rw-r--r--gcc/config/pa/pa.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 85183ff..0bc2c8f 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -377,12 +377,14 @@ move_operand (op, mode)
&& ((GET_CODE (XEXP (op, 0)) == MULT
&& GET_CODE (XEXP (XEXP (op, 0), 0)) == REG
&& GET_CODE (XEXP (XEXP (op, 0), 1)) == CONST_INT
- && INTVAL (XEXP (XEXP (op, 0), 1)) == GET_MODE_SIZE (mode)
+ && INTVAL (XEXP (XEXP (op, 0), 1))
+ == (HOST_WIDE_INT) GET_MODE_SIZE (mode)
&& GET_CODE (XEXP (op, 1)) == REG)
|| (GET_CODE (XEXP (op, 1)) == MULT
&&GET_CODE (XEXP (XEXP (op, 1), 0)) == REG
&& GET_CODE (XEXP (XEXP (op, 1), 1)) == CONST_INT
- && INTVAL (XEXP (XEXP (op, 1), 1)) == GET_MODE_SIZE (mode)
+ && INTVAL (XEXP (XEXP (op, 1), 1))
+ == (HOST_WIDE_INT) GET_MODE_SIZE (mode)
&& GET_CODE (XEXP (op, 0)) == REG)))
return 1;
@@ -2938,7 +2940,8 @@ pa_output_function_prologue (file, size)
total_code_bytes += FUNCTION_BOUNDARY / BITS_PER_UNIT;
/* Be prepared to handle overflows. */
- total_code_bytes = old_total > total_code_bytes ? -1 : total_code_bytes;
+ if (old_total > total_code_bytes)
+ total_code_bytes = -1;
}
else
total_code_bytes = -1;