Fix PR 40482
2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40482
* config/arm/arm.c (thumb_shiftable_const): Truncate val to
32 bits.
* config/arm/arm.md: Likewise.
2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40482
* gcc.target/arm/pr40482.c: New test.
From-SVN: r148728
+2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ PR target/40482
+ * config/arm/arm.c (thumb_shiftable_const): Truncate val to
+ 32 bits.
+ * config/arm/arm.md: Likewise.
+
2009-06-19 Ian Lance Taylor <ian@airs.com>
* tree-cfg.c (gimple_redirect_edge_and_branch): Change ERROR_MARK
unsigned HOST_WIDE_INT mask = 0xff;
int i;
+ val = val & (unsigned HOST_WIDE_INT)0xffffffffu;
if (val == 0) /* XXX */
return 0;
(set (match_dup 0) (ashift:SI (match_dup 0) (match_dup 2)))]
"
{
- unsigned HOST_WIDE_INT val = INTVAL (operands[1]);
+ unsigned HOST_WIDE_INT val = INTVAL (operands[1]) & 0xffffffffu;
unsigned HOST_WIDE_INT mask = 0xff;
int i;
+2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ PR target/40482
+ * gcc.target/arm/pr40482.c: New test.
+
2009-06-19 Ian Lance Taylor <iant@google.com>
* gcc.dg/Wcxx-compat-18.c: New testcase.
--- /dev/null
+/* { dg-options "-mthumb -Os" } */
+/* { dg-final { scan-assembler-not "ldr" } } */
+
+unsigned int foo (unsigned int i )
+{
+ return i | 0xff000000;
+}