diff options
author | Evan Cheng <evan.cheng@apple.com> | 2007-10-29 19:58:20 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2007-10-29 19:58:20 +0000 |
commit | 3c3ddb3a856e44c603cb8cf8f52ff9c0f06ff14a (patch) | |
tree | 8fedeb7b8afa2e96c2ae0e0ab86f5bb8d9c11e4c /include/llvm/Target | |
parent | 9962054775455c43402bf176da4a28c68197feef (diff) | |
download | external_llvm-3c3ddb3a856e44c603cb8cf8f52ff9c0f06ff14a.zip external_llvm-3c3ddb3a856e44c603cb8cf8f52ff9c0f06ff14a.tar.gz external_llvm-3c3ddb3a856e44c603cb8cf8f52ff9c0f06ff14a.tar.bz2 |
Enable more fold (sext (load x)) -> (sext (truncate (sextload x)))
transformation. Previously, it's restricted by ensuring the number of load uses
is one. Now the restriction is loosened up by allowing setcc uses to be
"extended" (e.g. setcc x, c, eq -> setcc sext(x), sext(c), eq).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43465 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target')
-rw-r--r-- | include/llvm/Target/TargetLowering.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetLowering.h b/include/llvm/Target/TargetLowering.h index e092145..9d7a1ec 100644 --- a/include/llvm/Target/TargetLowering.h +++ b/include/llvm/Target/TargetLowering.h @@ -1000,6 +1000,10 @@ public: virtual bool isTruncateFree(const Type *Ty1, const Type *Ty2) const { return false; } + + virtual bool isTruncateFree(MVT::ValueType VT1, MVT::ValueType VT2) const { + return false; + } //===--------------------------------------------------------------------===// // Div utility functions |