[llvm] r216934 - Add note to documentation about machine node chains.

Matt Arsenault Matthew.Arsenault at amd.com
Tue Sep 2 12:18:53 PDT 2014

Author: arsenm
Date: Tue Sep  2 14:18:52 2014
New Revision: 216934

URL: http://llvm.org/viewvc/llvm-project?rev=216934&view=rev
Add note to documentation about machine node chains.

I've been assuming chain operands were always the first operand,
since the documentation says this. I was confused about why they
were missing after instruction selection. Apparently the convention
changes to using the last operand for MachineSDNodes and I've never
noticed before.


Modified: llvm/trunk/docs/CodeGenerator.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CodeGenerator.rst?rev=216934&r1=216933&r2=216934&view=diff
--- llvm/trunk/docs/CodeGenerator.rst (original)
+++ llvm/trunk/docs/CodeGenerator.rst Tue Sep  2 14:18:52 2014
@@ -769,7 +769,9 @@ provide an ordering between nodes that h
 calls, returns, etc).  All nodes that have side effects should take a token
 chain as input and produce a new one as output.  By convention, token chain
 inputs are always operand #0, and chain results are always the last value
-produced by an operation.
+produced by an operation. However, after instruction selection, the
+machine nodes have their chain after the instruction's operands, and
+may be followed by glue nodes.
 A SelectionDAG has designated "Entry" and "Root" nodes.  The Entry node is
 always a marker node with an Opcode of ``ISD::EntryToken``.  The Root node is

More information about the llvm-commits mailing list