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

            Bug ID: 112720
           Summary: ICE: Segmentation fault during IPA pass: tmipa
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: iamanonymous.cs at gmail dot com
  Target Milestone: ---

*******************************************************************************
OS and Platform:
$ uname -a:
Linux ubuntu 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023
x86_64 x86_64 x86_64 GNU/Linux
*******************************************************************************
gcc version:
$ gcc -v
Using built-in specs.
COLLECT_GCC=/root/gcc_set/202311021000/bin/gcc
COLLECT_LTO_WRAPPER=/root/gcc_set/202311021000/libexec/gcc/x86_64-pc-linux-gnu/14.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --prefix=/root/gcc_set/202311021000
--with-gmp=/root/build_essential --with-mpfr=/root/build_essential
--with-mpc=/root/build_essential --enable-languages=c,c++ --disable-multilib
--with-sanitizer=address,undefined,thread,leak
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 14.0.0 20231102 (experimental) (GCC)

git version: d508a94167c186b2baacc679896e2809554c0b99
*******************************************************************************
Program:
$ cat mutant.c
typedef struct S {
  int * val;
  struct S *next;
} s;

s *next;
int a;

static int func(int * val)
{
  int b;
  int * v;
  __transaction_relaxed {
    v = next->val;
    b = (v == val);
    if (b)
      b = 2;
  }
  return b;
}

void test(void *data)
{
  extern void bark(void);
  if (func(0))
    bark();
  a = 99;
}

*******************************************************************************
Command Lines:
$ gcc -fgnu-tm -c -fsanitize=undefined mutant.c
during IPA pass: tmipa
mutant.c: In function ‘func’:
mutant.c:29:1: internal compiler error: Segmentation fault
   29 | }
      | ^
0xffebdf crash_signal
        ../../gcc/gcc/toplev.cc:315
0x1004fd0 is_tm_irrevocable
        ../../gcc/gcc/trans-mem.cc:237
0x100720e ipa_tm_scan_irr_block
        ../../gcc/gcc/trans-mem.cc:4396
0x100720e ipa_tm_scan_irr_blocks
        ../../gcc/gcc/trans-mem.cc:4464
0x1007683 ipa_tm_scan_irr_function
        ../../gcc/gcc/trans-mem.cc:4643
0x1008ae7 ipa_tm_execute
        ../../gcc/gcc/trans-mem.cc:5526
0x1008ae7 execute
        ../../gcc/gcc/trans-mem.cc:5686
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Reply via email to