[PATCH] D32394: Add extra operand to CALLSEQ_START to keep frame part set up previously
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 1 10:58:46 PDT 2017
RKSimon added a comment.
A few initial style comments
================
Comment at: include/llvm/CodeGen/SelectionDAG.h:728
/// (to ensure it's not CSE'd). CALLSEQ_START does not have a useful SDLoc.
SDValue getCALLSEQ_START(SDValue Chain, SDValue Op, const SDLoc &DL) {
SDVTList VTs = getVTList(MVT::Other, MVT::Glue);
----------------
Can this be removed/deprecated?
================
Comment at: include/llvm/Target/TargetInstrInfo.h:185
+ if (isFrameSetup(I)) {
+ assert(I.getOperand(1).getImm() >= 0);
+ return getFrameSize(I) + I.getOperand(1).getImm();
----------------
assert message
================
Comment at: lib/Target/MSP430/MSP430InstrInfo.h:91
+ assert(isFrameInstr(I));
+ assert(I.getOperand(1).getImm() >= 0);
+ return I.getOperand(1).getImm();
----------------
Merge asserts and message
================
Comment at: lib/Target/PowerPC/PPCISelLowering.cpp:5088
+ int64_t FrameSize = cast<ConstantSDNode>(
+ CallSeqStart.getNode()->getOperand(1))->getSExtValue();
+ SDValue NewCallSeqStart = DAG.getCALLSEQ_START(MemcpyCall, FrameSize, 0,
----------------
getConstantOperand() ?
https://reviews.llvm.org/D32394
More information about the llvm-commits
mailing list