> From: Richard Sandiford <[email protected]>
> Date: Tue, 30 Jun 2015 22:55:24 +0200
> Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu.
> Also tested via config-list.mk. Committed as preapproved.
>
> Thanks,
> Richard
>
>
> gcc/
> * defaults.h (HAVE_epilogue, gen_epilogue): Delete.
> * target-insns.def (epilogue, prologue, sibcall_prologue): New
> targetm instruction patterns.
> * alias.c (init_alias_analysis): Use them instead of HAVE_*/gen_*
> interface.
> * calls.c (expand_call): Likewise.
> * cfgrtl.c (cfg_layout_finalize): Likewise.
> * df-scan.c (df_get_entry_block_def_set): Likewise.
> (df_get_exit_block_use_set): Likewise.
> * dwarf2cfi.c (pass_dwarf2_frame::gate): Likewise.
> * final.c (final_start_function): Likewise.
> * function.c (thread_prologue_and_epilogue_insns): Likewise.
> (reposition_prologue_and_epilogue_notes): Likewise.
> * reorg.c (find_end_label): Likewise.
> * toplev.c (process_options): Likewise.
I think this one -being the most fitting patch in the range
(225190:225210]- caused this regression for cris-elf:
Running
/tmp/hpautotest-gcc1/gcc/gcc/testsuite/gcc.target/cris/torture/cris-torture.exp
...
FAIL: gcc.target/cris/torture/no-pro-epi-1.c -O3 -g (internal compiler error)
FAIL: gcc.target/cris/torture/no-pro-epi-1.c -O3 -g (test for excess errors)
This test checks that the -mno-prologue-epilogue option works,
whose semantics is supposedly self-explanatory.
gcc.log:
Executing on host: /tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/xgcc
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/
/tmp/hpautotest-gcc1/gcc/gcc/testsuite/gcc.target/cris/torture/no-pro-epi-1.c
-fno-diagnostics-show-caret -fdiagnostics-color=never -O3 -g
-mno-prologue-epilogue -S -isystem
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/hpautotest-gcc1/gcc/newlib/libc/include -o no-pro-epi-1.s (timeout =
300)
/tmp/hpautotest-gcc1/gcc/gcc/testsuite/gcc.target/cris/torture/no-pro-epi-1.c:4:1:
internal compiler error: Segmentation fault
0xa6ba45 crash_signal
/tmp/hpautotest-gcc1/gcc/gcc/toplev.c:360
0x6b4724 vec<dw_cfi_node*, va_gc, vl_embed>::iterate(unsigned int,
dw_cfi_node**) const
/tmp/hpautotest-gcc1/gcc/gcc/vec.h:755
0x6b4724 output_call_frame_info
/tmp/hpautotest-gcc1/gcc/gcc/dwarf2out.c:925
0x6b4f36 dwarf2out_frame_finish()
/tmp/hpautotest-gcc1/gcc/gcc/dwarf2out.c:1177
Please submit a full bug report,
brgds, H-P