aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-05-03 18:41:29 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2001-05-03 18:41:29 +0000
commit776716da7fb7df8c962c11bcde545658d69a6408 (patch)
tree3cd7a56ed35c954418b2871fb2df839269c558d8
parentecd554cd35980ee431644a7036c7cc4fa2c45077 (diff)
downloadgcc-776716da7fb7df8c962c11bcde545658d69a6408.zip
gcc-776716da7fb7df8c962c11bcde545658d69a6408.tar.gz
gcc-776716da7fb7df8c962c11bcde545658d69a6408.tar.bz2
* config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
From-SVN: r41797
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/mn10300/mn10300.md14
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 <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
+
2001-05-03 Mark Mitchell <mark@codesourcery.com>
* 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 ();