This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] combine: Tweak change_zero_ext



On 30/11/16 10:02, Bin.Cheng wrote:
On Tue, Nov 29, 2016 at 9:14 PM, Christophe Lyon
<christophe.lyon@linaro.org> wrote:
On 29 November 2016 at 20:38, Uros Bizjak <ubizjak@gmail.com> wrote:
2016-11-26  Segher Boessenkool  <segher@kernel.crashing.org>

* combine.c (change_zero_ext): Also handle extends from a subreg
to a mode bigger than that of the operand of the subreg.
This patch introduced:

FAIL: gcc.target/i386/pr44578.c (internal compiler error)

on i686 (or x86_64 32bit multi-lib).

./cc1 -O2 -mtune=athlon64 -m32 -quiet pr44578.c
pr44578.c: In function ‘test’:
pr44578.c:18:1: internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:908
  }
  ^
0x81493b gen_rtx_SUBREG(machine_mode, rtx_def*, int)
         /home/uros/gcc-svn/trunk/gcc/emit-rtl.c:908
0x122609f change_zero_ext
         /home/uros/gcc-svn/trunk/gcc/combine.c:11260
0x1226207 recog_for_combine
         /home/uros/gcc-svn/trunk/gcc/combine.c:11346
0x1236db3 try_combine
         /home/uros/gcc-svn/trunk/gcc/combine.c:3501
0x123a3e0 combine_instructions
         /home/uros/gcc-svn/trunk/gcc/combine.c:1265
0x123a3e0 rest_of_handle_combine
         /home/uros/gcc-svn/trunk/gcc/combine.c:14581
0x123a3e0 execute
         /home/uros/gcc-svn/trunk/gcc/combine.c:14626

Uros.
Hi,

I'm seeing a similar error on aarch64:
FAIL: gcc.target/aarch64/advsimd-intrinsics/vduph_lane.c   -O1
(internal compiler error)
with the same backtrace.
Hi,
I also saw the same failure for below tests on aarch64.

/tmp/.../src/gcc/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vget_lane.c:
In function 'exec_vget_lane':
/tmp/.../src/gcc/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vget_lane.c:136:1:
internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:908
0x7d9cd1 gen_rtx_SUBREG(machine_mode, rtx_def*, int)
     /tmp/.../src/gcc/gcc/emit-rtl.c:908
0x7d9d25 gen_lowpart_SUBREG(machine_mode, rtx_def*)
     /tmp/.../src/gcc/gcc/emit-rtl.c:924
0x1112562 change_zero_ext
     /tmp/.../src/gcc/gcc/combine.c:11260
0x1112b47 recog_for_combine
     /tmp/.../src/gcc/gcc/combine.c:11346

This is PR 78590 and Segher fixed it today.
Kyrill

Thanks,
bin
Christophe


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]