re PR ipa/82801 (Internal compiler error with Eigen and __attribute__((always_inline...
authorJakub Jelinek <jakub@redhat.com>
Tue, 19 Dec 2017 07:41:30 +0000 (08:41 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 19 Dec 2017 07:41:30 +0000 (08:41 +0100)
commitd6ea70a0dcf7ca69321c6fa7c583bc9a2ca3dfd0
treecc54cbe3f5dfa6131a8bf99d50066771936a7fa4
parent497742efce59a3296461199c16bbc520154d0e2e
re PR ipa/82801 (Internal compiler error with Eigen and __attribute__((always_inline, flatten)))

PR ipa/82801
PR ipa/83346
* ipa-inline.c (flatten_remove_node_hook): New function.
(ipa_inline): Keep only nodes with flatten attribute at the end of
the array in the order from ipa_reverse_postorder, only walk that
portion of array for flattening, if there is more than one such
node, temporarily register a removal hook and ignore removed nodes.

* g++.dg/ipa/pr82801.C: New test.

From-SVN: r255805
gcc/ChangeLog
gcc/ipa-inline.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ipa/pr82801.C [new file with mode: 0644]