public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/113573] New: aarch64: internal compiler error in mark_label_nuses
@ 2024-01-24  3:14 mpolacek at gcc dot gnu.org
  2024-01-24  3:18 ` [Bug target/113573] " mpolacek at gcc dot gnu.org
  2024-01-24  3:18 ` pinskia at gcc dot gnu.org
  0 siblings, 2 replies; 3+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2024-01-24  3:14 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 113573
           Summary: aarch64: internal compiler error in mark_label_nuses
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mpolacek at gcc dot gnu.org
  Target Milestone: ---

With the test below (should be cleaned up a bit) I get:

$ ./cc1 -quiet -Iinclude rtl.c -O0
$ ./cc1 -quiet -Iinclude rtl.c -O
during RTL pass: split1
rtl.c: In function ‘jsimd_extbgrx_ycc_convert_neon’:
rtl.c:38:1: internal compiler error: Segmentation fault
   38 | }
      | ^
0x10534af crash_signal
        /home/mpolacek/src/gcc/gcc/toplev.cc:317
0x7f1de238d99f ???
       
/usr/src/debug/glibc-2.38-14.fc39.x86_64/signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0xbf42bd mark_label_nuses
        /home/mpolacek/src/gcc/gcc/emit-rtl.cc:3896
0xbf432a mark_label_nuses
        /home/mpolacek/src/gcc/gcc/emit-rtl.cc:3907
0xbf4309 mark_label_nuses
        /home/mpolacek/src/gcc/gcc/emit-rtl.cc:3904
0xbf914e try_split(rtx_def*, rtx_insn*, int)
        /home/mpolacek/src/gcc/gcc/emit-rtl.cc:4093
0xfae317 split_insn
        /home/mpolacek/src/gcc/gcc/recog.cc:3405
0xfb3997 split_all_insns()
        /home/mpolacek/src/gcc/gcc/recog.cc:3509
0xfb3ab8 execute
        /home/mpolacek/src/gcc/gcc/recog.cc:4433

$ cat rtl.c
#pragma GCC aarch64 "arm_neon.h"
typedef __Uint8x8_t uint8x8_t;
typedef __Uint16x4_t uint16x4_t;
typedef __Int16x8_t int16x8_t;
typedef __Uint16x8_t uint16x8_t;
int jsimd_extbgrx_ycc_convert_neon_image_width,
    jsimd_extbgrx_ycc_convert_neon___trans_tmp_1;
uint16x4_t jsimd_extbgrx_ycc_convert_neon___trans_tmp_2;
uint16x8_t vcombine_u16();
uint16x8_t vmovl_u8(uint8x8_t __a) {
  return __builtin_aarch64_uxtlv8hi_uu(__a);
}
__inline int __attribute__((__gnu_inline__)) vmull_laneq_u16();
uint8x8x4_t vld4_u8();
void jsimd_extbgrx_ycc_convert_neon() {
  int scaled_128_5 = jsimd_extbgrx_ycc_convert_neon___trans_tmp_1,
      cols_remaining = jsimd_extbgrx_ycc_convert_neon_image_width;
  for (;;)
    if (cols_remaining) {
      uint8x8x4_t input_pixels = vld4_u8();
      uint16x8_t r = vmovl_u8(input_pixels.val[2]);
      uint16x8_t g = vmovl_u8(input_pixels.val[1]);
      uint16x8_t b = vmovl_u8(input_pixels.val[0]);
      int y_l = vmull_laneq_u16(r);
      uint16x8_t __a = g;
      jsimd_extbgrx_ycc_convert_neon___trans_tmp_2 =
          (uint16x4_t)__builtin_aarch64_get_lowv8hi((int16x8_t)__a);
      __a = b;
      int cb_l = scaled_128_5;
      int cb_h = scaled_128_5;
      int cr_l = scaled_128_5;
      int cr_h = scaled_128_5;
      uint16x8_t y_u16 = vcombine_u16(y_l);
      uint16x8_t cb_u16 = vcombine_u16(cb_l, cb_h);
      uint16x8_t cr_u16 = vcombine_u16(cr_l, cr_h);
      __a = y_u16 = cb_u16 = cr_u16;
    }
}

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-01-24  3:18 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-24  3:14 [Bug target/113573] New: aarch64: internal compiler error in mark_label_nuses mpolacek at gcc dot gnu.org
2024-01-24  3:18 ` [Bug target/113573] " mpolacek at gcc dot gnu.org
2024-01-24  3:18 ` pinskia at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).