diff options
author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2010-02-02 16:36:34 -0800 |
---|---|---|
committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2010-02-02 17:03:41 -0800 |
commit | 62ca7b85ae1f7d914156a9b376d0520db85ba495 (patch) | |
tree | fe26a4622bf839f9f02cadb5a34322615f9d91c7 /src/gallium/docs | |
parent | 8580522b14b19e5087a6b72fb694630b962e29ba (diff) |
gallium/docs: Start turning notes into docs.
Yeah, what's that? You can read it? It's got, hmm, *readability*? Nice,
ain't it. :3
Diffstat (limited to 'src/gallium/docs')
-rw-r--r-- | src/gallium/docs/source/tgsi.rst | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst index 34d80da1d3..7e6dce9953 100644 --- a/src/gallium/docs/source/tgsi.rst +++ b/src/gallium/docs/source/tgsi.rst @@ -6,6 +6,19 @@ for describing shaders. Since Gallium is inherently shaderful, shaders are an important part of the API. TGSI is the only intermediate representation used by all drivers. +Basics +------ + +All TGSI instructions, known as *opcodes*, operate on arbitrary-precision +floating-point four-component vectors. An opcode may have up to one +destination register, known as *dst*, and between zero and three source +registers, called *src0* through *src2*, or simply *src* if there is only +one. + +Some instructions, like :opcode:`I2F`, permit re-interpretation of vector +components as integers. Other instructions permit using registers as +two-component vectors with double precision; see :ref:`Double Opcodes`. + Instruction Set --------------- @@ -1111,6 +1124,8 @@ ps_2_x TBD +.. _doubleopcodes: + Double Opcodes ^^^^^^^^^^^^^^^ @@ -1269,20 +1284,8 @@ Keywords discard Discard fragment. - dst First destination register. - - dst0 First destination register. - pc Program counter. - src First source register. - - src0 First source register. - - src1 Second source register. - - src2 Third source register. - target Label of target instruction. |