[Bug rtl-optimization/78590] New: [7 Regression] FAIL: gcc.target/aarch64/advsimd-intrinsics/vget_lane.c in change_zero_ext in combine

ktkachov at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Nov 29 15:25:00 GMT 2016


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

            Bug ID: 78590
           Summary: [7 Regression] FAIL:
                    gcc.target/aarch64/advsimd-intrinsics/vget_lane.c in
                    change_zero_ext in combine
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
                CC: segher at gcc dot gnu.org
  Target Milestone: ---
            Target: aarch64

I believe after r242950 in combine we started seeing some ICEs in some __fp16
tests on aarch64:
FAIL: gcc.target/aarch64/advsimd-intrinsics/vget_lane.c

bad.c: In function 'fn1':
bad.c:8:1: internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:908
 }
 ^
0x7fd144 gen_rtx_SUBREG(machine_mode, rtx_def*, int)
        $SRC/gcc/emit-rtl.c:908
0x7fd183 gen_lowpart_SUBREG(machine_mode, rtx_def*)
        $SRC/gcc/emit-rtl.c:924
0x10e46f5 change_zero_ext
        $SRC/gcc/combine.c:11259
0x10e4ca8 recog_for_combine
        $SRC/gcc/combine.c:11345
0x10f0764 try_combine
        $SRC/gcc/combine.c:3501
0x10f4c7f combine_instructions
        $SRC/gcc/combine.c:1265
0x10f4c7f rest_of_handle_combine
        $SRC/gcc/combine.c:14580
0x10f4c7f execute
        $SRC/gcc/combine.c:14625
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

A reduced reproducer is:
int a;
int fn2 ();
void fn3 ();

void fn1() {
  __fp16 b = fn2();
  if (*(unsigned short *)&b != a)
    fn3();
}

ICEs at -O1 on aarch64


More information about the Gcc-bugs mailing list