diff options
author | Bryan Cain <[email protected]> | 2012-01-07 10:43:04 -0600 |
---|---|---|
committer | Bryan Cain <[email protected]> | 2012-01-07 15:37:32 -0600 |
commit | 4c0f1fb5ec6117f07c9c911d7f74ff0d18c51d98 (patch) | |
tree | 4cdf083dc38f0938c6e879358160700398b4171e /src/gallium/auxiliary/tgsi | |
parent | 291e374ea5528abd084bf0e9996a81b2f2e65e10 (diff) |
gallium: add an IABS opcode to TGSI
This is a necessary operation that is missing from TGSI.
Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/tgsi')
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_exec.c | 4 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_info.c | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c index 7ea8511c390..3e2b899d40e 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_exec.c +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c @@ -4193,6 +4193,10 @@ exec_instruction( exec_vector_trinary(mach, inst, micro_ucmp, TGSI_EXEC_DATA_UINT, TGSI_EXEC_DATA_UINT); break; + case TGSI_OPCODE_IABS: + exec_vector_unary(mach, inst, micro_iabs, TGSI_EXEC_DATA_INT, TGSI_EXEC_DATA_INT); + break; + default: assert( 0 ); } diff --git a/src/gallium/auxiliary/tgsi/tgsi_info.c b/src/gallium/auxiliary/tgsi/tgsi_info.c index 6cd580a7fe2..c9acdb9fbf8 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_info.c +++ b/src/gallium/auxiliary/tgsi/tgsi_info.c @@ -192,6 +192,7 @@ static const struct tgsi_opcode_info opcode_info[TGSI_OPCODE_LAST] = { 1, 1, 0, 0, 0, 0, "UARL", TGSI_OPCODE_UARL }, { 1, 3, 0, 0, 0, 0, "UCMP", TGSI_OPCODE_UCMP }, + { 1, 1, 0, 0, 0, 0, "IABS", TGSI_OPCODE_IABS }, }; const struct tgsi_opcode_info * |