Disable the use of TBAA when using AA in CodeGen

Press ? to show keyboard shortcuts.
Committed
hfinkelJan 25 2014, 11:24 AM
Parents
rL200092: Remove FIXME comments about tids on FreeBSD that no longer apply
Branches
Unknown
Tags
Unknown
Subscribers
None
Description

Disable the use of TBAA when using AA in CodeGen

There are currently two issues, of which I currently know, that prevent TBAA
from being correctly usable in CodeGen:

  1. Stack coloring does not update TBAA when merging allocas. This is easy enough to fix, but is not the largest problem.
  2. CGP inserts ptrtoint/inttoptr pairs when sinking address computations. Because BasicAA does not handle inttoptr, we'll often miss basic type punning idioms that we need to catch so we don't miscompile real-world code (like LLVM).

I don't yet have a small test case for this, but this fixes self hosting a
non-asserts build of LLVM on PPC64 when using -enable-aa-sched-mi and -misched=shuffle.

rL200093

llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp

Loading...

llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

Loading...

llvm/trunk/lib/CodeGen/StackColoring.cpp

Loading...

Add Comment