https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120533
Bug ID: 120533 Summary: GCN: FAIL: gcc.dg/tree-ssa/phiprop-2.c scan-tree-dump-times phiopt2 "MIN_EXPR " 1 Product: gcc Version: 16.0 Status: UNCONFIRMED Keywords: testsuite-fail Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: tschwinge at gcc dot gnu.org CC: ams at gcc dot gnu.org, pinskia at gcc dot gnu.org Target Milestone: --- Target: GCN The 'gcc.dg/tree-ssa/phiprop-2.c' added in commit r16-1068-g4756557f5e3262f7f733f583bbbd69387fca8017 "phiprop: Add testcase for already fixed case [PR116824]" partially FAILs for '--target=amdgcn-amdhsa': PASS: gcc.dg/tree-ssa/phiprop-2.c (test for excess errors) PASS: gcc.dg/tree-ssa/phiprop-2.c scan-tree-dump-times phiprop1 "Inserting PHI for result of load" 1 FAIL: gcc.dg/tree-ssa/phiprop-2.c scan-tree-dump-times phiopt2 "MIN_EXPR " 1 Instead of something like: ;; Function g (g, funcdef_no=0, decl_uid=4057, cgraph_uid=1, symbol_order=0) Removing basic block 3 Merging blocks 2 and 4 int g (int i, int * tt) { int _1; <bb 2> [local count: 1073741824]: _1 = MIN_EXPR <i_8(D), 10>; *tt_4(D) = 1; return _1; } ..., we've got: ;; Function g (g, funcdef_no=0, decl_uid=2080, cgraph_uid=1, symbol_order=0) int g (int i, int * tt) { int _7; <bb 2> [local count: 1073741824]: if (i_8(D) > 10) goto <bb 3>; [35.00%] else goto <bb 4>; [65.00%] <bb 3> [local count: 375809640]: *tt_4(D) = 1; goto <bb 5>; [100.00%] <bb 4> [local count: 697932184]: *tt_4(D) = 1; <bb 5> [local count: 1073741824]: # _7 = PHI <10(3), i_8(D)(4)> return _7; }