From 0209ca70178273cfc1fe87263cae59f659be388d Mon Sep 17 00:00:00 2001 From: aoliva Date: Thu, 3 May 2001 18:41:29 +0000 Subject: [PATCH] * config/mn10300/mn10300.md: Sign-extend GEN_INT operands. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41797 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 4 ++++ gcc/config/mn10300/mn10300.md | 14 ++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4aaf478..ce974e3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-05-03 Alexandre Oliva + + * config/mn10300/mn10300.md: Sign-extend GEN_INT operands. + 2001-05-03 Mark Mitchell * integrate.h (struct inline_remap): Add leaf_reg_map table. diff --git a/gcc/config/mn10300/mn10300.md b/gcc/config/mn10300/mn10300.md index 7050f7a..3123955 100644 --- a/gcc/config/mn10300/mn10300.md +++ b/gcc/config/mn10300/mn10300.md @@ -1289,7 +1289,7 @@ } xoperands[0] = operands[0]; - xoperands[1] = GEN_INT (mask); + xoperands[1] = GEN_INT (trunc_int_for_mode (mask, SImode)); output_asm_insn (\"btst %1,%0\", xoperands); return \"\"; }" @@ -1331,7 +1331,7 @@ } xoperands[0] = operands[0]; - xoperands[1] = GEN_INT (mask); + xoperands[1] = GEN_INT (trunc_int_for_mode (mask, SImode)); if (GET_CODE (operands[0]) == REG) output_asm_insn (\"btst %1,%0\", xoperands); else @@ -1882,7 +1882,7 @@ target = operand_subword (operands[0], 1, 1, DFmode); result = expand_binop (SImode, and_optab, operand_subword_force (operands[1], 1, DFmode), - GEN_INT(0x7fffffff), target, 0, OPTAB_WIDEN); + GEN_INT (0x7fffffff), target, 0, OPTAB_WIDEN); if (result == 0) abort (); @@ -1912,7 +1912,7 @@ target = operand_subword_force (operands[0], 0, SFmode); result = expand_binop (SImode, and_optab, operand_subword_force (operands[1], 0, SFmode), - GEN_INT(0x7fffffff), target, 0, OPTAB_WIDEN); + GEN_INT (0x7fffffff), target, 0, OPTAB_WIDEN); if (result == 0) abort (); @@ -1937,7 +1937,8 @@ target = operand_subword (operands[0], 1, 1, DFmode); result = expand_binop (SImode, xor_optab, operand_subword_force (operands[1], 1, DFmode), - GEN_INT(0x80000000), target, 0, OPTAB_WIDEN); + GEN_INT (trunc_int_for_mode (0x80000000, SImode)), + target, 0, OPTAB_WIDEN); if (result == 0) abort (); @@ -1967,7 +1968,8 @@ target = operand_subword_force (operands[0], 0, SFmode); result = expand_binop (SImode, xor_optab, operand_subword_force (operands[1], 0, SFmode), - GEN_INT(0x80000000), target, 0, OPTAB_WIDEN); + GEN_INT (trunc_int_for_mode (0x80000000, SImode)), + target, 0, OPTAB_WIDEN); if (result == 0) abort (); -- 2.7.4