Hi Maciej
On Mon, 2024-11-18 at 02:59 +0000, Maciej W. Rozycki wrote:
> This has come out of a discussion[1] around the removal of non-BWX Alpha
> support from the Linux kernel due to data races affecting RCU algorithms.
> (...)
> Comments, questions, voices of concern or appreciation, all very welcome.
Thanks a lot for your work, much appreciated!
I gave this a try on gcc.git master with LRA enabled for both non-BWX and
BWX targets. BWX targets build fine with almost all languages enabled (I
didn't try Ada, Go and Rust), but non-BWX fails with:
during RTL pass: reload
../../../libgomp/team.c: In function 'gomp_team_start':
../../../libgomp/team.c:940:1: internal compiler error: in
get_unaligned_address, at config/alpha/alpha.cc:1577
940 | }
| ^
mv -f .deps/bar.Tpo .deps/bar.Plo
none needed
checking whether /home/glaubitz/gcc.git/build/./gcc/xgcc
-B/home/glaubitz/gcc.git/build/./gcc/ -B/usr/local/alpha-unknown-linux-gnu/bin/
-B/usr/local/alpha-unknown-linux-gnu/lib/ -isystem
/usr/local/alpha-unknown-linux-gnu/include -isystem
/usr/local/alpha-unknown-linux-gnu/sys-include -fno-checking understands -c
and -o together... 0x1231f08d7 internal_error(char const*, ...)
../../gcc/diagnostic-global-context.cc:518
0x12319596b fancy_abort(char const*, int, char const*)
../../gcc/diagnostic.cc:1696
0x121e93827 get_unaligned_address(rtx_def*)
../../gcc/config/alpha/alpha.cc:1577
0x121e9691b alpha_expand_mov_nobwx(machine_mode, rtx_def**)
../../gcc/config/alpha/alpha.cc:2348
0x122bad4f3 gen_movqi(rtx_def*, rtx_def*)
../../gcc/config/alpha/alpha.md:4291
0x120bf3a7b rtx_insn* insn_gen_fn::operator()<rtx_def*, rtx_def*>(rtx_def*,
rtx_def*) const
../../gcc/recog.h:442
0x120eb25a7 emit_move_insn_1(rtx_def*, rtx_def*)
../../gcc/expr.cc:4578
0x120eb345f emit_move_insn(rtx_def*, rtx_def*)
../../gcc/expr.cc:4748
0x12134230b lra_emit_move(rtx_def*, rtx_def*)
../../gcc/lra.cc:509
0x1213674ab curr_insn_transform
../../gcc/lra-constraints.cc:4751
0x12136aa53 lra_constraints(bool)
../../gcc/lra-constraints.cc:5497
0x12134960b lra(_IO_FILE*, int)
../../gcc/lra.cc:2445
0x1212c6a5f do_reload
../../gcc/ira.cc:5977
0x1212c72d3 execute
../../gcc/ira.cc:6165
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
Do you have any plans for handling unaligned accesses for LRA as well?
Thanks,
adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913