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 | ec4e1b67bfd7891a2ef1ddb46007915ef7f28130 (patch) | |
tree | eb6d3693aa6bf98ffe12a33080ffa441e40aa899 | |
parent | 4a99c34873643eacec5a57302d9a84db11510b97 (diff) | |
download | bcm5719-llvm-ec4e1b67bfd7891a2ef1ddb46007915ef7f28130.tar.gz bcm5719-llvm-ec4e1b67bfd7891a2ef1ddb46007915ef7f28130.zip |
Truncate from i64 to i32 is "free" on x86-32, because it involves
just discarding one of the registers.
llvm-svn: 97100
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 43d230f0746..eb0a995432e 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/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 { |