[llvm-dev] Selection DAG adding node question

SiliconValleyEmployee - via llvm-dev llvm-dev at lists.llvm.org
Wed Oct 12 09:31:33 PDT 2016


I am having trouble adding a node to the selection DAG (e.g. during combine)

E.g. node1 -> use1, use2

Now if you add a node2, with node1 -> node2 with node2 number of output
values equal node1 number of output values, then combine as well as e.g.
promotion pass with replace all of node1's uses with node2, leaving node1
dead. While this is kind of expected, does this mean

a) always create new node (can you clone node, e.g. node1 above)?
b) is this something that selection DAG is not intended for at all?
c) sometimes it is not straight forward to create a new load, e.g. for
loads, as DAG.getLoad will return "old" node if identical => a) can I clone
a node?

Thanks! Hendrik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161012/d69073c4/attachment.html>


More information about the llvm-dev mailing list