https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103149
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Last reconfirmed| |2021-11-09 --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- vector([4,4]) <signed-boolean:4> next_mask_10; vector([4,4]) <signed-boolean:4> next_mask_28; next_mask_28 = .WHILE_ULT (_13, bnd.6_6, { 0, ... }); if (next_mask_28 != { 0, ... }) goto <bb 9>; [83.33%] else goto <bb 11>; [16.67%] ;; succ: 9 ;; 11 ;; basic block 9, loop depth 1 ;; pred: 8 __asm__("" : "=g" next_mask_10 : "0" next_mask_28); if (next_mask_10 == { 0, ... }) goto <bb 10>; [INV] else goto <bb 8>; [100.00%] Confirmed, the problem is harden conditionals insert an inline-asm which is invalid for a "SVE vector type". My bet is there are other testcases which can hit this issue without even -fno-tree-scev-cprop but it definitely is the easiest way for this testcase.