This adds support for shadow cubemap texture sampling instructions. This is required for GL 3.0. Signed-off-by: Dave Airlie <airlied@redhat.com>tags/mesa-8.0-rc1
| &r[0], &r[1], &r[2], &r[3]); /* outputs */ | &r[0], &r[1], &r[2], &r[3]); /* outputs */ | ||||
| break; | break; | ||||
| case TGSI_TEXTURE_SHADOW2D_ARRAY: | case TGSI_TEXTURE_SHADOW2D_ARRAY: | ||||
| case TGSI_TEXTURE_SHADOWCUBE: | |||||
| FETCH(&r[0], 0, CHAN_X); | FETCH(&r[0], 0, CHAN_X); | ||||
| FETCH(&r[1], 0, CHAN_Y); | FETCH(&r[1], 0, CHAN_Y); | ||||
| FETCH(&r[2], 0, CHAN_Z); | FETCH(&r[2], 0, CHAN_Z); | ||||
| break; | break; | ||||
| case TGSI_TEXTURE_SHADOW2D_ARRAY: | case TGSI_TEXTURE_SHADOW2D_ARRAY: | ||||
| case TGSI_TEXTURE_SHADOWCUBE: | |||||
| FETCH(&r[0], 0, CHAN_X); | FETCH(&r[0], 0, CHAN_X); | ||||
| FETCH(&r[1], 0, CHAN_Y); | FETCH(&r[1], 0, CHAN_Y); | ||||
| FETCH(&r[2], 0, CHAN_Z); | FETCH(&r[2], 0, CHAN_Z); |
| "2DARRAY", | "2DARRAY", | ||||
| "SHADOW1DARRAY", | "SHADOW1DARRAY", | ||||
| "SHADOW2DARRAY", | "SHADOW2DARRAY", | ||||
| "SHADOWCUBE" | |||||
| }; | }; | ||||
| const char *tgsi_property_names[TGSI_PROPERTY_COUNT] = | const char *tgsi_property_names[TGSI_PROPERTY_COUNT] = |
| read_mask = TGSI_WRITEMASK_XYZ; | read_mask = TGSI_WRITEMASK_XYZ; | ||||
| break; | break; | ||||
| case TGSI_TEXTURE_SHADOW2D_ARRAY: | case TGSI_TEXTURE_SHADOW2D_ARRAY: | ||||
| case TGSI_TEXTURE_SHADOWCUBE: | |||||
| read_mask = TGSI_WRITEMASK_XYZW; | read_mask = TGSI_WRITEMASK_XYZW; | ||||
| break; | break; | ||||
| default: | default: |
| #define TGSI_TEXTURE_2D_ARRAY 10 | #define TGSI_TEXTURE_2D_ARRAY 10 | ||||
| #define TGSI_TEXTURE_SHADOW1D_ARRAY 11 | #define TGSI_TEXTURE_SHADOW1D_ARRAY 11 | ||||
| #define TGSI_TEXTURE_SHADOW2D_ARRAY 12 | #define TGSI_TEXTURE_SHADOW2D_ARRAY 12 | ||||
| #define TGSI_TEXTURE_COUNT 13 | |||||
| #define TGSI_TEXTURE_SHADOWCUBE 13 | |||||
| #define TGSI_TEXTURE_COUNT 14 | |||||
| struct tgsi_instruction_texture | struct tgsi_instruction_texture | ||||
| { | { |