http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55904
Bug #: 55904 Summary: g++.dg/torture/vshuf-v8hi.C fails on MIPS with -O3 -mel -mips16 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassig...@gcc.gnu.org ReportedBy: s...@gcc.gnu.org Created attachment 29102 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29102 preprocessed test case The test g++.dg/torture/vshuf-v8hi.C fails with an ICE when compiled with -O3 -mel -mips16. (All three options are required.) I see this with the mips-mti-elf and mips-mti-linux-gnu targets and believe it can be reproduced with any MIPS target that can generate little-endian MIPS16 code. I am attaching a preprocessed version of vshuf-v8hi.C. % obj-mips-mti-linux-gnu/gcc/final/gcc/cc1plus -quiet -mel -O3 -mips16 -std=c++11 x.i x.i: In function 'int main()': x.i:67:1: internal compiler error: in change_address_1, at emit-rtl.c:2002 } ^ 0x82eef8 change_address_1 /local/home/sellcey/nightly/src/gcc/gcc/emit-rtl.c:2002 0x82f5fb adjust_address_1(rtx_def*, machine_mode, long, int, int, int, long) /local/home/sellcey/nightly/src/gcc/gcc/emit-rtl.c:2134 0xa4df5e gen_lowpart_general(machine_mode, rtx_def*) /local/home/sellcey/nightly/src/gcc/gcc/rtlhooks.c:79 0xd3f60e output_154 /local/home/sellcey/nightly/src/gcc/gcc/config/mips/mips.md:2912 0x87178e final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*) /local/home/sellcey/nightly/src/gcc/gcc/final.c:2792 0x87232f final(rtx_def*, _IO_FILE*, int) /local/home/sellcey/nightly/src/gcc/gcc/final.c:1908 0x872559 rest_of_handle_final /local/home/sellcey/nightly/src/gcc/gcc/final.c:4271