search for: customlowernode

Displaying 12 results from an estimated 12 matches for "customlowernode".

2016 Jan 22
3
Return value from TargetLowering::LowerOperation?
...ring::LowerOperationWrapper, it seems like it is assumed only the first two of the above cases can happen because there we do: SDValue Res = LowerOperation(SDValue(N, 0), DAG); if (Res.getNode()) Results.push_back(Res); So, when LowerOperationWrapper is called from DAGTypeLegalizer::CustomLowerNode, and my target's LowerOperation returns the same SDValue as it was called on since we don't want to do anything special with this particular SDValue, then we get an assert "Potential legalization loop!" when DAGTypeLegalizer::CustomLowerNode tries to replace the SDValue with i...
2016 Jan 25
1
Return value from TargetLowering::LowerOperation?
...t two of the above cases can >> happen because there we do: >> >> SDValue Res = LowerOperation(SDValue(N, 0), DAG); >> if (Res.getNode()) >> Results.push_back(Res); >> >> So, when LowerOperationWrapper is called from >> DAGTypeLegalizer::CustomLowerNode, and my target's LowerOperation >> returns the same SDValue as it was called on since we don't want to do >> anything special with this particular SDValue, then we get an assert >> "Potential legalization loop!" when DAGTypeLegalizer::CustomLowerNode >> tri...
2012 Sep 02
2
[LLVMdev] Question regarding ReplaceValueWith and ReplaceNodeResults
Hi Duncan, > as well as what Eli said, ReplaceNodeResults requires (IIRC) the new node to > have the same type as the old node, which doesn't seem to be the case > here. Are you sure ? I see ReplaceNodeResults being called from functions such as CustomWidenLowerNode and CustomLowerNode. In the former, we are clearly expecting a change in type, aren't we? Even in the latter, ReplaceNodeResults is called only when the type of the result is not legal. Otherwise, the latter calls LowerOperationWrapper. Thanks, Pranav Qualcomm Innovation Center, Inc. is a member of the Code Auro...
2012 Sep 02
0
[LLVMdev] Question regarding ReplaceValueWith and ReplaceNodeResults
...gt; as well as what Eli said, ReplaceNodeResults requires (IIRC) the new node > to >> have the same type as the old node, which doesn't seem to be the case >> here. > > Are you sure ? I see ReplaceNodeResults being called from functions such as > CustomWidenLowerNode and CustomLowerNode. > In the former, we are clearly expecting a change in type, aren't we? yes, but in CustomLowerNode the type shouldn't change. It is bad that the same method (ReplaceNodeResults) is being called with different requirements. CustomLowerNode was the original method, and whoever added Cus...
2010 Sep 22
2
[LLVMdev] r114523 (convert the last 4 X86ISD...) breaks clang
...lvm::SDValue, llvm::SelectionDAG&) const + 1017 10 clang 0x0000000100978b9b llvm::TargetLowering::LowerOperationWrapper(llvm::SDNode*, llvm::SmallVectorImpl<llvm::SDValue>&, llvm::SelectionDAG&) const + 27 11 clang 0x00000001008d63e4 llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, bool) + 164 12 clang 0x00000001008cd718 llvm::DAGTypeLegalizer::ExpandIntegerOperand(llvm::SDNode*, unsigned int) + 280 13 clang 0x00000001008d290f llvm::DAGTypeLegalizer::run() + 991 14 clang 0x00000001008d87b8 llvm::SelectionDAG::Legal...
2010 Sep 22
0
[LLVMdev] r114523 (convert the last 4 X86ISD...) breaks clang
...ue, llvm::SelectionDAG&) const + 1017 > 10 clang 0x0000000100978b9b llvm::TargetLowering::LowerOperationWrapper(llvm::SDNode*, llvm::SmallVectorImpl<llvm::SDValue>&, llvm::SelectionDAG&) const + 27 > 11 clang 0x00000001008d63e4 llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, bool) + 164 > 12 clang 0x00000001008cd718 llvm::DAGTypeLegalizer::ExpandIntegerOperand(llvm::SDNode*, unsigned int) + 280 > 13 clang 0x00000001008d290f llvm::DAGTypeLegalizer::run() + 991 > 14 clang 0x00000001008d87b8 llvm::Sele...
2017 Sep 20
0
Updating LLVM Tests for Patch
...77f) #5 0x00007f1b2c3ef37a abort (/lib/x86_64-linux-gnu/libc.so.6+0x3737a) #6 0x00007f1b2d2b012a (/home/dev/llvm/build/bin/../lib/libLLVMSupport.so.6+0x9612a) #7 0x00007f1b359326ec (/home/dev/llvm/build/bin/../lib/libLLVMHexagonCodeGen.so.6+0x1176ec) #8 0x00007f1b2d6a37a6 llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, bool) (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x1247a6) #9 0x00007f1b2d6be0d9 llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*, unsigned int) (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x13f0d9) #10 0x00007f1b2d69f156 llvm::DAGTyp...
2017 Sep 20
3
Updating LLVM Tests for Patch
...abort (/lib/x86_64-linux-gnu/libc.so.6+0x3737a) > #6 0x00007f1b2d2b012a > (/home/dev/llvm/build/bin/../lib/libLLVMSupport.so.6+0x9612a) > #7 0x00007f1b359326ec > (/home/dev/llvm/build/bin/../lib/libLLVMHexagonCodeGen.so.6+0x1176ec) > #8 0x00007f1b2d6a37a6 > llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, bool) > (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x1247a6) > #9 0x00007f1b2d6be0d9 > llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*, unsigned int) > (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x13f0d9) > #10 0x00007f1...
2017 Sep 22
0
[Hexagon] Type Legalization
...-gnu/libc.so.6+0x3737a) > #6 0x00007f1b2d2b012a > (/home/dev/llvm/build/bin/../lib/libLLVMSupport.so.6+0x9612a) > #7 0x00007f1b359326ec > (/home/dev/llvm/build/bin/../lib/libLLVMHexagonCodeGen.so.6+0x1176ec) > #8 0x00007f1b2d6a37a6 > llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, bool) > (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x1247a6) > #9 0x00007f1b2d6be0d9 > llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*, unsigned int) > (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x13f0d9) &g...
2017 Sep 22
2
[Hexagon] Type Legalization
...#6 0x00007f1b2d2b012a > > (/home/dev/llvm/build/bin/../lib/libLLVMSupport.so.6+0x9612a) > > #7 0x00007f1b359326ec > > (/home/dev/llvm/build/bin/../lib/libLLVMHexagonCodeGen.so. > 6+0x1176ec) > > #8 0x00007f1b2d6a37a6 > > llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, llvm::EVT, > bool) > > (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x1247a6) > > #9 0x00007f1b2d6be0d9 > > llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*, unsigned > int) > > (/home/dev/llvm/build/bin/../lib/libLLVM...
2017 Sep 22
0
[Hexagon] Type Legalization
...>     (/home/dev/llvm/build/bin/../lib/libLLVMSupport.so.6+0x9612a) > >     #7 0x00007f1b359326ec > > >  (/home/dev/llvm/build/bin/../lib/libLLVMHexagonCodeGen.so.6+0x1176ec) > >     #8 0x00007f1b2d6a37a6 > >     llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*, > llvm::EVT, bool) > > >  (/home/dev/llvm/build/bin/../lib/libLLVMSelectionDAG.so.6+0x1247a6) > >     #9 0x00007f1b2d6be0d9 > >     llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*, > unsigned int) > > &gt...
2017 Sep 19
5
How to add optimizations to InstCombine correctly?
For the tests that are changing, you should see if those changes are improvements, regressions, or neutral. This is unfortunately not always obvious for x86 asm, so feel free to just post those diffs in an updated version of the patch at D37896. If the test files have auto-generated assertions (look for this string on the first line of the test file: "NOTE: Assertions have been autogenerated