https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98302
Bug ID: 98302
Summary: [11 Regression] Wrong code on aarch64
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: wrong-code
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: marxin at gcc dot gnu.org
CC: rsandifo at gcc dot gnu.org
Target Milestone: ---
Host: aarch64-linux-gnu
Target: aarch64-linux-gnu
Started with a costing model change, and I can reproduce it only on aarch64.
The test-case is hard to reduce and comes from yarpgen:
$ g++ -O3 func.ii -c
$ g++ driver.ii -c
$ g++ *.o
$ ./a.out
a.out: driver.cpp:1143: void checksum(): Assertion `var_135 == (unsigned
char)0' failed.
Aborted (core dumped)
It's caused by vect_loop, and g++ -O3 func.ii -c -fdbg-cnt=vect_loop:1 is first
value that causes that.