2011-03-23 Chung-Lin Tang <cltang@codesourcery.com>
PR target/46934
* config/arm/arm.md (casesi): Use the gen_int_mode() function
to subtract lower bound instead of GEN_INT().
testsuite/
* gcc.target/arm/pr46934.c: New.
From-SVN: r171379
+2011-03-23 Chung-Lin Tang <cltang@codesourcery.com>
+
+ PR target/46934
+ * config/arm/arm.md (casesi): Use the gen_int_mode() function
+ to subtract lower bound instead of GEN_INT().
+
2011-03-23 Jonathan Wakely <jwakely.gcc@gmail.com>
PR other/48179
rtx reg = gen_reg_rtx (SImode);
emit_insn (gen_addsi3 (reg, operands[0],
- GEN_INT (-INTVAL (operands[1]))));
+ gen_int_mode (-INTVAL (operands[1]),
+ SImode)));
operands[0] = reg;
}
+2011-03-23 Chung-Lin Tang <cltang@codesourcery.com>
+
+ * gcc.target/arm/pr46934.c: New.
+
2011-03-23 Ian Lance Taylor <iant@google.com>
* go.test/go-test.exp (errchk): Ignore lines containing ////.
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-march=armv5te -mthumb -Os" } */
+/* { dg-require-effective-target arm_thumb1_ok } */
+
+int caller (unsigned int reg_type)
+{
+ switch (reg_type)
+ {
+ case 0x80000000:
+ return (int)foo();
+
+ case 0x80000003:
+ return (int) bar();
+
+ case 0x80000001:
+ return (int) baz();
+
+ case 0x80000004:
+ return (int) fooz();
+ }
+}