diff options
author | Chris Lattner <sabre@nondot.org> | 2010-09-21 22:07:31 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-09-21 22:07:31 +0000 |
commit | d58d7c1907008f149b2cddd215c3544b0a3397e0 (patch) | |
tree | ca2c3bc36336505d77f45c446a6801a2d0b89e0b /llvm/lib/CodeGen/SplitKit.cpp | |
parent | c467aa2fa40ea1912365b30abf2eec32fc5b9b00 (diff) | |
download | bcm5719-llvm-d58d7c1907008f149b2cddd215c3544b0a3397e0.tar.gz bcm5719-llvm-d58d7c1907008f149b2cddd215c3544b0a3397e0.zip |
reimplement support for GS and FS relative address space matching
by having X86DAGToDAGISel::SelectAddr get passed in the parent node
of the operand match (the load/store/atomic op) and having it get
the address space from that, instead of having special FS/GS addr
mode operations that require duplicating the entire instruction set
to support.
This makes FS and GS relative accesses *far* more predictable and
work much better. It also simplifies the X86 backend a bit, more
to come.
There is still a pending issue with nodes like ISD::PREFETCH and
X86ISD::FLD, which really should be MemSDNode's but aren't.
llvm-svn: 114491
Diffstat (limited to 'llvm/lib/CodeGen/SplitKit.cpp')
0 files changed, 0 insertions, 0 deletions