aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-01-17 09:05:12 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-01-17 09:05:12 +0100
commitcac1bd08d95de15815986b0b6ef7e82458d6bb25 (patch)
treea45708459146e261d803f0b63bba8af4f4fec1eb /gcc/cfgexpand.c
parent9556b012b73024a95e72d8aa1b434ad50b8df9d3 (diff)
downloadgcc-cac1bd08d95de15815986b0b6ef7e82458d6bb25.zip
gcc-cac1bd08d95de15815986b0b6ef7e82458d6bb25.tar.gz
gcc-cac1bd08d95de15815986b0b6ef7e82458d6bb25.tar.bz2
re PR tree-optimization/86214 (Strongly increased stack usage)
PR tree-optimization/86214 * cfgexpand.c (add_stack_var_conflict): Don't add any conflicts if x == y. From-SVN: r268009
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 2337c63..518d71c 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -470,6 +470,8 @@ add_stack_var_conflict (size_t x, size_t y)
{
struct stack_var *a = &stack_vars[x];
struct stack_var *b = &stack_vars[y];
+ if (x == y)
+ return;
if (!a->conflicts)
a->conflicts = BITMAP_ALLOC (&stack_var_bitmap_obstack);
if (!b->conflicts)