diff options
author | Duncan Sands <baldrick@free.fr> | 2008-07-16 16:03:07 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2008-07-16 16:03:07 +0000 |
commit | 95db39a9de48f69f4d764335b492b83a698c7854 (patch) | |
tree | a9901fb524c3286c1a31583f4e6afe4cd5d1cdd5 /lib/CodeGen/SelectionDAG/LegalizeTypes.h | |
parent | 61e804f22bde414b2e8a8da22daf575a7e8ad816 (diff) |
Add support for promoting and expanding AssertZext
and AssertSext. Needed when passing huge integer
parameters with the zeroext or signext attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53684 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeTypes.h')
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypes.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypes.h b/lib/CodeGen/SelectionDAG/LegalizeTypes.h index 3eaaaeeb24..1959df5c17 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypes.h +++ b/lib/CodeGen/SelectionDAG/LegalizeTypes.h @@ -212,6 +212,8 @@ private: // Integer Result Promotion. void PromoteIntegerResult(SDNode *N, unsigned ResNo); + SDOperand PromoteIntRes_AssertSext(SDNode *N); + SDOperand PromoteIntRes_AssertZext(SDNode *N); SDOperand PromoteIntRes_BIT_CONVERT(SDNode *N); SDOperand PromoteIntRes_BSWAP(SDNode *N); SDOperand PromoteIntRes_BUILD_PAIR(SDNode *N); @@ -269,6 +271,7 @@ private: // Integer Result Expansion. void ExpandIntegerResult(SDNode *N, unsigned ResNo); void ExpandIntRes_ANY_EXTEND (SDNode *N, SDOperand &Lo, SDOperand &Hi); + void ExpandIntRes_AssertSext (SDNode *N, SDOperand &Lo, SDOperand &Hi); void ExpandIntRes_AssertZext (SDNode *N, SDOperand &Lo, SDOperand &Hi); void ExpandIntRes_Constant (SDNode *N, SDOperand &Lo, SDOperand &Hi); void ExpandIntRes_CTLZ (SDNode *N, SDOperand &Lo, SDOperand &Hi); |