summaryrefslogtreecommitdiff
path: root/docs/CodeGenerator.rst
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2014-09-02 19:18:52 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2014-09-02 19:18:52 +0000
commitf9139d78f55e37267faa09b8bebf3b648880fd0d (patch)
tree7011f22a68b7035e52ecf63df2244d7080e81fa0 /docs/CodeGenerator.rst
parentf471c483e66f36b1fec960d4df0e8ba3c28dc9d1 (diff)
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216934 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/CodeGenerator.rst')
-rw-r--r--docs/CodeGenerator.rst4
1 files changed, 3 insertions, 1 deletions
diff --git a/docs/CodeGenerator.rst b/docs/CodeGenerator.rst
index 5736e4378d7..facedc32a4f 100644
--- a/docs/CodeGenerator.rst
+++ b/docs/CodeGenerator.rst
@@ -769,7 +769,9 @@ provide an ordering between nodes that have side effects (such as loads, stores,
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