diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-03-23 23:14:44 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-03-23 23:14:44 +0000 |
commit | 31da45b7affe22dcd423f8bc874f7a67e50385da (patch) | |
tree | 34996fe1544fa8aafae93b6f1c83f9b22ba8d13a /llvm/lib/Target/X86/X86InstrInfo.cpp | |
parent | 6a64320da86b608a01d5d3ddf69f45c658c8a901 (diff) | |
download | bcm5719-llvm-31da45b7affe22dcd423f8bc874f7a67e50385da.tar.gz bcm5719-llvm-31da45b7affe22dcd423f8bc874f7a67e50385da.zip |
Add a late SSEDomainFix pass that twiddles SSE instructions to avoid domain crossings.
This is work in progress. So far, SSE execution domain tables are added to
X86InstrInfo, and a skeleton pass is enabled with -sse-domain-fix.
llvm-svn: 99345
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.cpp b/llvm/lib/Target/X86/X86InstrInfo.cpp index 2323f5790ab..71a4dae6a5f 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.cpp +++ b/llvm/lib/Target/X86/X86InstrInfo.cpp @@ -665,6 +665,9 @@ X86InstrInfo::X86InstrInfo(X86TargetMachine &tm) // Remove ambiguous entries. assert(AmbEntries.empty() && "Duplicated entries in unfolding maps?"); + + if (TM.getSubtarget<X86Subtarget>().hasSSE2()) + populateSSEInstrDomainTable(); } bool X86InstrInfo::isMoveInstr(const MachineInstr& MI, |