search for: rdmsrnode

Displaying 2 results from an estimated 2 matches for "rdmsrnode".

2014 Feb 08
2
[LLVMdev] selecting ISD node - help
...= X86::RAX; } else { idReg = X86::ECX; resultReg = X86::EAX; } idRegValue = CurDAG->getRegister(idReg, resultType); SmallVector<SDValue, 8> Ops; SDValue setIdNode = CurDAG->getCopyToReg(CurDAG->getEntryNode(), dl, idRegValue, id, SDValue()); SDValue rdmsrNode = SDValue(CurDAG->getMachineNode(X86::RDMSR, dl, MVT::Other, setIdNode), 0); SDValue resultNode = CurDAG->getCopyFromReg(rdmsrNode, dl, resultReg, resultType); Ops.push_back(resultNode); Ops.push_back(rdmsrNode); Ops.push_back(setIdNode); SDValue ResultValue = CurDAG->getN...
2014 Feb 08
2
[LLVMdev] selecting ISD node - help
...64RegClass); } else { idReg = X86::ECX; resultReg = MF.addLiveIn(X86::EAX, &X86::GR32RegClass); } idRegValue = CurDAG->getRegister(idReg, resultType); SDValue setIdNode = CurDAG->getCopyToReg(CurDAG->getEntryNode(), dl, idRegValue, id, SDValue()); SDValue rdmsrNode = SDValue(CurDAG->getMachineNode(X86::RDMSR, dl, MVT::Glue, setIdNode.getValue(1)), 0); SDValue resultNode = CurDAG->getCopyFromReg(CurDAG->getEntryNode(), dl, X86::EAX, MVT::i32, rdmsrNode); return resultNode.getNode(); but I've a couple of problems: getCopyToReg doesn'...