Skip to content

InstSimplify unconditionally executed trapping constant expression in phi fold #49839

Description

@zhendongsu
Bugzilla Link 50495
Version trunk
OS All
CC @rotateright

Extended Description

[585] % clangtk -v
clang version 13.0.0 (https://github.com/llvm/llvm-project.git 5dd86aa)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/opfuzz/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@MX32
Selected multilib: .;@m64
[586] %
[586] % clangtk -O2 small.c; ./.aout
bash: ./.aout: No such file or directory
[587] %
[587] %
[587] % clangtk -v
clang version 13.0.0 (https://github.com/llvm/llvm-project.git 5dd86aa)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/opfuzz/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@MX32
Selected multilib: .;@m64
clang-13: warning: argument unused during compilation: '-I /usr/local/include/csmith' [-Wunused-command-line-argument]
[588] %
[588] % clangtk -O2 small.c; ./a.out
[589] %
[589] % clangtk -O3 small.c
[590] % ./a.out
Floating point exception
[591] %
[591] % cat small.c

int a, b, e[2], f;
static char c, d, *g = &c, **h = &g;
char i(char j, char k) { return k ? j % k : 0; }
int main() {
  int *l = &e[1];
  for (; d < 1; d++) {
    int *m = &a, *o = &e[1];
    **h = l == m;
    char ***n[2] = {&h, &h};
    for (; b < 4; ++b)
      if (f != 1)
        *o = i(1, *g);
  }
  return 0;
}

Metadata

Metadata

Assignees

Labels

bugzillaIssues migrated from bugzillaconfirmedVerified by a second partyipoInterprocedural optimizationsmiscompilation

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions