diff options
author | Eric Anholt <eric@anholt.net> | 2006-08-29 15:29:31 -0700 |
---|---|---|
committer | Damien Lespiau <damien.lespiau@intel.com> | 2013-03-04 15:54:23 +0000 |
commit | 2dac0a19a438d27b03e901cc70ef0a9a27039154 (patch) | |
tree | 32d07b56157671bbb2aac522a422917c235d6bc6 /assembler/gen4asm.h | |
parent | de1a889fe3554df47a6a751855ebae0cd1517e2f (diff) |
Add support for destination writemasks.
This involved changing dest operands to have their own structure like src
operands, as the destination writemask (which is align16-only) shares space
with register numbers in align1 mode.
Diffstat (limited to 'assembler/gen4asm.h')
-rw-r--r-- | assembler/gen4asm.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/assembler/gen4asm.h b/assembler/gen4asm.h index eb06e02f..2ac54b9c 100644 --- a/assembler/gen4asm.h +++ b/assembler/gen4asm.h @@ -39,6 +39,21 @@ typedef float GLfloat; void yyerror (char *msg); /** + * This structure is the internal representation of destination operands in the + * parser. + */ +struct dst_operand { + int reg_file, reg_nr, subreg_nr, reg_type; + + int writemask_set; + int writemask; + + int horiz_stride; + int address_mode; /* 0 if direct, 1 if register-indirect */ + int indirect_offset; +}; + +/** * This structure is the internal representation of source operands in the * parser. */ |