+2008-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR middle-end/36238
+ * reload1.c (gen_reload): Guard calls to get_secondary_mem
+ for memory subregs.
+
2008-08-09 Jan Hubicka <jh@suse.cz>
PR target/37055
#ifdef SECONDARY_MEMORY_NEEDED
/* If we need a memory location to do the move, do it that way. */
- else if ((REG_P (in) || GET_CODE (in) == SUBREG)
+ else if ((REG_P (in)
+ || (GET_CODE (in) == SUBREG && REG_P (SUBREG_REG (in))))
&& reg_or_subregno (in) < FIRST_PSEUDO_REGISTER
- && (REG_P (out) || GET_CODE (out) == SUBREG)
+ && (REG_P (out)
+ || (GET_CODE (out) == SUBREG && REG_P (SUBREG_REG (out))))
&& reg_or_subregno (out) < FIRST_PSEUDO_REGISTER
&& SECONDARY_MEMORY_NEEDED (REGNO_REG_CLASS (reg_or_subregno (in)),
REGNO_REG_CLASS (reg_or_subregno (out)),
+2008-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR middle-end/36238
+ * gcc.c-torture/compile/pr36238.c: New testcase.
+
2008-08-09 Richard Sandiford <rdsandiford@googlemail.com>
* lib/target-supports.exp (check_profiling_available): Return false
--- /dev/null
+typedef signed char int8_t;
+typedef int int32_t;
+typedef unsigned short int uint16_t;
+typedef unsigned int uint32_t;
+int32_t g_19 = 0x67F5AEE0L;
+uint16_t g_169 = 0x89E3L;
+const volatile uint32_t g_258 = 0x63AFEBCAL;
+int32_t func_11;
+int32_t func_29;
+int32_t
+func_5 (int32_t p_6, int32_t p_8, uint16_t p_10)
+{
+ if (lshift_s_s (func_11, p_8))
+ {
+ int8_t l_18 = 0x6FL;
+ if (l_18)
+ for (p_6 = -14;; g_19 += 6)
+ {
+ int32_t l_283 = -1L;
+ if (((0x45L / 1L) > 0x07414511L * 1L / 1L > func_29) / 1L)
+ for (p_8 = 6;; p_8 -= 5)
+ l_283 = 0xC90541F7L;
+ }
+ }
+ else
+ g_169 = g_258;
+}