Implement Value* tracking for loads and stores in the selection DAG. This enables...
authorAndrew Lenharth <andrewl@lenharth.org>
Wed, 27 Apr 2005 20:10:01 +0000 (20:10 +0000)
committerAndrew Lenharth <andrewl@lenharth.org>
Wed, 27 Apr 2005 20:10:01 +0000 (20:10 +0000)
commit2d86ea21dd76647cb054fd5d27df9e49efc672b6
tree87a965525520ccbd1d200407f54627b3697cdb6a
parent22cab6c752c75f81c05c679befd437e613138f6f
Implement Value* tracking for loads and stores in the selection DAG.  This enables one to use alias analysis in the backends.

(TRUNK)Stores and (EXT|ZEXT|SEXT)Loads have an extra SDOperand which is a SrcValueSDNode which contains the Value*.  Note that if the operation is introduced by the backend, it will still have the operand, but the value* will be null.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21599 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/SelectionDAG.h
include/llvm/CodeGen/SelectionDAGNodes.h
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
lib/Target/Alpha/AlphaISelPattern.cpp
lib/Target/IA64/IA64ISelPattern.cpp
lib/Target/PowerPC/PPC64ISelPattern.cpp
lib/Target/PowerPC/PPCISelPattern.cpp
lib/Target/X86/X86ISelPattern.cpp