diff options
author | Hans de Goede <hdegoede@redhat.com> | 2016-03-31 08:53:40 +0200 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2016-04-27 16:11:48 +0200 |
commit | b5e7907f3089d72109610769f083e80e452b0ff2 (patch) | |
tree | bb70a104242451f5b148cb56eead9a962e3f0ca2 /src/gallium/docs | |
parent | 90f45357abd4f0007aa3f047464b43188fed4ef1 (diff) | |
download | external_mesa3d-b5e7907f3089d72109610769f083e80e452b0ff2.zip external_mesa3d-b5e7907f3089d72109610769f083e80e452b0ff2.tar.gz external_mesa3d-b5e7907f3089d72109610769f083e80e452b0ff2.tar.bz2 |
nouveau: codegen: LOAD: Take src swizzle into account
The llvm TGSI backend uses pointers in registers and does things
like:
LOAD TEMP[0].y, MEMORY[0], TEMP[0]
Expecting the data at address TEMP[0].x to get loaded to
TEMP[0].y. But this will cause the data at TEMP[0].x + 4 to be
loaded instead.
This commit adds support for a swizzle suffix for the 1st source
operand, which allows using:
LOAD TEMP[0].y, MEMORY[0].xxxx, TEMP[0]
And actually getting the desired behavior
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Diffstat (limited to 'src/gallium/docs')
-rw-r--r-- | src/gallium/docs/source/tgsi.rst | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst index 85c302f..4315707 100644 --- a/src/gallium/docs/source/tgsi.rst +++ b/src/gallium/docs/source/tgsi.rst @@ -2288,6 +2288,9 @@ Resource Access Opcodes texture arrays and 2D textures. address.w is always ignored. + A swizzle suffix may be added to the resource argument + this will cause the resource data to be swizzled accordingly. + .. opcode:: STORE - Write data to a shader resource Syntax: ``STORE resource, address, src`` |