mirror of git://gcc.gnu.org/git/gcc.git
re PR middle-end/51211 (ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic)
PR middle-end/51211
* tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION.
From-SVN: r181512
This commit is contained in:
parent
6f83092f55
commit
2e85d5e290
|
|
@ -1,3 +1,8 @@
|
||||||
|
2011-11-19 Patrick Marlier <patrick.marlier@gmail.com>
|
||||||
|
|
||||||
|
PR middle-end/51211
|
||||||
|
* tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION.
|
||||||
|
|
||||||
2011-11-19 Eric Botcazou <ebotcazou@adacore.com>
|
2011-11-19 Eric Botcazou <ebotcazou@adacore.com>
|
||||||
|
|
||||||
* expmed.c (store_bit_field_1): Revert bogus formatting change.
|
* expmed.c (store_bit_field_1): Revert bogus formatting change.
|
||||||
|
|
|
||||||
|
|
@ -90,10 +90,19 @@ bb_seen_p (basic_block bb)
|
||||||
static bool
|
static bool
|
||||||
ignore_bb_p (const_basic_block bb)
|
ignore_bb_p (const_basic_block bb)
|
||||||
{
|
{
|
||||||
|
gimple g;
|
||||||
|
|
||||||
if (bb->index < NUM_FIXED_BLOCKS)
|
if (bb->index < NUM_FIXED_BLOCKS)
|
||||||
return true;
|
return true;
|
||||||
if (optimize_bb_for_size_p (bb))
|
if (optimize_bb_for_size_p (bb))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
/* A transaction is a single entry multiple exit region. It must be
|
||||||
|
duplicated in its entirety or not at all. */
|
||||||
|
g = last_stmt (CONST_CAST_BB (bb));
|
||||||
|
if (g && gimple_code (g) == GIMPLE_TRANSACTION)
|
||||||
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue