This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 08/08/2016 01:00 PM, Jakub Jelinek wrote:
I don't particularly like intertwining the control-flow-graph bits with the call-graph bits, it seems wrong from a modularity standpoint.Hi! In cross to mingw we ICE on the following testcase, because fixup_cfg pass adds __builtin_unreachable call without adding corresponding cgraph_edge (the body of the parallel region doesn't return, so while GOMP_parallel isn't a noreturn function, it will actually never return). Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? Or is there a better check on when we care about the cgraph edges being maintained? 2016-08-08 Jakub Jelinek <jakub@redhat.com> PR target/71910 * tree-cfg.c (execute_fixup_cfg): Add node variable, use it. Before inlining, add cgraph edge for the added __builtin_unreachable call. * g++.dg/gomp/pr71910.C: New test.
But we need to examine the CFG to know when the call graph needs fixing. So, I guess this is OK. If we find more call graph stuff bleeding in here we'll probably want to look at some kind of refactoring.
jeff
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |