I've changed the semantics of MERGE_VALUES a bit. It's now allowed to live until...
authorEvan Cheng <evan.cheng@apple.com>
Thu, 30 Jul 2009 08:44:08 +0000 (08:44 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 30 Jul 2009 08:44:08 +0000 (08:44 +0000)
This is currently used by X86 to handle atomic_load_add when the output of the node is not used. I believe there is a better solution. But I find MERGE_VALUES useful for selecting multi-output node when the dead output can be selected as a IMPLICIT_DEF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77583 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/SelectionDAGNodes.h

index 62c3769ebe6124438576d010d78936f2b1c0958a..6dc55fff84195cec757b75b9b12689f63a4511fe 100644 (file)
@@ -225,9 +225,9 @@ namespace ISD {
 
     // MERGE_VALUES - This node takes multiple discrete operands and returns
     // them all as its individual results.  This nodes has exactly the same
-    // number of inputs and outputs, and is only valid before legalization.
-    // This node is useful for some pieces of the code generator that want to
-    // think about a single node with multiple results, not multiple nodes.
+    // number of inputs and outputs. This node is useful for some pieces of the
+    // code generator that want to think about a single node with multiple
+    // results, not multiple nodes.
     MERGE_VALUES,
 
     // Simple integer binary arithmetic operators.