mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-06 09:44:39 +00:00
Remove trailing whitespace from SelectionDAG/*.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185780 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
01f8d579f7
commit
155615d7dc
@ -1843,7 +1843,7 @@ SDValue DAGCombiner::visitMUL(SDNode *N) {
|
||||
|
||||
APInt Val;
|
||||
// (mul (shl X, c1), c2) -> (mul X, c2 << c1)
|
||||
if (N1IsConst && N0.getOpcode() == ISD::SHL &&
|
||||
if (N1IsConst && N0.getOpcode() == ISD::SHL &&
|
||||
(isConstantSplatVector(N0.getOperand(1).getNode(), Val) ||
|
||||
isa<ConstantSDNode>(N0.getOperand(1)))) {
|
||||
SDValue C3 = DAG.getNode(ISD::SHL, SDLoc(N), VT,
|
||||
@ -1858,7 +1858,7 @@ SDValue DAGCombiner::visitMUL(SDNode *N) {
|
||||
{
|
||||
SDValue Sh(0,0), Y(0,0);
|
||||
// Check for both (mul (shl X, C), Y) and (mul Y, (shl X, C)).
|
||||
if (N0.getOpcode() == ISD::SHL &&
|
||||
if (N0.getOpcode() == ISD::SHL &&
|
||||
(isConstantSplatVector(N0.getOperand(1).getNode(), Val) ||
|
||||
isa<ConstantSDNode>(N0.getOperand(1))) &&
|
||||
N0.getNode()->hasOneUse()) {
|
||||
@ -2541,7 +2541,7 @@ SDValue DAGCombiner::visitAND(SDNode *N) {
|
||||
return SDValue(N, 0); // Return N so it doesn't get rechecked!
|
||||
}
|
||||
}
|
||||
// similarly fold (and (X (load ([non_ext|any_ext|zero_ext] V))), c) ->
|
||||
// similarly fold (and (X (load ([non_ext|any_ext|zero_ext] V))), c) ->
|
||||
// (X (load ([non_ext|zero_ext] V))) if 'and' only clears top bits which must
|
||||
// already be zero by virtue of the width of the base type of the load.
|
||||
//
|
||||
@ -4551,7 +4551,7 @@ SDValue DAGCombiner::visitSIGN_EXTEND(SDNode *N) {
|
||||
// sext(setcc) -> sext_in_reg(vsetcc) for vectors.
|
||||
// Only do this before legalize for now.
|
||||
if (VT.isVector() && !LegalOperations &&
|
||||
TLI.getBooleanContents(true) ==
|
||||
TLI.getBooleanContents(true) ==
|
||||
TargetLowering::ZeroOrNegativeOneBooleanContent) {
|
||||
EVT N0VT = N0.getOperand(0).getValueType();
|
||||
// On some architectures (such as SSE/NEON/etc) the SETCC result type is
|
||||
@ -5214,7 +5214,7 @@ SDValue DAGCombiner::ReduceLoadWidth(SDNode *N) {
|
||||
|
||||
// For the transform to be legal, the load must produce only two values
|
||||
// (the value loaded and the chain). Don't transform a pre-increment
|
||||
// load, for example, which produces an extra value. Otherwise the
|
||||
// load, for example, which produces an extra value. Otherwise the
|
||||
// transformation is not equivalent, and the downstream logic to replace
|
||||
// uses gets things wrong.
|
||||
if (LN0->getNumValues() > 2)
|
||||
@ -5944,9 +5944,9 @@ SDValue DAGCombiner::visitFADD(SDNode *N) {
|
||||
// We don't need test this condition for transformation like following, as
|
||||
// the DAG being transformed implies it is legal to take FP constant as
|
||||
// operand.
|
||||
//
|
||||
//
|
||||
// (fadd (fmul c, x), x) -> (fmul c+1, x)
|
||||
//
|
||||
//
|
||||
bool AllowNewFpConst = (Level < AfterLegalizeDAG);
|
||||
|
||||
// If allow, fold (fadd (fneg x), x) -> 0.0
|
||||
@ -6191,7 +6191,7 @@ SDValue DAGCombiner::visitFSUB(SDNode *N) {
|
||||
}
|
||||
|
||||
// fold (fsub (-(fmul, x, y)), z) -> (fma (fneg x), y, (fneg z))
|
||||
if (N0.getOpcode() == ISD::FNEG &&
|
||||
if (N0.getOpcode() == ISD::FNEG &&
|
||||
N0.getOperand(0).getOpcode() == ISD::FMUL &&
|
||||
N0->hasOneUse() && N0.getOperand(0).hasOneUse()) {
|
||||
SDValue N00 = N0.getOperand(0).getOperand(0);
|
||||
@ -6247,7 +6247,7 @@ SDValue DAGCombiner::visitFMUL(SDNode *N) {
|
||||
// fold (fmul (fneg X), (fneg Y)) -> (fmul X, Y)
|
||||
if (char LHSNeg = isNegatibleForFree(N0, LegalOperations, TLI,
|
||||
&DAG.getTarget().Options)) {
|
||||
if (char RHSNeg = isNegatibleForFree(N1, LegalOperations, TLI,
|
||||
if (char RHSNeg = isNegatibleForFree(N1, LegalOperations, TLI,
|
||||
&DAG.getTarget().Options)) {
|
||||
// Both can be negated for free, check to see if at least one is cheaper
|
||||
// negated.
|
||||
@ -6792,7 +6792,7 @@ SDValue DAGCombiner::visitFABS(SDNode *N) {
|
||||
|
||||
// Transform fabs(bitconvert(x)) -> bitconvert(x&~sign) to avoid loading
|
||||
// constant pool values.
|
||||
if (!TLI.isFAbsFree(VT) &&
|
||||
if (!TLI.isFAbsFree(VT) &&
|
||||
N0.getOpcode() == ISD::BITCAST && N0.getNode()->hasOneUse() &&
|
||||
N0.getOperand(0).getValueType().isInteger() &&
|
||||
!N0.getOperand(0).getValueType().isVector()) {
|
||||
@ -7217,7 +7217,7 @@ bool DAGCombiner::CombineToPreIndexedLoadStore(SDNode *N) {
|
||||
// x0 * offset0 + y0 * ptr0 = t0
|
||||
// knowing that
|
||||
// x1 * offset1 + y1 * ptr0 = t1 (the indexed load/store)
|
||||
//
|
||||
//
|
||||
// where x0, x1, y0 and y1 in {-1, 1} are given by the types of the
|
||||
// indexed load/store and the expresion that needs to be re-written.
|
||||
//
|
||||
@ -7339,7 +7339,7 @@ bool DAGCombiner::CombineToPostIndexedLoadStore(SDNode *N) {
|
||||
for (SDNode::use_iterator III = Use->use_begin(),
|
||||
EEE = Use->use_end(); III != EEE; ++III) {
|
||||
SDNode *UseUse = *III;
|
||||
if (!canFoldInAddressingMode(Use, UseUse, DAG, TLI))
|
||||
if (!canFoldInAddressingMode(Use, UseUse, DAG, TLI))
|
||||
RealUse = true;
|
||||
}
|
||||
|
||||
@ -8841,7 +8841,7 @@ SDValue DAGCombiner::visitEXTRACT_VECTOR_ELT(SDNode *N) {
|
||||
} else {
|
||||
Load = DAG.getLoad(LVT, SDLoc(N), LN0->getChain(), NewPtr,
|
||||
LN0->getPointerInfo().getWithOffset(PtrOff),
|
||||
LN0->isVolatile(), LN0->isNonTemporal(),
|
||||
LN0->isVolatile(), LN0->isNonTemporal(),
|
||||
LN0->isInvariant(), Align);
|
||||
Chain = Load.getValue(1);
|
||||
if (NVT.bitsLT(LVT))
|
||||
@ -9219,7 +9219,7 @@ SDValue DAGCombiner::visitCONCAT_VECTORS(SDNode *N) {
|
||||
// The extract index must be constant.
|
||||
if (!CS)
|
||||
return SDValue();
|
||||
|
||||
|
||||
// Check that we are reading from the identity index.
|
||||
if (CS->getZExtValue() != IdentityIndex)
|
||||
return SDValue();
|
||||
@ -9227,7 +9227,7 @@ SDValue DAGCombiner::visitCONCAT_VECTORS(SDNode *N) {
|
||||
|
||||
if (SingleSource.getNode())
|
||||
return SingleSource;
|
||||
|
||||
|
||||
return SDValue();
|
||||
}
|
||||
|
||||
|
@ -90,7 +90,7 @@ bool FastISel::LowerArguments() {
|
||||
// Fallback to SDISel argument lowering code to deal with sret pointer
|
||||
// parameter.
|
||||
return false;
|
||||
|
||||
|
||||
if (!FastLowerArguments())
|
||||
return false;
|
||||
|
||||
@ -598,7 +598,7 @@ bool FastISel::SelectCall(const User *I) {
|
||||
case Intrinsic::dbg_declare: {
|
||||
const DbgDeclareInst *DI = cast<DbgDeclareInst>(Call);
|
||||
DIVariable DIVar(DI->getVariable());
|
||||
assert((!DIVar || DIVar.isVariable()) &&
|
||||
assert((!DIVar || DIVar.isVariable()) &&
|
||||
"Variable in DbgDeclareInst should be either null or a DIVariable.");
|
||||
if (!DIVar ||
|
||||
!FuncInfo.MF->getMMI().hasDebugInfo()) {
|
||||
|
@ -610,7 +610,7 @@ PerformInsertVectorEltInMemory(SDValue Vec, SDValue Val, SDValue Idx,
|
||||
false, false, 0);
|
||||
// Load the updated vector.
|
||||
return DAG.getLoad(VT, dl, Ch, StackPtr,
|
||||
MachinePointerInfo::getFixedStack(SPFI), false, false,
|
||||
MachinePointerInfo::getFixedStack(SPFI), false, false,
|
||||
false, 0);
|
||||
}
|
||||
|
||||
@ -1493,7 +1493,7 @@ SDValue SelectionDAGLegalize::ExpandVectorBuildThroughStack(SDNode* Node) {
|
||||
StoreChain = DAG.getEntryNode();
|
||||
|
||||
// Result is a load from the stack slot.
|
||||
return DAG.getLoad(VT, dl, StoreChain, FIPtr, PtrInfo,
|
||||
return DAG.getLoad(VT, dl, StoreChain, FIPtr, PtrInfo,
|
||||
false, false, false, 0);
|
||||
}
|
||||
|
||||
@ -1614,12 +1614,12 @@ void SelectionDAGLegalize::LegalizeSetCCCondCode(EVT VT,
|
||||
unsigned Opc = 0;
|
||||
switch (CCCode) {
|
||||
default: llvm_unreachable("Don't know how to expand this condition!");
|
||||
case ISD::SETO:
|
||||
case ISD::SETO:
|
||||
assert(TLI.getCondCodeAction(ISD::SETOEQ, OpVT)
|
||||
== TargetLowering::Legal
|
||||
&& "If SETO is expanded, SETOEQ must be legal!");
|
||||
CC1 = ISD::SETOEQ; CC2 = ISD::SETOEQ; Opc = ISD::AND; break;
|
||||
case ISD::SETUO:
|
||||
case ISD::SETUO:
|
||||
assert(TLI.getCondCodeAction(ISD::SETUNE, OpVT)
|
||||
== TargetLowering::Legal
|
||||
&& "If SETUO is expanded, SETUNE must be legal!");
|
||||
@ -1629,12 +1629,12 @@ void SelectionDAGLegalize::LegalizeSetCCCondCode(EVT VT,
|
||||
case ISD::SETOGE:
|
||||
case ISD::SETOLT:
|
||||
case ISD::SETOLE:
|
||||
case ISD::SETONE:
|
||||
case ISD::SETUEQ:
|
||||
case ISD::SETUNE:
|
||||
case ISD::SETUGT:
|
||||
case ISD::SETUGE:
|
||||
case ISD::SETULT:
|
||||
case ISD::SETONE:
|
||||
case ISD::SETUEQ:
|
||||
case ISD::SETUNE:
|
||||
case ISD::SETUGT:
|
||||
case ISD::SETUGE:
|
||||
case ISD::SETULT:
|
||||
case ISD::SETULE:
|
||||
// If we are floating point, assign and break, otherwise fall through.
|
||||
if (!OpVT.isInteger()) {
|
||||
@ -1663,7 +1663,7 @@ void SelectionDAGLegalize::LegalizeSetCCCondCode(EVT VT,
|
||||
CC = SDValue();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
SDValue SetCC1, SetCC2;
|
||||
if (CCCode != ISD::SETO && CCCode != ISD::SETUO) {
|
||||
// If we aren't the ordered or unorder operation,
|
||||
@ -2136,7 +2136,7 @@ static bool canCombineSinCosLibcall(SDNode *Node, const TargetLowering &TLI,
|
||||
static bool useSinCos(SDNode *Node) {
|
||||
unsigned OtherOpcode = Node->getOpcode() == ISD::FSIN
|
||||
? ISD::FCOS : ISD::FSIN;
|
||||
|
||||
|
||||
SDValue Op0 = Node->getOperand(0);
|
||||
for (SDNode::use_iterator UI = Op0.getNode()->use_begin(),
|
||||
UE = Op0.getNode()->use_end(); UI != UE; ++UI) {
|
||||
@ -2164,25 +2164,25 @@ SelectionDAGLegalize::ExpandSinCosLibCall(SDNode *Node,
|
||||
case MVT::f128: LC = RTLIB::SINCOS_F128; break;
|
||||
case MVT::ppcf128: LC = RTLIB::SINCOS_PPCF128; break;
|
||||
}
|
||||
|
||||
|
||||
// The input chain to this libcall is the entry node of the function.
|
||||
// Legalizing the call will automatically add the previous call to the
|
||||
// dependence.
|
||||
SDValue InChain = DAG.getEntryNode();
|
||||
|
||||
|
||||
EVT RetVT = Node->getValueType(0);
|
||||
Type *RetTy = RetVT.getTypeForEVT(*DAG.getContext());
|
||||
|
||||
|
||||
TargetLowering::ArgListTy Args;
|
||||
TargetLowering::ArgListEntry Entry;
|
||||
|
||||
|
||||
// Pass the argument.
|
||||
Entry.Node = Node->getOperand(0);
|
||||
Entry.Ty = RetTy;
|
||||
Entry.isSExt = false;
|
||||
Entry.isZExt = false;
|
||||
Args.push_back(Entry);
|
||||
|
||||
|
||||
// Pass the return address of sin.
|
||||
SDValue SinPtr = DAG.CreateStackTemporary(RetVT);
|
||||
Entry.Node = SinPtr;
|
||||
@ -2190,7 +2190,7 @@ SelectionDAGLegalize::ExpandSinCosLibCall(SDNode *Node,
|
||||
Entry.isSExt = false;
|
||||
Entry.isZExt = false;
|
||||
Args.push_back(Entry);
|
||||
|
||||
|
||||
// Also pass the return address of the cos.
|
||||
SDValue CosPtr = DAG.CreateStackTemporary(RetVT);
|
||||
Entry.Node = CosPtr;
|
||||
@ -2198,10 +2198,10 @@ SelectionDAGLegalize::ExpandSinCosLibCall(SDNode *Node,
|
||||
Entry.isSExt = false;
|
||||
Entry.isZExt = false;
|
||||
Args.push_back(Entry);
|
||||
|
||||
|
||||
SDValue Callee = DAG.getExternalSymbol(TLI.getLibcallName(LC),
|
||||
TLI.getPointerTy());
|
||||
|
||||
|
||||
SDLoc dl(Node);
|
||||
TargetLowering::
|
||||
CallLoweringInfo CLI(InChain, Type::getVoidTy(*DAG.getContext()),
|
||||
@ -2940,7 +2940,7 @@ void SelectionDAGLegalize::ExpandNode(SDNode *Node) {
|
||||
unsigned Align = Node->getConstantOperandVal(3);
|
||||
|
||||
SDValue VAListLoad = DAG.getLoad(TLI.getPointerTy(), dl, Tmp1, Tmp2,
|
||||
MachinePointerInfo(V),
|
||||
MachinePointerInfo(V),
|
||||
false, false, false, 0);
|
||||
SDValue VAList = VAListLoad;
|
||||
|
||||
@ -3031,7 +3031,7 @@ void SelectionDAGLegalize::ExpandNode(SDNode *Node) {
|
||||
// cast operands to v8i32 and re-build the mask.
|
||||
|
||||
// Calculate new VT, the size of the new VT should be equal to original.
|
||||
EVT NewVT = EVT::getVectorVT(*DAG.getContext(), NewEltVT,
|
||||
EVT NewVT = EVT::getVectorVT(*DAG.getContext(), NewEltVT,
|
||||
VT.getSizeInBits()/NewEltVT.getSizeInBits());
|
||||
assert(NewVT.bitsEq(VT));
|
||||
|
||||
|
@ -503,7 +503,7 @@ SDValue DAGTypeLegalizer::SoftenFloatRes_LOAD(SDNode *N) {
|
||||
if (L->getExtensionType() == ISD::NON_EXTLOAD) {
|
||||
NewL = DAG.getLoad(L->getAddressingMode(), L->getExtensionType(),
|
||||
NVT, dl, L->getChain(), L->getBasePtr(), L->getOffset(),
|
||||
L->getPointerInfo(), NVT, L->isVolatile(),
|
||||
L->getPointerInfo(), NVT, L->isVolatile(),
|
||||
L->isNonTemporal(), false, L->getAlignment());
|
||||
// Legalized the chain result - switch anything that used the old chain to
|
||||
// use the new one.
|
||||
|
@ -2305,7 +2305,7 @@ void DAGTypeLegalizer::ExpandIntRes_XMULO(SDNode *N,
|
||||
Type *RetTy = VT.getTypeForEVT(*DAG.getContext());
|
||||
EVT PtrVT = TLI.getPointerTy();
|
||||
Type *PtrTy = PtrVT.getTypeForEVT(*DAG.getContext());
|
||||
|
||||
|
||||
// Replace this with a libcall that will check overflow.
|
||||
RTLIB::Libcall LC = RTLIB::UNKNOWN_LIBCALL;
|
||||
if (VT == MVT::i32)
|
||||
|
@ -161,7 +161,7 @@ void DAGTypeLegalizer::ExpandRes_BITCAST(SDNode *N, SDValue &Lo, SDValue &Hi) {
|
||||
false, false, 0);
|
||||
|
||||
// Load the first half from the stack slot.
|
||||
Lo = DAG.getLoad(NOutVT, dl, Store, StackPtr, PtrInfo,
|
||||
Lo = DAG.getLoad(NOutVT, dl, Store, StackPtr, PtrInfo,
|
||||
false, false, false, 0);
|
||||
|
||||
// Increment the pointer to the other half.
|
||||
|
@ -572,7 +572,7 @@ SDValue VectorLegalizer::ExpandStore(SDValue Op) {
|
||||
SDValue VectorLegalizer::ExpandSELECT(SDValue Op) {
|
||||
// Lower a select instruction where the condition is a scalar and the
|
||||
// operands are vectors. Lower this select to VSELECT and implement it
|
||||
// using XOR AND OR. The selector bit is broadcasted.
|
||||
// using XOR AND OR. The selector bit is broadcasted.
|
||||
EVT VT = Op.getValueType();
|
||||
SDLoc DL(Op);
|
||||
|
||||
|
@ -3646,7 +3646,7 @@ static SDValue getMemcpyLoadsAndStores(SelectionDAG &DAG, SDLoc dl,
|
||||
unsigned NewAlign = (unsigned) TLI.getDataLayout()->getABITypeAlignment(Ty);
|
||||
|
||||
// Don't promote to an alignment that would require dynamic stack
|
||||
// realignment.
|
||||
// realignment.
|
||||
const TargetRegisterInfo *TRI = MF.getTarget().getRegisterInfo();
|
||||
if (!TRI->needsStackRealignment(MF))
|
||||
while (NewAlign > Align &&
|
||||
|
@ -1092,7 +1092,7 @@ SDValue SelectionDAGBuilder::getValueImpl(const Value *V) {
|
||||
return DAG.getMergeValues(&Constants[0], Constants.size(),
|
||||
getCurSDLoc());
|
||||
}
|
||||
|
||||
|
||||
if (const ConstantDataSequential *CDS =
|
||||
dyn_cast<ConstantDataSequential>(C)) {
|
||||
SmallVector<SDValue, 4> Ops;
|
||||
@ -1622,7 +1622,7 @@ void SelectionDAGBuilder::visitSwitchCase(CaseBlock &CB,
|
||||
|
||||
SDValue CmpOp = getValue(CB.CmpMHS);
|
||||
EVT VT = CmpOp.getValueType();
|
||||
|
||||
|
||||
if (cast<ConstantInt>(CB.CmpLHS)->isMinValue(false)) {
|
||||
Cond = DAG.getSetCC(dl, MVT::i1, CmpOp, DAG.getConstant(High, VT),
|
||||
ISD::SETULE);
|
||||
@ -2070,7 +2070,7 @@ bool SelectionDAGBuilder::handleSmallSwitchRange(CaseRec& CR,
|
||||
CC = ISD::SETEQ;
|
||||
LHS = SV; RHS = I->High; MHS = NULL;
|
||||
} else {
|
||||
CC = ISD::SETCC_INVALID;
|
||||
CC = ISD::SETCC_INVALID;
|
||||
LHS = I->Low; MHS = SV; RHS = I->High;
|
||||
}
|
||||
|
||||
@ -2186,7 +2186,7 @@ bool SelectionDAGBuilder::handleJTSwitchCase(CaseRec &CR,
|
||||
for (CaseItr I = CR.Range.first, E = CR.Range.second; I != E; ++I) {
|
||||
DenseMap<MachineBasicBlock*, uint32_t>::iterator Itr =
|
||||
DestWeights.find(I->BB);
|
||||
if (Itr != DestWeights.end())
|
||||
if (Itr != DestWeights.end())
|
||||
Itr->second += I->ExtraWeight;
|
||||
else
|
||||
DestWeights[I->BB] = I->ExtraWeight;
|
||||
@ -2493,11 +2493,11 @@ bool SelectionDAGBuilder::handleBitTestsSwitchCase(CaseRec& CR,
|
||||
/// Clusterify - Transform simple list of Cases into list of CaseRange's
|
||||
size_t SelectionDAGBuilder::Clusterify(CaseVector& Cases,
|
||||
const SwitchInst& SI) {
|
||||
|
||||
|
||||
/// Use a shorter form of declaration, and also
|
||||
/// show the we want to use CRSBuilder as Clusterifier.
|
||||
typedef IntegersSubsetMapping<MachineBasicBlock> Clusterifier;
|
||||
|
||||
|
||||
Clusterifier TheClusterifier;
|
||||
|
||||
BranchProbabilityInfo *BPI = FuncInfo.BPI;
|
||||
@ -2507,12 +2507,12 @@ size_t SelectionDAGBuilder::Clusterify(CaseVector& Cases,
|
||||
const BasicBlock *SuccBB = i.getCaseSuccessor();
|
||||
MachineBasicBlock *SMBB = FuncInfo.MBBMap[SuccBB];
|
||||
|
||||
TheClusterifier.add(i.getCaseValueEx(), SMBB,
|
||||
TheClusterifier.add(i.getCaseValueEx(), SMBB,
|
||||
BPI ? BPI->getEdgeWeight(SI.getParent(), i.getSuccessorIndex()) : 0);
|
||||
}
|
||||
|
||||
|
||||
TheClusterifier.optimize();
|
||||
|
||||
|
||||
size_t numCmps = 0;
|
||||
for (Clusterifier::RangeIterator i = TheClusterifier.begin(),
|
||||
e = TheClusterifier.end(); i != e; ++i, ++numCmps) {
|
||||
@ -2524,7 +2524,7 @@ size_t SelectionDAGBuilder::Clusterify(CaseVector& Cases,
|
||||
// Changing it to APInt based is a pretty heavy for this commit.
|
||||
Cases.push_back(Case(C.first.getLow().toConstantInt(),
|
||||
C.first.getHigh().toConstantInt(), C.second, W));
|
||||
|
||||
|
||||
if (C.first.getLow() != C.first.getHigh())
|
||||
// A range counts double, since it requires two compares.
|
||||
++numCmps;
|
||||
@ -5099,7 +5099,7 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) {
|
||||
case Intrinsic::trap: {
|
||||
StringRef TrapFuncName = TM.Options.getTrapFunctionName();
|
||||
if (TrapFuncName.empty()) {
|
||||
ISD::NodeType Op = (Intrinsic == Intrinsic::trap) ?
|
||||
ISD::NodeType Op = (Intrinsic == Intrinsic::trap) ?
|
||||
ISD::TRAP : ISD::DEBUGTRAP;
|
||||
DAG.setRoot(DAG.getNode(Op, sdl,MVT::Other, getRoot()));
|
||||
return 0;
|
||||
@ -5427,7 +5427,7 @@ static SDValue getMemCmpLoad(const Value *PtrVal, MVT LoadVT,
|
||||
SDValue LoadVal = Builder.DAG.getLoad(LoadVT, Builder.getCurSDLoc(), Root,
|
||||
Ptr, MachinePointerInfo(PtrVal),
|
||||
false /*volatile*/,
|
||||
false /*nontemporal*/,
|
||||
false /*nontemporal*/,
|
||||
false /*isinvariant*/, 1 /* align=1 */);
|
||||
|
||||
if (!ConstantMemory)
|
||||
@ -6120,7 +6120,7 @@ void SelectionDAGBuilder::visitInlineAsm(ImmutableCallSite CS) {
|
||||
// we can use.
|
||||
if (OpInfo.AssignedRegs.Regs.empty()) {
|
||||
LLVMContext &Ctx = *DAG.getContext();
|
||||
Ctx.emitError(CS.getInstruction(),
|
||||
Ctx.emitError(CS.getInstruction(),
|
||||
"couldn't allocate output register for constraint '" +
|
||||
Twine(OpInfo.ConstraintCode) + "'");
|
||||
break;
|
||||
@ -6278,7 +6278,7 @@ void SelectionDAGBuilder::visitInlineAsm(ImmutableCallSite CS) {
|
||||
// Copy the input into the appropriate registers.
|
||||
if (OpInfo.AssignedRegs.Regs.empty()) {
|
||||
LLVMContext &Ctx = *DAG.getContext();
|
||||
Ctx.emitError(CS.getInstruction(),
|
||||
Ctx.emitError(CS.getInstruction(),
|
||||
"couldn't allocate input reg for constraint '" +
|
||||
Twine(OpInfo.ConstraintCode) + "'");
|
||||
break;
|
||||
@ -6819,7 +6819,7 @@ void SelectionDAGISel::LowerArguments(const Function &F) {
|
||||
|
||||
SDB->setValue(I, Res);
|
||||
if (!TM.Options.EnableFastISel && Res.getOpcode() == ISD::BUILD_PAIR) {
|
||||
if (LoadSDNode *LNode =
|
||||
if (LoadSDNode *LNode =
|
||||
dyn_cast<LoadSDNode>(Res.getOperand(0).getNode()))
|
||||
if (FrameIndexSDNode *FI =
|
||||
dyn_cast<FrameIndexSDNode>(LNode->getBasePtr().getNode()))
|
||||
|
@ -510,7 +510,7 @@ bool TargetLowering::SimplifyDemandedBits(SDValue Op,
|
||||
// into an AND, as we know the bits will be cleared.
|
||||
// e.g. (X | C1) ^ C2 --> (X | C1) & ~C2 iff (C1&C2) == C2
|
||||
// NB: it is okay if more bits are known than are requested
|
||||
if ((NewMask & (KnownZero|KnownOne)) == NewMask) { // all known on one side
|
||||
if ((NewMask & (KnownZero|KnownOne)) == NewMask) { // all known on one side
|
||||
if (KnownOne == KnownOne2) { // set bits are the same on both sides
|
||||
EVT VT = Op.getValueType();
|
||||
SDValue ANDC = TLO.DAG.getConstant(~KnownOne & NewMask, VT);
|
||||
|
Loading…
x
Reference in New Issue
Block a user