Displaying 5 results from an estimated 5 matches for "lovt".
Did you mean:
lost
2009 Dec 10
2
[LLVMdev] SplitVecRes with SIGN_EXTEND_INREG unsupported
...help, does this look correct to you?
void DAGTypeLegalizer::SplitVecRes_SIGN_EXTEND_INREG(SDNode *N, SDValue &Lo,
SDValue &Hi) {
SDValue LHSLo, LHSHi;
GetSplitVector(N->getOperand(0), LHSLo, LHSHi);
DebugLoc dl = N->getDebugLoc();
EVT LoVT, HiVT;
GetSplitDestVTs(N->getValueType(1), LoVT, HiVT);
Lo = DAG.getNode(N->getOpcode(), dl, LHSLo.getValueType(), LHSLo, DAG.getValueType(LoVT));
Hi = DAG.getNode(N->getOpcode(), dl, LHSHi.getValueType(), LHSHi, DAG.getValueType(HiVT));
}
Thanks,
Micah
> -----Original Message...
2009 Dec 10
0
[LLVMdev] SplitVecRes with SIGN_EXTEND_INREG unsupported
...t;
> void DAGTypeLegalizer::SplitVecRes_SIGN_EXTEND_INREG(SDNode *N, SDValue
> &Lo,
> SDValue &Hi) {
> SDValue LHSLo, LHSHi;
> GetSplitVector(N->getOperand(0), LHSLo, LHSHi);
> DebugLoc dl = N->getDebugLoc();
> EVT LoVT, HiVT;
> GetSplitDestVTs(N->getValueType(1), LoVT, HiVT);
>
> Lo = DAG.getNode(N->getOpcode(), dl, LHSLo.getValueType(), LHSLo,
> DAG.getValueType(LoVT));
> Hi = DAG.getNode(N->getOpcode(), dl, LHSHi.getValueType(), LHSHi,
> DAG.getValueType(HiVT));
> }
>
&g...
2009 Dec 10
0
[LLVMdev] SplitVecRes with SIGN_EXTEND_INREG unsupported
Eli,
I don't see how this helps with the splitting of the Other node as it isn't the Dest that is the problem, but the second source value. Any place in the code that I can look at on how to split a VTSDNode?
Thanks,
Micah
> -----Original Message-----
> From: Eli Friedman [mailto:eli.friedman at gmail.com]
> Sent: Thursday, December 10, 2009 1:25 PM
> To: Villmow, Micah
2009 Dec 10
2
[LLVMdev] SplitVecRes with SIGN_EXTEND_INREG unsupported
On Thu, Dec 10, 2009 at 12:46 PM, Villmow, Micah <Micah.Villmow at amd.com> wrote:
> Eli,
> I have a simple SplitVecRes function that implements what you mentioned, splitting the LHS just as in BinaryOp, but passing through the RHS. The problem is that the second operand is MVT::Other, but when casted to an VTSDNode reveals that it is a vector length of the same size as the LHS
2009 Dec 11
1
[LLVMdev] SplitVecRes with SIGN_EXTEND_INREG unsupported
...itVecRes_SIGN_EXTEND_INREG(SDNode *N,
> SDValue
> > &Lo,
> > SDValue &Hi) {
> > SDValue LHSLo, LHSHi;
> > GetSplitVector(N->getOperand(0), LHSLo, LHSHi);
> > DebugLoc dl = N->getDebugLoc();
> > EVT LoVT, HiVT;
> > GetSplitDestVTs(N->getValueType(1), LoVT, HiVT);
> >
> > Lo = DAG.getNode(N->getOpcode(), dl, LHSLo.getValueType(), LHSLo,
> > DAG.getValueType(LoVT));
> > Hi = DAG.getNode(N->getOpcode(), dl, LHSHi.getValueType(), LHSHi,
> > DAG.getValu...