diff options
author | Chris Lattner <sabre@nondot.org> | 2004-12-12 17:40:28 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-12-12 17:40:28 +0000 |
commit | 17550c456cc5f419e1042720a28af44c85cbfce6 (patch) | |
tree | dc8f0f15f38608a8b081e0bbe1058e4a3c8dcc85 /llvm/lib/Target/X86/X86TargetMachine.cpp | |
parent | 1adea147ba32929714dd7d8fcab0e57a0f7cd485 (diff) | |
download | bcm5719-llvm-17550c456cc5f419e1042720a28af44c85cbfce6.tar.gz bcm5719-llvm-17550c456cc5f419e1042720a28af44c85cbfce6.zip |
Use the target triple to pick this target.
llvm-svn: 18830
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetMachine.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86TargetMachine.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86TargetMachine.cpp b/llvm/lib/Target/X86/X86TargetMachine.cpp index 26ffc19123f..0e3eea43924 100644 --- a/llvm/lib/Target/X86/X86TargetMachine.cpp +++ b/llvm/lib/Target/X86/X86TargetMachine.cpp @@ -69,9 +69,15 @@ unsigned X86TargetMachine::getJITMatchQuality() { } unsigned X86TargetMachine::getModuleMatchQuality(const Module &M) { + // We strongly match "i[3-9]86-*". + std::string TT = M.getTargetTriple(); + if (TT.size() >= 5 && TT[0] == 'i' && TT[2] == '8' && TT[3] == '6' && + TT[4] == '-' && TT[1] - '3' < 6) + return 20; + if (M.getEndianness() == Module::LittleEndian && M.getPointerSize() == Module::Pointer32) - return 10; // Direct match + return 10; // Weak match else if (M.getEndianness() != Module::AnyEndianness || M.getPointerSize() != Module::AnyPointerSize) return 0; // Match for some other target |