Commit d47c3b4e by Andrew Pinski Committed by Andrew Pinski

re PR middle-end/36238 (ICE in reg_or_subregno, at jump.c:1730)

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  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36238
        * gcc.c-torture/compile/pr36238.c: New testcase.

From-SVN: r138924
parent 34c66daf
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
......
......@@ -8009,9 +8009,11 @@ gen_reload (rtx out, rtx in, int opnum, enum reload_type type)
#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
......
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;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment