[LLVMbugs] [Bug 2547] New: Implement support for Type Based Alias Analysis
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Sun Jul 13 21:15:03 PDT 2008
http://llvm.org/bugs/show_bug.cgi?id=2547
Summary: Implement support for Type Based Alias Analysis
Product: libraries
Version: 1.0
Platform: PC
OS/Version: All
Status: NEW
Keywords: code-quality
Severity: normal
Priority: P2
Component: Core LLVM classes
AssignedTo: unassignedbugs at nondot.org
ReportedBy: sabre at nondot.org
CC: llvmbugs at cs.uiuc.edu
TBAA is a feature that llvm has never supported, and it is capable of providing
significant speedups. For example, here is the performance of
SingleSource/Benchmarks/Himeno with various compilers:
gcc 4.0 -O3: 4.69
gcc 4.0 -O3 -fno-strict-aliasing: 5.93
gcc 4.2 -O3: 4.54
gcc 4.2 -O3 -fno-strict-aliasing: 6.14
llvm-gcc -O3: 5.43 [which is no strict aliasing]
llvm-gcc -O4: 3.46 [which is no strict aliasing]
As you can see, at -O3, we lose to GCC by ~20%. Empirically, looking at the
code, this is because loads aren't getting hoisted out of loops, which makes
strides loop variant, which prevents LSR from eliminating multiplies. -O4/LTO
makes up for the lack of TBAA in this case with extra inlining etc.
An interesting detail is that TBAA is disabled by default in GCC on the mac,
but enabled by default everywhere else. This is probably why our performance
is generally seen as worse (compared to GCC) on linux than it is on the mac.
-Chris
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list