The following fails: $ /xgcc -B. /home/marxin/Programming/gcc/gcc/testsuite/gcc.c-torture/execute/pr38048-1.c -mabi=ilp32 -fsanitize=address -c -S -fdump-rtl-all during RTL pass: final dump file: pr38048-1.c.320r.final /home/marxin/Programming/gcc/gcc/testsuite/gcc.c-torture/execute/pr38048-1.c: In function ‘foo’: /home/marxin/Programming/gcc/gcc/testsuite/gcc.c-torture/execute/pr38048-1.c:14:1: internal compiler error: output_operand: invalid address mode 14 | } | ^ 0xc65336 output_operand_lossage(char const*, ...) /home/marxin/Programming/gcc/gcc/final.c:3609 0x15a4dfd aarch64_print_address_internal /home/marxin/Programming/gcc/gcc/config/aarch64/aarch64.c:10464 0x15a5546 aarch64_print_operand_address /home/marxin/Programming/gcc/gcc/config/aarch64/aarch64.c:10568 0xc65553 output_address(machine_mode, rtx_def*) /home/marxin/Programming/gcc/gcc/final.c:4067 0x15a4601 aarch64_print_operand /home/marxin/Programming/gcc/gcc/config/aarch64/aarch64.c:10250 0xc654b1 output_operand(rtx_def*, int) /home/marxin/Programming/gcc/gcc/final.c:4051 0xc65efc output_asm_insn(char const*, rtx_def**) /home/marxin/Programming/gcc/gcc/final.c:3963 0xc69dc3 output_asm_insn(char const*, rtx_def**) /home/marxin/Programming/gcc/gcc/final.c:3840 0xc69dc3 final_scan_insn_1 /home/marxin/Programming/gcc/gcc/final.c:3106 0xc6a0bb final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*) /home/marxin/Programming/gcc/gcc/final.c:3152 0xc6a1c6 final_1 /home/marxin/Programming/gcc/gcc/final.c:2020 0xc6adb4 rest_of_handle_final /home/marxin/Programming/gcc/gcc/final.c:4658 0xc6adb4 execute /home/marxin/Programming/gcc/gcc/final.c:4736 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.
Started with my g:8b6731e674c76cb48a417f2eef74ced92a17f469.
Most likely a ptr_mode vs Pmode issue.
(In reply to Andrew Pinski from comment #2) > Most likely a ptr_mode vs Pmode issue. Yep, I've got a working patch for it..
The master branch has been updated by Martin Liska <marxin@gcc.gnu.org>: https://gcc.gnu.org/g:8cff672cb9a132d3d3158c2edfc9a64b55292b80 commit r11-1197-g8cff672cb9a132d3d3158c2edfc9a64b55292b80 Author: Martin Liska <mliska@suse.cz> Date: Thu Jun 11 09:34:41 2020 +0200 asan: fix RTX emission for ilp32 gcc/ChangeLog: PR sanitizer/95634 * asan.c (asan_emit_stack_protection): Fix emission for ilp32 by using Pmode instead of ptr_mode. Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
Fixed.
The releases/gcc-10 branch has been updated by Martin Liska <marxin@gcc.gnu.org>: https://gcc.gnu.org/g:e1d68582022cfa2b1dc76646724b397ba2739439 commit r10-8284-ge1d68582022cfa2b1dc76646724b397ba2739439 Author: Martin Liska <mliska@suse.cz> Date: Thu Jun 11 09:34:41 2020 +0200 asan: fix RTX emission for ilp32 gcc/ChangeLog: PR sanitizer/95634 * asan.c (asan_emit_stack_protection): Fix emission for ilp32 by using Pmode instead of ptr_mode. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80)
The releases/gcc-9 branch has been updated by Martin Liska <marxin@gcc.gnu.org>: https://gcc.gnu.org/g:187c96ea5310cef1977d8a44b0b9a6b561b6c8c7 commit r9-8672-g187c96ea5310cef1977d8a44b0b9a6b561b6c8c7 Author: Martin Liska <mliska@suse.cz> Date: Thu Jun 11 09:34:41 2020 +0200 asan: fix RTX emission for ilp32 gcc/ChangeLog: PR sanitizer/95634 * asan.c (asan_emit_stack_protection): Fix emission for ilp32 by using Pmode instead of ptr_mode. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80)
The releases/gcc-8 branch has been updated by Martin Liska <marxin@gcc.gnu.org>: https://gcc.gnu.org/g:5222017313f5abf39e2374dc11bcac9b444f1b4c commit r8-10308-g5222017313f5abf39e2374dc11bcac9b444f1b4c Author: Martin Liska <mliska@suse.cz> Date: Thu Jun 11 09:34:41 2020 +0200 asan: fix RTX emission for ilp32 gcc/ChangeLog: PR sanitizer/95634 * asan.c (asan_emit_stack_protection): Fix emission for ilp32 by using Pmode instead of ptr_mode. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> (cherry picked from commit 8cff672cb9a132d3d3158c2edfc9a64b55292b80)