diff options
| author | Anton Korobeynikov <asl@math.spbu.ru> | 2007-03-06 08:12:33 +0000 |
|---|---|---|
| committer | Anton Korobeynikov <asl@math.spbu.ru> | 2007-03-06 08:12:33 +0000 |
| commit | e7ec3bc7bca308e1620916ac2d6d27463d062aa0 (patch) | |
| tree | d51b30939540704bf9c200d57df6c994e87aa080 /llvm/lib/Target/X86/X86ISelLowering.cpp | |
| parent | 70c3c66e38dfe0cf86c46e7d890616a810fbdd4c (diff) | |
| download | bcm5719-llvm-e7ec3bc7bca308e1620916ac2d6d27463d062aa0.tar.gz bcm5719-llvm-e7ec3bc7bca308e1620916ac2d6d27463d062aa0.zip | |
Use new SDIselParamAttr enumeration. This removes "magick" constants
from formal attributes' flags processing.
llvm-svn: 34963
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index c0c7b79132a..5502cdca035 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -29,6 +29,7 @@ #include "llvm/CodeGen/MachineFunction.h" #include "llvm/CodeGen/MachineInstrBuilder.h" #include "llvm/CodeGen/SelectionDAG.h" +#include "llvm/CodeGen/SelectionDAGISel.h" #include "llvm/CodeGen/SSARegMap.h" #include "llvm/Support/MathExtras.h" #include "llvm/Target/TargetOptions.h" @@ -665,10 +666,12 @@ SDOperand X86TargetLowering::LowerCCCArguments(SDOperand Op, SelectionDAG &DAG, BytesToPopOnReturn = StackSize; // Callee pops everything.. BytesCallerReserves = 0; } else { - BytesToPopOnReturn = 0; // Callee pops hidden struct pointer. + BytesToPopOnReturn = 0; // Callee pops nothing. // If this is an sret function, the return should pop the hidden pointer. - if (NumArgs && (cast<ConstantSDNode>(Op.getOperand(3))->getValue() & 4)) + if (NumArgs && + (cast<ConstantSDNode>(Op.getOperand(3))->getValue() & + SDISelParamFlags::StructReturn)) BytesToPopOnReturn = 4; BytesCallerReserves = StackSize; @@ -740,7 +743,9 @@ SDOperand X86TargetLowering::LowerCCCCallTo(SDOperand Op, SelectionDAG &DAG, } // If the first argument is an sret pointer, remember it. - bool isSRet = NumOps &&(cast<ConstantSDNode>(Op.getOperand(6))->getValue()&4); + bool isSRet = NumOps && + (cast<ConstantSDNode>(Op.getOperand(6))->getValue() & + SDISelParamFlags::StructReturn); if (!MemOpChains.empty()) Chain = DAG.getNode(ISD::TokenFactor, MVT::Other, |

