Message ID | 20240206122820.223856-1-aldyh@redhat.com |
---|---|
State | New |
Headers | show |
Series | ranger: Grow BBs in relation oracle as needed [PR113735] | expand |
On Tue, Feb 06, 2024 at 01:28:06PM +0100, Aldy Hernandez wrote: > The relation oracle grows the internal vector of SSAs as needed, but > due to an oversight was not growing the basic block vector. This > fixes the oversight. > > OK for trunk? > > PR tree-optimization/113735 > > gcc/testsuite/ChangeLog: > > * gcc.dg/tree-ssa/pr113735.c: New test. > > gcc/ChangeLog: > > * value-relation.cc (equiv_oracle::add_equiv_to_block): Call > limit_check(). LGTM. Jakub
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr113735.c b/gcc/testsuite/gcc.dg/tree-ssa/pr113735.c new file mode 100644 index 00000000000..7b864999277 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr113735.c @@ -0,0 +1,19 @@ +// { dg-do compile { target bitint } } +// { dg-options "-O1" } + +char b; +void bar (void); + +#if __BITINT_MAXWIDTH__ >= 6110 +void +foo (_BitInt(6110) j) +{ + for (;;) + { + _BitInt(10) k = b % j; + for (j = 6; j; --j) + if (k) + bar (); + } +} +#endif diff --git a/gcc/value-relation.cc b/gcc/value-relation.cc index 27f9ad61c0e..619ee5f0867 100644 --- a/gcc/value-relation.cc +++ b/gcc/value-relation.cc @@ -718,6 +718,7 @@ equiv_oracle::add_equiv_to_block (basic_block bb, bitmap equiv_set) // Check if this is the first time a block has an equivalence added. // and create a header block. And set the summary for this block. + limit_check (bb); if (!m_equiv[bb->index]) { ptr = (equiv_chain *) obstack_alloc (&m_chain_obstack,