/// computes it as well as which return value to use from that node. This pair
/// of information is represented with the SDOperand value type.
///
-struct SDOperand {
+class SDOperand {
+public:
SDNode *Val; // The node defining the value we are using.
unsigned ResNo; // Which return value of the node we are using.
int64_t getSignExtended() const {
unsigned Bits = MVT::getSizeInBits(getValueType(0));
- return ((int64_t)Value << 64-Bits) >> 64-Bits;
+ return ((int64_t)Value << (64-Bits)) >> (64-Bits);
}
bool isNullValue() const { return Value == 0; }
SDOperand Result = Op;
SDNode *Node = Op.Val;
- LegalizeAction Action;
switch (Node->getOpcode()) {
default:
NeedsAnotherIteration = true;
const char *LibCallName = 0;
- LegalizeAction Action;
switch (Node->getOpcode()) {
default:
std::cerr << "NODE: "; Node->dump(); std::cerr << "\n";
//===--------------------------------------------------------------------===//
/// FunctionLoweringInfo - This contains information that is global to a
/// function that is used when lowering a region of the function.
- struct FunctionLoweringInfo {
+ class FunctionLoweringInfo {
+ public:
TargetLowering &TLI;
Function &Fn;
MachineFunction &MF;
unsigned Align = TLI.getTargetData().getTypeAlignment(Ty);
TySize *= CUI->getValue(); // Get total allocated size.
StaticAllocaMap[AI] =
- MF.getFrameInfo()->CreateStackObject(TySize, Align);
+ MF.getFrameInfo()->CreateStackObject((unsigned)TySize, Align);
}
for (; BB != E; ++BB)
- for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I)
+ for (BasicBlock::iterator I = BB->begin(), e = BB->end(); I != e; ++I)
if (!I->use_empty() && isUsedOutsideOfDefiningBlock(I))
if (!isa<AllocaInst>(I) ||
!StaticAllocaMap.count(cast<AllocaInst>(I)))