https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105165
Bug ID: 105165 Summary: [11/12 Regression] ICE in gimple_redirect_edge_and_branch, at tree-cfg.cc:6136 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Started between 20201108 and 20201115, at -O1+ : (derived from pr100329.c) $ cat z1.c unsigned int _Complex a0; unsigned int _Complex foo (unsigned int _Complex a1, unsigned int _Complex a2) { unsigned int _Complex x; asm goto ("" : "=r" (x) : : : lab); a0 = x; lab: return x + a1 + a2 + 1; } $ gcc-12-20220403 -c z1.c -O2 during GIMPLE pass: pre z1.c: In function 'foo': z1.c:3:1: internal compiler error: in gimple_redirect_edge_and_branch, at tree-cfg.cc:6136 3 | foo (unsigned int _Complex a1, unsigned int _Complex a2) | ^~~ 0xc611c5 gimple_redirect_edge_and_branch ../../gcc/tree-cfg.cc:6136 0x7d3139 redirect_edge_and_branch(edge_def*, basic_block_def*) ../../gcc/cfghooks.cc:388 0xc593b8 gimple_split_edge ../../gcc/tree-cfg.cc:2983 0x7d37c5 split_edge(edge_def*) ../../gcc/cfghooks.cc:668 0xc61f67 split_critical_edges(bool) ../../gcc/tree-cfg.cc:9172 0xda6ab1 split_edges_for_insertion() ../../gcc/tree-cfg.h:130 0xda6ab1 execute ../../gcc/tree-ssa-pre.cc:4402