[llvm-bugs] [Bug 33411] New: wrong code at -O3 in CFLAA on x86_64-linux-gnu (with "-mllvm -use-cfl-aa=anders", but not "-mllvm -use-cfl-aa=steens")

via llvm-bugs llvm-bugs at lists.llvm.org
Sun Jun 11 19:02:05 PDT 2017


https://bugs.llvm.org/show_bug.cgi?id=33411

            Bug ID: 33411
           Summary: wrong code at -O3 in CFLAA on x86_64-linux-gnu (with
                    "-mllvm -use-cfl-aa=anders", but not "-mllvm
                    -use-cfl-aa=steens")
           Product: clang
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: -New Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: su at cs.ucdavis.edu
                CC: llvm-bugs at lists.llvm.org

This appears to be another variant with different symptoms (but could still be
a dup). It affects 4.0.x and trunk, but not 3.9.x. 


$ clang -v
clang version 5.0.0 (trunk 305165) (llvm/trunk 305163)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/clang-trunk/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6.0.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.3
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.0.0
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
$ 
$ clang-3.9.0 -O3 -mllvm -use-cfl-aa=anders -w small.c; ./a.out
$ 
$ clang-4.0.0 -O2 -mllvm -use-cfl-aa=anders -w small.c; ./a.out
$ 
$ clang-4.0.0 -O3 -mllvm -use-cfl-aa=anders -w small.c; ./a.out
Aborted (core dumped)
$ clang -O3 -mllvm -use-cfl-aa=anders -w small.c; ./a.out
Aborted (core dumped)
$ 


----------------------------------------------------------------


int a, b, c, d, *e = &d, *f = &c, **i = &e, ***j = &i, m, k;
char g, h, n;
unsigned l = ~0;

int main ()
{
  if (g)
    goto L;
  *f = 0;
  !h;
  int *o, **p = &o, ***q = &p, ****r = &q, *****s = &r;
  while (m)
    ****s = &k;
  if (!b)
    ***r = **j;
  if (!(o || o == &a))
    __builtin_abort ();
  if (n)
  L:;
  if (b > l)
    goto L;
  ****s = &k;
  return 0;
}

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170612/c843d595/attachment.html>


More information about the llvm-bugs mailing list