diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-09-02 19:18:52 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-09-02 19:18:52 +0000 |
| commit | 907e64b4362355386a1669e0d8fdba6879b31d29 (patch) | |
| tree | 4261a1af86e786612c2080cb10c7c3edcde4ac6b /llvm/docs | |
| parent | d1649db2fcc4fa3b9f9d6d1142517b361321522d (diff) | |
| download | bcm5719-llvm-907e64b4362355386a1669e0d8fdba6879b31d29.tar.gz bcm5719-llvm-907e64b4362355386a1669e0d8fdba6879b31d29.zip | |
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.
llvm-svn: 216934
Diffstat (limited to 'llvm/docs')
| -rw-r--r-- | llvm/docs/CodeGenerator.rst | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/docs/CodeGenerator.rst b/llvm/docs/CodeGenerator.rst index 5736e4378d7..facedc32a4f 100644 --- a/llvm/docs/CodeGenerator.rst +++ b/llvm/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 |

