diff options
author | Dan Gohman <gohman@apple.com> | 2010-02-25 03:04:36 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-02-25 03:04:36 +0000 |
commit | 377fbc073c2e73ef9af8c2e1cf62562a66e9879e (patch) | |
tree | 73f820d5ddc0c31314ae5c618174d278071846d1 | |
parent | 0d0840108f7ae49b47689da54c53686c358f22cf (diff) |
Truncate from i64 to i32 is "free" on x86-32, because it involves
just discarding one of the registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97100 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/X86ISelLowering.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 43d230f074..eb0a995432 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -7780,7 +7780,7 @@ bool X86TargetLowering::isTruncateFree(const Type *Ty1, const Type *Ty2) const { unsigned NumBits2 = Ty2->getPrimitiveSizeInBits(); if (NumBits1 <= NumBits2) return false; - return Subtarget->is64Bit() || NumBits1 < 64; + return true; } bool X86TargetLowering::isTruncateFree(EVT VT1, EVT VT2) const { @@ -7790,7 +7790,7 @@ bool X86TargetLowering::isTruncateFree(EVT VT1, EVT VT2) const { unsigned NumBits2 = VT2.getSizeInBits(); if (NumBits1 <= NumBits2) return false; - return Subtarget->is64Bit() || NumBits1 < 64; + return true; } bool X86TargetLowering::isZExtFree(const Type *Ty1, const Type *Ty2) const { |