mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 11:28:05 +02:00
r300g: Cleanup old static shader state.
This commit is contained in:
parent
b2b239691d
commit
40247d87d2
8 changed files with 4 additions and 361 deletions
|
|
@ -4,8 +4,6 @@ include $(TOP)/configs/current
|
|||
LIBNAME = r300
|
||||
|
||||
C_SOURCES = \
|
||||
r3xx_fs.c \
|
||||
r5xx_fs.c \
|
||||
r300_chipset.c \
|
||||
r300_clear.c \
|
||||
r300_context.c \
|
||||
|
|
|
|||
|
|
@ -130,14 +130,9 @@ void r300_translate_fragment_shader(struct r300_context* r300,
|
|||
/* Invoke the compiler */
|
||||
r3xx_compile_fragment_program(&compiler);
|
||||
if (compiler.Base.Error) {
|
||||
/* Todo: Fallback to software rendering gracefully? */
|
||||
fprintf(stderr, "r300 FP: Compiler error: %s\n", compiler.Base.ErrorMsg);
|
||||
|
||||
if (compiler.is_r500) {
|
||||
memcpy(compiler.code, &r5xx_passthrough_fragment_shader, sizeof(r5xx_passthrough_fragment_shader));
|
||||
} else {
|
||||
memcpy(compiler.code, &r3xx_passthrough_fragment_shader, sizeof(r3xx_passthrough_fragment_shader));
|
||||
}
|
||||
/* XXX failover maybe? */
|
||||
DBG(r300, DBG_FP, "r300: Error compiling fragment program: %s\n",
|
||||
compiler.Base.ErrorMsg);
|
||||
}
|
||||
|
||||
/* And, finally... */
|
||||
|
|
|
|||
|
|
@ -28,8 +28,7 @@
|
|||
|
||||
#include "tgsi/tgsi_scan.h"
|
||||
|
||||
#include "r3xx_fs.h"
|
||||
#include "r5xx_fs.h"
|
||||
#include "radeon_code.h"
|
||||
|
||||
struct r300_fragment_shader {
|
||||
/* Parent class */
|
||||
|
|
|
|||
|
|
@ -146,89 +146,3 @@ void r300_translate_vertex_shader(struct r300_context* r300,
|
|||
rc_destroy(&compiler.Base);
|
||||
vs->translated = TRUE;
|
||||
}
|
||||
|
||||
|
||||
/* XXX get these to r300_reg */
|
||||
#define R300_PVS_DST_OPCODE(x) ((x) << 0)
|
||||
# define R300_VE_DOT_PRODUCT 1
|
||||
# define R300_VE_MULTIPLY 2
|
||||
# define R300_VE_ADD 3
|
||||
# define R300_VE_MAXIMUM 7
|
||||
# define R300_VE_SET_LESS_THAN 10
|
||||
#define R300_PVS_DST_MATH_INST (1 << 6)
|
||||
# define R300_ME_RECIP_DX 6
|
||||
#define R300_PVS_DST_MACRO_INST (1 << 7)
|
||||
# define R300_PVS_MACRO_OP_2CLK_MADD 0
|
||||
#define R300_PVS_DST_REG_TYPE(x) ((x) << 8)
|
||||
# define R300_PVS_DST_REG_TEMPORARY 0
|
||||
# define R300_PVS_DST_REG_A0 1
|
||||
# define R300_PVS_DST_REG_OUT 2
|
||||
# define R300_PVS_DST_REG_OUT_REPL_X 3
|
||||
# define R300_PVS_DST_REG_ALT_TEMPORARY 4
|
||||
# define R300_PVS_DST_REG_INPUT 5
|
||||
#define R300_PVS_DST_OFFSET(x) ((x) << 13)
|
||||
#define R300_PVS_DST_WE(x) ((x) << 20)
|
||||
#define R300_PVS_DST_WE_XYZW (0xf << 20)
|
||||
|
||||
#define R300_PVS_SRC_REG_TYPE(x) ((x) << 0)
|
||||
# define R300_PVS_SRC_REG_TEMPORARY 0
|
||||
# define R300_PVS_SRC_REG_INPUT 1
|
||||
# define R300_PVS_SRC_REG_CONSTANT 2
|
||||
# define R300_PVS_SRC_REG_ALT_TEMPORARY 3
|
||||
#define R300_PVS_SRC_OFFSET(x) ((x) << 5)
|
||||
#define R300_PVS_SRC_SWIZZLE(x) ((x) << 13)
|
||||
# define R300_PVS_SRC_SELECT_X 0
|
||||
# define R300_PVS_SRC_SELECT_Y 1
|
||||
# define R300_PVS_SRC_SELECT_Z 2
|
||||
# define R300_PVS_SRC_SELECT_W 3
|
||||
# define R300_PVS_SRC_SELECT_FORCE_0 4
|
||||
# define R300_PVS_SRC_SELECT_FORCE_1 5
|
||||
# define R300_PVS_SRC_SWIZZLE_XYZW \
|
||||
((R300_PVS_SRC_SELECT_X | (R300_PVS_SRC_SELECT_Y << 3) | \
|
||||
(R300_PVS_SRC_SELECT_Z << 6) | (R300_PVS_SRC_SELECT_W << 9)) << 13)
|
||||
# define R300_PVS_SRC_SWIZZLE_ZERO \
|
||||
((R300_PVS_SRC_SELECT_FORCE_0 | (R300_PVS_SRC_SELECT_FORCE_0 << 3) | \
|
||||
(R300_PVS_SRC_SELECT_FORCE_0 << 6) | \
|
||||
(R300_PVS_SRC_SELECT_FORCE_0 << 9)) << 13)
|
||||
# define R300_PVS_SRC_SWIZZLE_ONE \
|
||||
((R300_PVS_SRC_SELECT_FORCE_1 | (R300_PVS_SRC_SELECT_FORCE_1 << 3) | \
|
||||
(R300_PVS_SRC_SELECT_FORCE_1 << 6) | \
|
||||
(R300_PVS_SRC_SELECT_FORCE_1 << 9)) << 13)
|
||||
#define R300_PVS_MODIFIER_X (1 << 25)
|
||||
#define R300_PVS_MODIFIER_Y (1 << 26)
|
||||
#define R300_PVS_MODIFIER_Z (1 << 27)
|
||||
#define R300_PVS_MODIFIER_W (1 << 28)
|
||||
#define R300_PVS_NEGATE_XYZW \
|
||||
(R300_PVS_MODIFIER_X | R300_PVS_MODIFIER_Y | \
|
||||
R300_PVS_MODIFIER_Z | R300_PVS_MODIFIER_W)
|
||||
|
||||
struct r300_vertex_program_code r300_passthrough_vertex_shader = {
|
||||
.length = 8, /* two instructions */
|
||||
|
||||
/* MOV out[0], in[0] */
|
||||
.body.d[0] = R300_PVS_DST_OPCODE(R300_VE_ADD) |
|
||||
R300_PVS_DST_REG_TYPE(R300_PVS_DST_REG_OUT) |
|
||||
R300_PVS_DST_OFFSET(0) | R300_PVS_DST_WE_XYZW,
|
||||
.body.d[1] = R300_PVS_SRC_REG_TYPE(R300_PVS_SRC_REG_INPUT) |
|
||||
R300_PVS_SRC_OFFSET(0) | R300_PVS_SRC_SWIZZLE_XYZW,
|
||||
.body.d[2] = R300_PVS_SRC_SWIZZLE_ZERO,
|
||||
.body.d[3] = 0x0,
|
||||
|
||||
/* MOV out[1], in[1] */
|
||||
.body.d[4] = R300_PVS_DST_OPCODE(R300_VE_ADD) |
|
||||
R300_PVS_DST_REG_TYPE(R300_PVS_DST_REG_OUT) |
|
||||
R300_PVS_DST_OFFSET(1) | R300_PVS_DST_WE_XYZW,
|
||||
.body.d[5] = R300_PVS_SRC_REG_TYPE(R300_PVS_SRC_REG_INPUT) |
|
||||
R300_PVS_SRC_OFFSET(1) | R300_PVS_SRC_SWIZZLE_XYZW,
|
||||
.body.d[6] = R300_PVS_SRC_SWIZZLE_ZERO,
|
||||
.body.d[7] = 0x0,
|
||||
|
||||
.inputs[0] = 0,
|
||||
.inputs[1] = 1,
|
||||
.outputs[0] = 0,
|
||||
.outputs[1] = 1,
|
||||
|
||||
.InputsRead = 3,
|
||||
.OutputsWritten = 3
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,74 +0,0 @@
|
|||
/*
|
||||
* Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
|
||||
* Joakim Sindholt <opensource@zhasha.com>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, and/or sell copies of the Software, and to permit persons to whom
|
||||
* the Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHOR(S) AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
* USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#include "r3xx_fs.h"
|
||||
|
||||
#include "r300_reg.h"
|
||||
|
||||
struct rX00_fragment_program_code r3xx_passthrough_fragment_shader = {
|
||||
.code.r300.alu.length = 1,
|
||||
.code.r300.tex.length = 0,
|
||||
|
||||
.code.r300.config = 0,
|
||||
.code.r300.pixsize = 0,
|
||||
.code.r300.code_offset = 0,
|
||||
.code.r300.code_addr[3] = R300_RGBA_OUT,
|
||||
|
||||
.code.r300.alu.inst[0].rgb_inst = R300_RGB_SWIZA(R300_ALU_ARGC_SRC0C_XYZ) |
|
||||
R300_RGB_SWIZB(R300_ALU_ARGC_SRC0C_XYZ) |
|
||||
R300_RGB_SWIZC(R300_ALU_ARGC_ZERO) |
|
||||
R300_ALU_OUTC_CMP,
|
||||
.code.r300.alu.inst[0].rgb_addr = R300_RGB_ADDR0(0) | R300_RGB_ADDR1(0) |
|
||||
R300_RGB_ADDR2(0) | R300_ALU_DSTC_OUTPUT_XYZ,
|
||||
.code.r300.alu.inst[0].alpha_inst = R300_ALPHA_SWIZA(R300_ALU_ARGA_SRC0A) |
|
||||
R300_ALPHA_SWIZB(R300_ALU_ARGA_SRC0A) |
|
||||
R300_ALPHA_SWIZC(R300_ALU_ARGA_ZERO) |
|
||||
R300_ALU_OUTA_CMP,
|
||||
.code.r300.alu.inst[0].alpha_addr = R300_ALPHA_ADDR0(0) |
|
||||
R300_ALPHA_ADDR1(0) | R300_ALPHA_ADDR2(0) | R300_ALU_DSTA_OUTPUT,
|
||||
};
|
||||
|
||||
struct rX00_fragment_program_code r3xx_texture_fragment_shader = {
|
||||
.code.r300.alu.length = 1,
|
||||
.code.r300.tex.length = 1,
|
||||
|
||||
.code.r300.config = R300_PFS_CNTL_FIRST_NODE_HAS_TEX,
|
||||
.code.r300.pixsize = 0,
|
||||
.code.r300.code_offset = 0,
|
||||
.code.r300.code_addr[3] = R300_RGBA_OUT,
|
||||
|
||||
.code.r300.tex.inst[0] = R300_TEX_OP_LD << R300_TEX_INST_SHIFT,
|
||||
|
||||
.code.r300.alu.inst[0].rgb_inst = R300_RGB_SWIZA(R300_ALU_ARGC_SRC0C_XYZ) |
|
||||
R300_RGB_SWIZB(R300_ALU_ARGC_SRC0C_XYZ) |
|
||||
R300_RGB_SWIZC(R300_ALU_ARGC_ZERO) |
|
||||
R300_ALU_OUTC_CMP,
|
||||
.code.r300.alu.inst[0].rgb_addr = R300_RGB_ADDR0(0) | R300_RGB_ADDR1(0) |
|
||||
R300_RGB_ADDR2(0) | R300_ALU_DSTC_OUTPUT_XYZ,
|
||||
.code.r300.alu.inst[0].alpha_inst = R300_ALPHA_SWIZA(R300_ALU_ARGA_SRC0A) |
|
||||
R300_ALPHA_SWIZB(R300_ALU_ARGA_SRC0A) |
|
||||
R300_ALPHA_SWIZC(R300_ALU_ARGA_ZERO) |
|
||||
R300_ALU_OUTA_CMP,
|
||||
.code.r300.alu.inst[0].alpha_addr = R300_ALPHA_ADDR0(0) |
|
||||
R300_ALPHA_ADDR1(0) | R300_ALPHA_ADDR2(0) | R300_ALU_DSTA_OUTPUT,
|
||||
};
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
/*
|
||||
* Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
|
||||
* Joakim Sindholt <opensource@zhasha.com>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, and/or sell copies of the Software, and to permit persons to whom
|
||||
* the Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHOR(S) AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
* USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#ifndef R3XX_FS_H
|
||||
#define R3XX_FS_H
|
||||
|
||||
#include "radeon_code.h"
|
||||
|
||||
struct rX00_fragment_program_code r3xx_passthrough_fragment_shader;
|
||||
struct rX00_fragment_program_code r3xx_texture_fragment_shader;
|
||||
|
||||
#endif /* R3XX_FS_H */
|
||||
|
|
@ -1,125 +0,0 @@
|
|||
/*
|
||||
* Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
|
||||
* Joakim Sindholt <opensource@zhasha.com>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, and/or sell copies of the Software, and to permit persons to whom
|
||||
* the Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHOR(S) AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
* USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#include "r5xx_fs.h"
|
||||
|
||||
#include "r300_reg.h"
|
||||
|
||||
/* XXX this all should find its way back to r300_reg */
|
||||
/* Swizzle tools */
|
||||
#define R500_SWIZZLE_ZERO 4
|
||||
#define R500_SWIZZLE_HALF 5
|
||||
#define R500_SWIZZLE_ONE 6
|
||||
#define R500_SWIZ_RGB_ZERO ((4 << 0) | (4 << 3) | (4 << 6))
|
||||
#define R500_SWIZ_RGB_ONE ((6 << 0) | (6 << 3) | (6 << 6))
|
||||
#define R500_SWIZ_RGB_RGB ((0 << 0) | (1 << 3) | (2 << 6))
|
||||
#define R500_SWIZ_MOD_NEG 1
|
||||
#define R500_SWIZ_MOD_ABS 2
|
||||
#define R500_SWIZ_MOD_NEG_ABS 3
|
||||
/* Swizzles for inst2 */
|
||||
#define R500_SWIZ_TEX_STRQ(x) ((x) << 8)
|
||||
#define R500_SWIZ_TEX_RGBA(x) ((x) << 24)
|
||||
/* Swizzles for inst3 */
|
||||
#define R500_SWIZ_RGB_A(x) ((x) << 2)
|
||||
#define R500_SWIZ_RGB_B(x) ((x) << 15)
|
||||
/* Swizzles for inst4 */
|
||||
#define R500_SWIZ_ALPHA_A(x) ((x) << 14)
|
||||
#define R500_SWIZ_ALPHA_B(x) ((x) << 21)
|
||||
/* Swizzle for inst5 */
|
||||
#define R500_SWIZ_RGBA_C(x) ((x) << 14)
|
||||
#define R500_SWIZ_ALPHA_C(x) ((x) << 27)
|
||||
/* Writemasks */
|
||||
#define R500_TEX_WMASK(x) ((x) << 11)
|
||||
#define R500_ALU_WMASK(x) ((x) << 11)
|
||||
#define R500_ALU_OMASK(x) ((x) << 15)
|
||||
#define R500_W_OMASK (1 << 31)
|
||||
|
||||
struct rX00_fragment_program_code r5xx_passthrough_fragment_shader = {
|
||||
.code.r500.max_temp_idx = 0,
|
||||
.code.r500.inst_end = 0,
|
||||
|
||||
.code.r500.inst[0].inst0 = R500_INST_TYPE_OUT |
|
||||
R500_INST_TEX_SEM_WAIT | R500_INST_LAST |
|
||||
R500_INST_RGB_OMASK_RGB | R500_INST_ALPHA_OMASK |
|
||||
R500_INST_RGB_CLAMP | R500_INST_ALPHA_CLAMP,
|
||||
.code.r500.inst[0].inst1 =
|
||||
R500_RGB_ADDR0(0) | R500_RGB_ADDR1(0) | R500_RGB_ADDR1_CONST |
|
||||
R500_RGB_ADDR2(0) | R500_RGB_ADDR2_CONST,
|
||||
.code.r500.inst[0].inst2 =
|
||||
R500_ALPHA_ADDR0(0) | R500_ALPHA_ADDR1(0) | R500_ALPHA_ADDR1_CONST |
|
||||
R500_ALPHA_ADDR2(0) | R500_ALPHA_ADDR2_CONST,
|
||||
.code.r500.inst[0].inst3 =
|
||||
R500_ALU_RGB_SEL_A_SRC0 | R500_ALU_RGB_R_SWIZ_A_R |
|
||||
R500_ALU_RGB_G_SWIZ_A_G | R500_ALU_RGB_B_SWIZ_A_B |
|
||||
R500_ALU_RGB_SEL_B_SRC0 | R500_ALU_RGB_R_SWIZ_B_R |
|
||||
R500_ALU_RGB_B_SWIZ_B_G | R500_ALU_RGB_G_SWIZ_B_B,
|
||||
.code.r500.inst[0].inst4 =
|
||||
R500_ALPHA_OP_CMP | R500_ALPHA_SWIZ_A_A | R500_ALPHA_SWIZ_B_A,
|
||||
.code.r500.inst[0].inst5 =
|
||||
R500_ALU_RGBA_OP_CMP | R500_ALU_RGBA_R_SWIZ_0 |
|
||||
R500_ALU_RGBA_G_SWIZ_0 | R500_ALU_RGBA_B_SWIZ_0 |
|
||||
R500_ALU_RGBA_A_SWIZ_0,
|
||||
};
|
||||
|
||||
struct rX00_fragment_program_code r5xx_texture_fragment_shader = {
|
||||
.code.r500.max_temp_idx = 0,
|
||||
.code.r500.inst_end = 1,
|
||||
|
||||
.code.r500.inst[0].inst0 = R500_INST_TYPE_TEX |
|
||||
R500_INST_TEX_SEM_WAIT |
|
||||
R500_INST_RGB_WMASK_RGB | R500_INST_ALPHA_WMASK |
|
||||
R500_INST_RGB_CLAMP | R500_INST_ALPHA_CLAMP,
|
||||
.code.r500.inst[0].inst1 = R500_TEX_ID(0) | R500_TEX_INST_LD |
|
||||
R500_TEX_SEM_ACQUIRE | R500_TEX_IGNORE_UNCOVERED,
|
||||
.code.r500.inst[0].inst2 = R500_TEX_SRC_ADDR(0) |
|
||||
R500_TEX_SRC_S_SWIZ_R | R500_TEX_SRC_T_SWIZ_G |
|
||||
R500_TEX_SRC_R_SWIZ_B | R500_TEX_SRC_Q_SWIZ_A |
|
||||
R500_TEX_DST_ADDR(0) |
|
||||
R500_TEX_DST_R_SWIZ_R | R500_TEX_DST_G_SWIZ_G |
|
||||
R500_TEX_DST_B_SWIZ_B | R500_TEX_DST_A_SWIZ_A,
|
||||
.code.r500.inst[0].inst3 = 0x0,
|
||||
.code.r500.inst[0].inst4 = 0x0,
|
||||
.code.r500.inst[0].inst5 = 0x0,
|
||||
|
||||
.code.r500.inst[1].inst0 = R500_INST_TYPE_OUT |
|
||||
R500_INST_TEX_SEM_WAIT | R500_INST_LAST |
|
||||
R500_INST_RGB_OMASK_RGB | R500_INST_ALPHA_OMASK |
|
||||
R500_INST_RGB_CLAMP | R500_INST_ALPHA_CLAMP,
|
||||
.code.r500.inst[1].inst1 =
|
||||
R500_RGB_ADDR0(0) | R500_RGB_ADDR1(0) | R500_RGB_ADDR1_CONST |
|
||||
R500_RGB_ADDR2(0) | R500_RGB_ADDR2_CONST,
|
||||
.code.r500.inst[1].inst2 =
|
||||
R500_ALPHA_ADDR0(0) | R500_ALPHA_ADDR1(0) | R500_ALPHA_ADDR1_CONST |
|
||||
R500_ALPHA_ADDR2(0) | R500_ALPHA_ADDR2_CONST,
|
||||
.code.r500.inst[1].inst3 =
|
||||
R500_ALU_RGB_SEL_A_SRC0 | R500_ALU_RGB_R_SWIZ_A_R |
|
||||
R500_ALU_RGB_G_SWIZ_A_G | R500_ALU_RGB_B_SWIZ_A_B |
|
||||
R500_ALU_RGB_SEL_B_SRC0 | R500_ALU_RGB_R_SWIZ_B_R |
|
||||
R500_ALU_RGB_B_SWIZ_B_G | R500_ALU_RGB_G_SWIZ_B_B,
|
||||
.code.r500.inst[1].inst4 =
|
||||
R500_ALPHA_OP_CMP | R500_ALPHA_SWIZ_A_A | R500_ALPHA_SWIZ_B_A,
|
||||
.code.r500.inst[1].inst5 =
|
||||
R500_ALU_RGBA_OP_CMP | R500_ALU_RGBA_R_SWIZ_0 |
|
||||
R500_ALU_RGBA_G_SWIZ_0 | R500_ALU_RGBA_B_SWIZ_0 |
|
||||
R500_ALU_RGBA_A_SWIZ_0,
|
||||
};
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
/*
|
||||
* Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
|
||||
* Joakim Sindholt <opensource@zhasha.com>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, and/or sell copies of the Software, and to permit persons to whom
|
||||
* the Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHOR(S) AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
* USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#ifndef R5XX_FS_H
|
||||
#define R5XX_FS_H
|
||||
|
||||
#include "radeon_code.h"
|
||||
|
||||
struct rX00_fragment_program_code r5xx_passthrough_fragment_shader;
|
||||
struct rX00_fragment_program_code r5xx_texture_fragment_shader;
|
||||
|
||||
#endif /* R5XX_FS_H */
|
||||
Loading…
Add table
Reference in a new issue