aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorYuri Rumyantsev <ysrumyan@gmail.com>2015-01-28 11:46:44 +0000
committerIlya Enkovich <ienkovich@gcc.gnu.org>2015-01-28 11:46:44 +0000
commit090238ee1f3b3726c5dbd746b3ec7098fc51bb37 (patch)
tree3216a60a83250b142f8e546a5edce62cbe6baad4 /gcc/cfgexpand.c
parentfa8e5051889f8bc0610e3400152b73755d12d04e (diff)
downloadgcc-090238ee1f3b3726c5dbd746b3ec7098fc51bb37.zip
gcc-090238ee1f3b3726c5dbd746b3ec7098fc51bb37.tar.gz
gcc-090238ee1f3b3726c5dbd746b3ec7098fc51bb37.tar.bz2
re PR middle-end/64809 (ICE at -O3 with -g enabled on x86_64-linux-gnu (in 32-bit mode))
gcc/ PR middle-end/64809 * cfgexpand.c (reorder_operands): Skip debug gimples. gcc/testsuite/ PR middle-end/64809 * gcc.dg/pr64809.c: New test. From-SVN: r220205
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 4df973b..4d8ba32 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -5010,13 +5010,16 @@ reorder_operands (basic_block bb)
for (gsi = gsi_start (stmts); !gsi_end_p (gsi); gsi_next (&gsi))
{
stmt = gsi_stmt (gsi);
- gimple_set_uid (stmt, n++);
+ if (!is_gimple_debug (stmt))
+ gimple_set_uid (stmt, n++);
}
lattice = XNEWVEC (unsigned int, n);
for (gsi = gsi_start (stmts); !gsi_end_p (gsi); gsi_next (&gsi))
{
unsigned cost;
stmt = gsi_stmt (gsi);
+ if (is_gimple_debug (stmt))
+ continue;
cost = estimate_num_insns (stmt, &eni_size_weights);
lattice[i] = cost;
FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter, SSA_OP_USE)