summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h
diff options
context:
space:
mode:
authorTom Stellard <tstellar@gmail.com>2010-10-05 22:53:40 -0700
committerTom Stellard <tstellar@gmail.com>2010-10-18 20:51:05 -0700
commit75734d0a37c7cb24fb97c9ba0166f9f2d2da60f8 (patch)
tree8c616f3838f1927f0b14adf532f4cabad06e83cd /src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h
parentad683577b202750ffac917392d50fb7202d5bf2a (diff)
r300/compiler: Fix incorrect assumption
It is possible for a single pair instruction arg to select from both an RGB and an Alpha source.
Diffstat (limited to 'src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h')
-rw-r--r--src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h
index 01cdb15424..54d44a2098 100644
--- a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h
+++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h
@@ -55,6 +55,10 @@ struct radeon_compiler;
*/
#define RC_PAIR_PRESUB_SRC 3
+#define RC_PAIR_SOURCE_NONE 0x0
+#define RC_PAIR_SOURCE_RGB 0x1
+#define RC_PAIR_SOURCE_ALPHA 0x2
+
struct rc_pair_instruction_source {
unsigned int Used:1;
unsigned int File:3;
@@ -93,12 +97,6 @@ struct rc_pair_instruction {
typedef void (*rc_pair_foreach_src_fn)
(void *, struct rc_pair_instruction_source *);
-typedef enum {
- RC_PAIR_SOURCE_NONE = 0,
- RC_PAIR_SOURCE_RGB,
- RC_PAIR_SOURCE_ALPHA
-} rc_pair_source_type;
-
/**
* General helper functions for dealing with the paired instruction format.
*/
@@ -117,10 +115,9 @@ void rc_pair_foreach_source_that_rgb_reads(
void * data,
rc_pair_foreach_src_fn cb);
-rc_pair_source_type rc_source_type_that_arg_reads(
+unsigned int rc_source_type_that_arg_reads(
unsigned int source,
- unsigned int swizzle,
- unsigned int channels);
+ unsigned int swizzle);
/*@}*/