https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111231

--- Comment #14 from Mathieu Malaterre <malat at debian dot org> ---
(In reply to Xi Ruoyao from comment #12)
> (In reply to Mathieu Malaterre from comment #10)
> > I could not reduce to a single *.cc file. The function needs to be in an alt
> > file 'foo.cc'.
> 
> Can you try copying the functions provided in foo.cc into the test case but
> and noipa attribute for them?

Updated, thanks for the pointer. See comment #13.

Here is what I see on my side (Debian/sid/armhf):

$ g++-13 -std=c++11 -o works -O2 -fno-tree-vectorize -g -Wfatal-errors -Werror
-Wall -Wextra -Wconversion -Wpedantic -DNDEBUG -fno-exceptions -march=armv7-a
-mfpu=neon-vfpv4 -mfloat-abi=hard -mfp16-format=ieee widen_mul_test.cc
-> success

$ valgrind --leak-check=yes --error-exitcode=1 ./works
-> success (no leak)

$ clang++-16 -std=c++11 -Wfatal-errors -Werror -Wall -Wextra -Wconversion
-Wno-unknown-attributes -O2 -DNDEBUG -fno-exceptions -march=armv7-a
-mfpu=neon-vfpv4 -mfloat-abi=hard -o works0 widen_mul_test.cc
-> success

Now simply remove `-fno-tree-vectorize`:

$ g++ -std=c++11 -o fails -O2 -g -Wfatal-errors -DNDEBUG -fno-exceptions
-march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -mfp16-format=ieee
widen_mul_test.cc
-> failure (abort)

Reply via email to