[WINED3D 1/6] Move D3DSIO structure into the WINED3D namespace.

Ivan Gyurdiev ivg231 at gmail.com
Tue Oct 3 23:02:56 CDT 2006


This is an independent patchset - it can apply before or after the one 
submitted yesterday. It focuses on all the shader files. The goal is 
explained in the wine-devel discussion - to remove dependency on d3d9 
headers.

Note: A new file was started for this purpose: wined3d_types.h. This is 
_not_ the same as the one in the wine include folder - that one should 
be for types which appear in the interface of wined3d, and must 
therefore be exposed to other dlls. This one is private. I think the dll 
interface should be strictly enforced, so private structures have no 
place outside our folder.

-------------- next part --------------
---
 dlls/wined3d/arb_program_shader.c |   24 +++--
 dlls/wined3d/baseshader.c         |   54 ++++++------
 dlls/wined3d/glsl_shader.c        |  110 ++++++++++++------------
 dlls/wined3d/pixelshader.c        |  168 +++++++++++++++++++------------------
 dlls/wined3d/vertexshader.c       |  114 +++++++++++++------------
 dlls/wined3d/wined3d_private.h    |    3 -
 dlls/wined3d/wined3d_types.h      |  119 ++++++++++++++++++++++++++
 7 files changed, 356 insertions(+), 236 deletions(-)

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index ed1bb86..3412986 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -833,7 +833,7 @@ void pshader_hw_texm3x3spec(SHADER_OPCOD
     current_state->current_row = 0;
 }
 
-/** Handles transforming all D3DSIO_M?x? opcodes for
+/** Handles transforming all WINED3DSIO_M?x? opcodes for
     Vertex shaders to ARB_vertex_program codes */
 void vshader_hw_mnxn(SHADER_OPCODE_ARG* arg) {
 
@@ -852,25 +852,25 @@ void vshader_hw_mnxn(SHADER_OPCODE_ARG* 
     tmpArg.reg_maps = arg->reg_maps;
 
     switch(arg->opcode->opcode) {
-    case D3DSIO_M4x4:
+    case WINED3DSIO_M4x4:
         nComponents = 4;
-        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP4];
+        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP4];
         break;
-    case D3DSIO_M4x3:
+    case WINED3DSIO_M4x3:
         nComponents = 3;
-        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP4];
+        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP4];
         break;
-    case D3DSIO_M3x4:
+    case WINED3DSIO_M3x4:
         nComponents = 4;
-        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
         break;
-    case D3DSIO_M3x3:
+    case WINED3DSIO_M3x3:
         nComponents = 3;
-        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
         break;
-    case D3DSIO_M3x2:
+    case WINED3DSIO_M3x2:
         nComponents = 2;
-        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+        tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
         break;
     default:
         break;
@@ -896,7 +896,7 @@ void vshader_hw_map2gl(SHADER_OPCODE_ARG
     char tmpLine[256];
     unsigned int i;
 
-    if (curOpcode->opcode == D3DSIO_MOV && dst_regtype == D3DSPR_ADDR)
+    if (curOpcode->opcode == WINED3DSIO_MOV && dst_regtype == D3DSPR_ADDR)
         strcpy(tmpLine, "ARL");
     else
         strcpy(tmpLine, curOpcode->glname);
diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c
index eae7699..aa8d217 100644
--- a/dlls/wined3d/baseshader.c
+++ b/dlls/wined3d/baseshader.c
@@ -218,7 +218,7 @@ HRESULT shader_get_registers_used(
                ++pToken;
 
         /* Handle declarations */
-        } else if (D3DSIO_DCL == curOpcode->opcode) {
+        } else if (WINED3DSIO_DCL == curOpcode->opcode) {
 
             DWORD usage = *pToken++;
             DWORD param = *pToken++;
@@ -247,7 +247,7 @@ HRESULT shader_get_registers_used(
             } else if (D3DSPR_SAMPLER == regtype)
                 reg_maps->samplers[regnum] = usage;
 
-        } else if (D3DSIO_DEF == curOpcode->opcode) {
+        } else if (WINED3DSIO_DEF == curOpcode->opcode) {
 
             local_constant* lconst = HeapAlloc(GetProcessHeap(), 0, sizeof(local_constant));
             if (!lconst) return E_OUTOFMEMORY;
@@ -256,7 +256,7 @@ HRESULT shader_get_registers_used(
             list_add_head(&This->baseShader.constantsF, &lconst->entry);
             pToken += curOpcode->num_params;
 
-        } else if (D3DSIO_DEFI == curOpcode->opcode) {
+        } else if (WINED3DSIO_DEFI == curOpcode->opcode) {
 
             local_constant* lconst = HeapAlloc(GetProcessHeap(), 0, sizeof(local_constant));
             if (!lconst) return E_OUTOFMEMORY;
@@ -265,7 +265,7 @@ HRESULT shader_get_registers_used(
             list_add_head(&This->baseShader.constantsI, &lconst->entry);
             pToken += curOpcode->num_params;
 
-        } else if (D3DSIO_DEFB == curOpcode->opcode) {
+        } else if (WINED3DSIO_DEFB == curOpcode->opcode) {
 
             local_constant* lconst = HeapAlloc(GetProcessHeap(), 0, sizeof(local_constant));
             if (!lconst) return E_OUTOFMEMORY;
@@ -275,13 +275,13 @@ HRESULT shader_get_registers_used(
             pToken += curOpcode->num_params;
 
         /* If there's a loop in the shader */
-        } else if (D3DSIO_LOOP == curOpcode->opcode ||
-                   D3DSIO_REP == curOpcode->opcode) {
+        } else if (WINED3DSIO_LOOP == curOpcode->opcode ||
+                   WINED3DSIO_REP == curOpcode->opcode) {
             reg_maps->loop = 1;
             pToken += curOpcode->num_params;
    
         /* For subroutine prototypes */
-        } else if (D3DSIO_LABEL == curOpcode->opcode) {
+        } else if (WINED3DSIO_LABEL == curOpcode->opcode) {
 
             DWORD snum = *pToken & D3DSP_REGNUM_MASK; 
             reg_maps->labels[snum] = 1;
@@ -293,10 +293,10 @@ HRESULT shader_get_registers_used(
 
             /* Declare 1.X samplers implicitly, based on the destination reg. number */
             if (D3DSHADER_VERSION_MAJOR(This->baseShader.hex_version) == 1 && 
-                (D3DSIO_TEX == curOpcode->opcode ||
-                 D3DSIO_TEXBEM == curOpcode->opcode ||
-                 D3DSIO_TEXM3x2TEX == curOpcode->opcode ||
-                 D3DSIO_TEXM3x3TEX == curOpcode->opcode)) {
+                (WINED3DSIO_TEX == curOpcode->opcode ||
+                 WINED3DSIO_TEXBEM == curOpcode->opcode ||
+                 WINED3DSIO_TEXM3x2TEX == curOpcode->opcode ||
+                 WINED3DSIO_TEXM3x3TEX == curOpcode->opcode)) {
 
                 /* Fake sampler usage, only set reserved bit and ttype */
                 DWORD sampler_code = *pToken & D3DSP_REGNUM_MASK;
@@ -330,8 +330,8 @@ HRESULT shader_get_registers_used(
                 }
 
             } else if (D3DSHADER_VERSION_MAJOR(This->baseShader.hex_version) == 1 &&
-                (D3DSIO_TEXM3x3SPEC == curOpcode->opcode ||
-                 D3DSIO_TEXM3x3VSPEC == curOpcode->opcode)) {
+                (WINED3DSIO_TEXM3x3SPEC == curOpcode->opcode ||
+                 WINED3DSIO_TEXM3x3VSPEC == curOpcode->opcode)) {
 
                 /* 3D sampler usage, only set reserved bit and ttype
                  * FIXME: This could be either Cube or Volume, but we wouldn't know unless
@@ -340,7 +340,7 @@ HRESULT shader_get_registers_used(
                 DWORD sampler_code = *pToken & D3DSP_REGNUM_MASK;
                 reg_maps->samplers[sampler_code] = (0x1 << 31) | WINED3DSTT_CUBE;
             } else if (D3DSHADER_VERSION_MAJOR(This->baseShader.hex_version) == 1 &&
-                (D3DSIO_TEXDP3TEX == curOpcode->opcode)) {
+                (WINED3DSIO_TEXDP3TEX == curOpcode->opcode)) {
                 
                 /* 1D Sampler usage */
                 DWORD sampler_code = *pToken & D3DSP_REGNUM_MASK;
@@ -724,13 +724,13 @@ void shader_generate_main(
                 pToken += shader_skip_unrecognized(iface, pToken); 
 
             /* Nothing to do */
-            } else if (D3DSIO_DCL == curOpcode->opcode ||
-                       D3DSIO_NOP == curOpcode->opcode ||
-                       D3DSIO_DEF == curOpcode->opcode ||
-                       D3DSIO_DEFI == curOpcode->opcode ||
-                       D3DSIO_DEFB == curOpcode->opcode ||
-                       D3DSIO_PHASE == curOpcode->opcode ||
-                       D3DSIO_RET == curOpcode->opcode) {
+            } else if (WINED3DSIO_DCL == curOpcode->opcode ||
+                       WINED3DSIO_NOP == curOpcode->opcode ||
+                       WINED3DSIO_DEF == curOpcode->opcode ||
+                       WINED3DSIO_DEFI == curOpcode->opcode ||
+                       WINED3DSIO_DEFB == curOpcode->opcode ||
+                       WINED3DSIO_PHASE == curOpcode->opcode ||
+                       WINED3DSIO_RET == curOpcode->opcode) {
 
                 pToken += shader_skip_opcode(This, curOpcode, hw_arg.opcode_token);
 
@@ -851,7 +851,7 @@ void shader_trace_init(
                 len += tokens_read;
 
             } else {
-                if (curOpcode->opcode == D3DSIO_DCL) {
+                if (curOpcode->opcode == WINED3DSIO_DCL) {
 
                     DWORD usage = *pToken;
                     DWORD param = *(pToken + 1);
@@ -863,7 +863,7 @@ void shader_trace_init(
                     pToken += 2;
                     len += 2;
 
-                } else if (curOpcode->opcode == D3DSIO_DEF) {
+                } else if (curOpcode->opcode == WINED3DSIO_DEF) {
 
                         unsigned int offset = shader_get_float_offset(*pToken);
 
@@ -875,7 +875,7 @@ void shader_trace_init(
 
                         pToken += 5;
                         len += 5;
-                } else if (curOpcode->opcode == D3DSIO_DEFI) {
+                } else if (curOpcode->opcode == WINED3DSIO_DEFI) {
 
                         TRACE("defi i%u = %d, %d, %d, %d", *pToken & D3DSP_REGNUM_MASK,
                             *(pToken + 1),
@@ -886,7 +886,7 @@ void shader_trace_init(
                         pToken += 5;
                         len += 5;
 
-                } else if (curOpcode->opcode == D3DSIO_DEFB) {
+                } else if (curOpcode->opcode == WINED3DSIO_DEFB) {
 
                         TRACE("defb b%u = %s", *pToken & D3DSP_REGNUM_MASK,
                             *(pToken + 1)? "true": "false");
@@ -909,8 +909,8 @@ void shader_trace_init(
 
                     TRACE("%s", curOpcode->name);
 
-                    if (curOpcode->opcode == D3DSIO_IFC ||
-                        curOpcode->opcode == D3DSIO_BREAKC) {
+                    if (curOpcode->opcode == WINED3DSIO_IFC ||
+                        curOpcode->opcode == WINED3DSIO_BREAKC) {
 
                         DWORD op = (opcode_token & INST_CONTROLS_MASK) >> INST_CONTROLS_SHIFT;
                         switch (op) {
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 0fe6005..a8226d6 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -534,7 +534,7 @@ static void shader_glsl_gen_modifier (
 
     out_str[0] = 0;
     
-    if (instr == D3DSIO_TEXKILL)
+    if (instr == WINED3DSIO_TEXKILL)
         return;
 
     switch (instr & D3DSP_SRCMOD_MASK) {
@@ -881,9 +881,9 @@ void shader_glsl_arith(SHADER_OPCODE_ARG
 
     /* Determine the GLSL operator to use based on the opcode */
     switch (curOpcode->opcode) {
-        case D3DSIO_MUL:    strcat(tmpLine, " * "); break;
-        case D3DSIO_ADD:    strcat(tmpLine, " + "); break;
-        case D3DSIO_SUB:    strcat(tmpLine, " - "); break;
+        case WINED3DSIO_MUL:    strcat(tmpLine, " * "); break;
+        case WINED3DSIO_ADD:    strcat(tmpLine, " + "); break;
+        case WINED3DSIO_SUB:    strcat(tmpLine, " - "); break;
         default:
             FIXME("Opcode %s not yet handled in GLSL\n", curOpcode->name);
             break;
@@ -891,7 +891,7 @@ void shader_glsl_arith(SHADER_OPCODE_ARG
     shader_addline(buffer, "%svec4(%s))%s;\n", tmpLine, src1_str, dst_mask);
 }
 
-/* Process the D3DSIO_MOV opcode using GLSL (dst = src) */
+/* Process the WINED3DSIO_MOV opcode using GLSL (dst = src) */
 void shader_glsl_mov(SHADER_OPCODE_ARG* arg) {
 
     SHADER_BUFFER* buffer = arg->buffer;
@@ -924,7 +924,7 @@ void shader_glsl_dot(SHADER_OPCODE_ARG* 
     shader_glsl_add_dst(arg->dst, dst_reg, dst_mask, tmpDest);
  
     /* Need to cast the src vectors to vec3 for dp3, and vec4 for dp4 */
-    if (curOpcode->opcode == D3DSIO_DP4)
+    if (curOpcode->opcode == WINED3DSIO_DP4)
         strcpy(cast, "vec4(");
     else
         strcpy(cast, "vec3(");
@@ -951,20 +951,20 @@ void shader_glsl_map2gl(SHADER_OPCODE_AR
     /* Determine the GLSL function to use based on the opcode */
     /* TODO: Possibly make this a table for faster lookups */
     switch (curOpcode->opcode) {
-            case D3DSIO_MIN:    strcat(tmpLine, "min"); break;
-            case D3DSIO_MAX:    strcat(tmpLine, "max"); break;
-            case D3DSIO_RSQ:    strcat(tmpLine, "inversesqrt"); break;
-            case D3DSIO_ABS:    strcat(tmpLine, "abs"); break;
-            case D3DSIO_FRC:    strcat(tmpLine, "fract"); break;
-            case D3DSIO_POW:    strcat(tmpLine, "pow"); break;
-            case D3DSIO_CRS:    strcat(tmpLine, "cross"); break;
-            case D3DSIO_NRM:    strcat(tmpLine, "normalize"); break;
-            case D3DSIO_LOGP:
-            case D3DSIO_LOG:    strcat(tmpLine, "log2"); break;
-            case D3DSIO_EXP:    strcat(tmpLine, "exp2"); break;
-            case D3DSIO_SGE:    strcat(tmpLine, "greaterThanEqual"); break;
-            case D3DSIO_SLT:    strcat(tmpLine, "lessThan"); break;
-            case D3DSIO_SGN:    strcat(tmpLine, "sign"); break;
+            case WINED3DSIO_MIN:    strcat(tmpLine, "min"); break;
+            case WINED3DSIO_MAX:    strcat(tmpLine, "max"); break;
+            case WINED3DSIO_RSQ:    strcat(tmpLine, "inversesqrt"); break;
+            case WINED3DSIO_ABS:    strcat(tmpLine, "abs"); break;
+            case WINED3DSIO_FRC:    strcat(tmpLine, "fract"); break;
+            case WINED3DSIO_POW:    strcat(tmpLine, "pow"); break;
+            case WINED3DSIO_CRS:    strcat(tmpLine, "cross"); break;
+            case WINED3DSIO_NRM:    strcat(tmpLine, "normalize"); break;
+            case WINED3DSIO_LOGP:
+            case WINED3DSIO_LOG:    strcat(tmpLine, "log2"); break;
+            case WINED3DSIO_EXP:    strcat(tmpLine, "exp2"); break;
+            case WINED3DSIO_SGE:    strcat(tmpLine, "greaterThanEqual"); break;
+            case WINED3DSIO_SLT:    strcat(tmpLine, "lessThan"); break;
+            case WINED3DSIO_SGN:    strcat(tmpLine, "sign"); break;
         default:
             FIXME("Opcode %s not yet handled in GLSL\n", curOpcode->name);
             break;
@@ -988,7 +988,7 @@ void shader_glsl_map2gl(SHADER_OPCODE_AR
 
 }
 
-/** Process the D3DSIO_EXPP instruction in GLSL:
+/** Process the WINED3DSIO_EXPP instruction in GLSL:
  * For shader model 1.x, do the following (and honor the writemask, so use a temporary variable):
  *   dst.x = 2^(floor(src))
  *   dst.y = src - floor(src)
@@ -1057,8 +1057,8 @@ void shader_glsl_compare(SHADER_OPCODE_A
         shader_glsl_add_param(arg, arg->src[1], arg->src_addr[1], TRUE, src1_reg, src1_mask, src1_str);
 
         switch (arg->opcode->opcode) {
-            case D3DSIO_SLT:    strcpy(compareStr, "<"); break;
-            case D3DSIO_SGE:    strcpy(compareStr, ">="); break;
+            case WINED3DSIO_SLT:    strcpy(compareStr, "<"); break;
+            case WINED3DSIO_SGE:    strcpy(compareStr, ">="); break;
             default:
                 FIXME("Can't handle opcode %s\n", arg->opcode->name);
         }
@@ -1102,7 +1102,7 @@ void shader_glsl_cnd(SHADER_OPCODE_ARG* 
                    tmpLine, src0_str, src1_str, src2_str, dst_mask);
 }
 
-/** GLSL code generation for D3DSIO_MAD: Multiply the first 2 opcodes, then add the last */
+/** GLSL code generation for WINED3DSIO_MAD: Multiply the first 2 opcodes, then add the last */
 void shader_glsl_mad(SHADER_OPCODE_ARG* arg) {
 
     char tmpLine[256];
@@ -1120,7 +1120,7 @@ void shader_glsl_mad(SHADER_OPCODE_ARG* 
                    tmpLine, src0_str, src1_str, src2_str, dst_mask);
 }
 
-/** Handles transforming all D3DSIO_M?x? opcodes for 
+/** Handles transforming all WINED3DSIO_M?x? opcodes for 
     Vertex shaders to GLSL codes */
 void shader_glsl_mnxn(SHADER_OPCODE_ARG* arg) {
     int i;
@@ -1138,25 +1138,25 @@ void shader_glsl_mnxn(SHADER_OPCODE_ARG*
     tmpArg.reg_maps = arg->reg_maps; 
     
     switch(arg->opcode->opcode) {
-        case D3DSIO_M4x4:
+        case WINED3DSIO_M4x4:
             nComponents = 4;
-            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP4];
+            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP4];
             break;
-        case D3DSIO_M4x3:
+        case WINED3DSIO_M4x3:
             nComponents = 3;
-            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP4];
+            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP4];
             break;
-        case D3DSIO_M3x4:
+        case WINED3DSIO_M3x4:
             nComponents = 4;
-            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
             break;
-        case D3DSIO_M3x3:
+        case WINED3DSIO_M3x3:
             nComponents = 3;
-            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
             break;
-        case D3DSIO_M3x2:
+        case WINED3DSIO_M3x2:
             nComponents = 2;
-            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[D3DSIO_DP3];
+            tmpArg.opcode = &IWineD3DVertexShaderImpl_shader_ins[WINED3DSIO_DP3];
             break;
         default:
             break;
@@ -1192,7 +1192,7 @@ void shader_glsl_lrp(SHADER_OPCODE_ARG* 
                    tmpLine, src2_str, src0_str, src1_str, src2_str, dst_mask);
 }
 
-/** Process the D3DSIO_LIT instruction in GLSL:
+/** Process the WINED3DSIO_LIT instruction in GLSL:
  * dst.x = dst.w = 1.0
  * dst.y = (src0.x > 0) ? src0.x
  * dst.z = (src0.x > 0) ? ((src0.y > 0) ? pow(src0.y, src.w) : 0) : 0
@@ -1212,7 +1212,7 @@ void shader_glsl_lit(SHADER_OPCODE_ARG* 
         dst_str, src0_reg, src0_reg, src0_reg, src0_reg, src0_reg, src0_reg, dst_mask);
 }
 
-/** Process the D3DSIO_DST instruction in GLSL:
+/** Process the WINED3DSIO_DST instruction in GLSL:
  * dst.x = 1.0
  * dst.y = src0.x * src0.y
  * dst.z = src0.z
@@ -1232,7 +1232,7 @@ void shader_glsl_dst(SHADER_OPCODE_ARG* 
                    dst_str, src0_reg, src1_reg, src0_reg, src1_reg, dst_mask);
 }
 
-/** Process the D3DSIO_SINCOS instruction in GLSL:
+/** Process the WINED3DSIO_SINCOS instruction in GLSL:
  * VS 2.0 requires that specific cosine and sine constants be passed to this instruction so the hardware
  * can handle it.  But, these functions are built-in for GLSL, so we can just ignore the last 2 params.
  * 
@@ -1254,7 +1254,7 @@ void shader_glsl_sincos(SHADER_OPCODE_AR
                    dst_str, src0_str, src0_str, dst_reg, dst_reg, dst_mask);
 }
 
-/** Process the D3DSIO_LOOP instruction in GLSL:
+/** Process the WINED3DSIO_LOOP instruction in GLSL:
  * Start a for() loop where src0.y is the initial value of aL,
  *  increment aL by src0.z for a total of src0.x iterations.
  *  Need to use a temporary variable for this operation.
@@ -1454,7 +1454,7 @@ void pshader_glsl_texcoord(SHADER_OPCODE
    }
 }
 
-/** Process the D3DSIO_TEXDP3TEX instruction in GLSL:
+/** Process the WINED3DSIO_TEXDP3TEX instruction in GLSL:
  * Take a 3-component dot product of the TexCoord[dstreg] and src,
  * then perform a 1D texture lookup from stage dstregnum, place into dst. */
 void pshader_glsl_texdp3tex(SHADER_OPCODE_ARG* arg) {
@@ -1471,7 +1471,7 @@ void pshader_glsl_texdp3tex(SHADER_OPCOD
     shader_addline(arg->buffer, "%s = vec4(texture1D(Psampler%u, tmp0.x))%s;\n", dst_str, dstreg, dst_mask);
 }
 
-/** Process the D3DSIO_TEXDP3 instruction in GLSL:
+/** Process the WINED3DSIO_TEXDP3 instruction in GLSL:
  * Take a 3-component dot product of the TexCoord[dstreg] and src. */
 void pshader_glsl_texdp3(SHADER_OPCODE_ARG* arg) {
 
@@ -1487,7 +1487,7 @@ void pshader_glsl_texdp3(SHADER_OPCODE_A
             dst_str, dstreg, src0_str, dst_mask);
 }
 
-/** Process the D3DSIO_TEXDEPTH instruction in GLSL:
+/** Process the WINED3DSIO_TEXDEPTH instruction in GLSL:
  * Calculate the depth as dst.x / dst.y   */
 void pshader_glsl_texdepth(SHADER_OPCODE_ARG* arg) {
     
@@ -1500,7 +1500,7 @@ void pshader_glsl_texdepth(SHADER_OPCODE
     shader_addline(arg->buffer, "gl_FragDepth = %s.x / %s.y;\n", dst_reg, dst_reg);
 }
 
-/** Process the D3DSIO_TEXM3X2DEPTH instruction in GLSL:
+/** Process the WINED3DSIO_TEXM3X2DEPTH instruction in GLSL:
  * Last row of a 3x2 matrix multiply, use the result to calculate the depth:
  * Calculate tmp0.y = TexCoord[dstreg] . src.xyz;  (tmp0.x has already been calculated)
  * depth = (tmp0.y == 0.0) ? 1.0 : tmp0.x / tmp0.y
@@ -1519,7 +1519,7 @@ void pshader_glsl_texm3x2depth(SHADER_OP
     shader_addline(arg->buffer, "gl_FragDepth = vec4((tmp0.y == 0.0) ? 1.0 : tmp0.x / tmp0.y)%s;\n", dst_str, dst_name);
 }
 
-/** Process the D3DSIO_TEXM3X2PAD instruction in GLSL
+/** Process the WINED3DSIO_TEXM3X2PAD instruction in GLSL
  * Calculate the 1st of a 2-row matrix multiplication. */
 void pshader_glsl_texm3x2pad(SHADER_OPCODE_ARG* arg) {
 
@@ -1533,7 +1533,7 @@ void pshader_glsl_texm3x2pad(SHADER_OPCO
     shader_addline(buffer, "tmp0.x = dot(vec3(T%u), vec3(%s));\n", reg, src0_str);
 }
 
-/** Process the D3DSIO_TEXM3X3PAD instruction in GLSL
+/** Process the WINED3DSIO_TEXM3X3PAD instruction in GLSL
  * Calculate the 1st or 2nd row of a 3-row matrix multiplication. */
 void pshader_glsl_texm3x3pad(SHADER_OPCODE_ARG* arg) {
 
@@ -1565,7 +1565,7 @@ void pshader_glsl_texm3x2tex(SHADER_OPCO
     shader_addline(buffer, "T%u = texture2D(Psampler%u, tmp0.st);\n", reg, reg);
 }
 
-/** Process the D3DSIO_TEXM3X3TEX instruction in GLSL
+/** Process the WINED3DSIO_TEXM3X3TEX instruction in GLSL
  * Perform the 3rd row of a 3x3 matrix multiply, then sample the texture using the calculate coordinates */
 void pshader_glsl_texm3x3tex(SHADER_OPCODE_ARG* arg) {
 
@@ -1596,7 +1596,7 @@ void pshader_glsl_texm3x3tex(SHADER_OPCO
     current_state->current_row = 0;
 }
 
-/** Process the D3DSIO_TEXM3X3 instruction in GLSL
+/** Process the WINED3DSIO_TEXM3X3 instruction in GLSL
  * Perform the 3rd row of a 3x3 matrix multiply */
 void pshader_glsl_texm3x3(SHADER_OPCODE_ARG* arg) {
 
@@ -1614,7 +1614,7 @@ void pshader_glsl_texm3x3(SHADER_OPCODE_
     current_state->current_row = 0;
 }
 
-/** Process the D3DSIO_TEXM3X3SPEC instruction in GLSL 
+/** Process the WINED3DSIO_TEXM3X3SPEC instruction in GLSL 
  * Peform the final texture lookup based on the previous 2 3x3 matrix multiplies */
 void pshader_glsl_texm3x3spec(SHADER_OPCODE_ARG* arg) {
 
@@ -1652,7 +1652,7 @@ void pshader_glsl_texm3x3spec(SHADER_OPC
     current_state->current_row = 0;
 }
 
-/** Process the D3DSIO_TEXM3X3VSPEC instruction in GLSL 
+/** Process the WINED3DSIO_TEXM3X3VSPEC instruction in GLSL 
  * Peform the final texture lookup based on the previous 2 3x3 matrix multiplies */
 void pshader_glsl_texm3x3vspec(SHADER_OPCODE_ARG* arg) {
 
@@ -1688,7 +1688,7 @@ void pshader_glsl_texm3x3vspec(SHADER_OP
     current_state->current_row = 0;
 }
 
-/** Process the D3DSIO_TEXBEM instruction in GLSL.
+/** Process the WINED3DSIO_TEXBEM instruction in GLSL.
  * Apply a fake bump map transform.
  * FIXME: Should apply the BUMPMAPENV matrix.  For now, just sample the texture */
 void pshader_glsl_texbem(SHADER_OPCODE_ARG* arg) {
@@ -1701,7 +1701,7 @@ void pshader_glsl_texbem(SHADER_OPCODE_A
             reg1, reg1, reg1, reg2);
 }
 
-/** Process the D3DSIO_TEXREG2AR instruction in GLSL
+/** Process the WINED3DSIO_TEXREG2AR instruction in GLSL
  * Sample 2D texture at dst using the alpha & red (wx) components of src as texture coordinates */
 void pshader_glsl_texreg2ar(SHADER_OPCODE_ARG* arg) {
     
@@ -1719,7 +1719,7 @@ void pshader_glsl_texreg2ar(SHADER_OPCOD
             tmpLine, src0_regnum, dst_reg, dst_mask);
 }
 
-/** Process the D3DSIO_TEXREG2GB instruction in GLSL
+/** Process the WINED3DSIO_TEXREG2GB instruction in GLSL
  * Sample 2D texture at dst using the green & blue (yz) components of src as texture coordinates */
 void pshader_glsl_texreg2gb(SHADER_OPCODE_ARG* arg) {
 
@@ -1737,7 +1737,7 @@ void pshader_glsl_texreg2gb(SHADER_OPCOD
             tmpLine, src0_regnum, dst_reg, dst_mask);
 }
 
-/** Process the D3DSIO_TEXREG2RGB instruction in GLSL
+/** Process the WINED3DSIO_TEXREG2RGB instruction in GLSL
  * Sample texture at dst using the rgb (xyz) components of src as texture coordinates */
 void pshader_glsl_texreg2rgb(SHADER_OPCODE_ARG* arg) {
 
@@ -1766,7 +1766,7 @@ void pshader_glsl_texreg2rgb(SHADER_OPCO
             tmpLine, dimensions, src0_regnum, dst_reg, (stype == WINED3DSTT_2D) ? "xy" : "xyz", dst_mask);
 }
 
-/** Process the D3DSIO_TEXKILL instruction in GLSL.
+/** Process the WINED3DSIO_TEXKILL instruction in GLSL.
  * If any of the first 3 components are < 0, discard this pixel */
 void pshader_glsl_texkill(SHADER_OPCODE_ARG* arg) {
 
@@ -1776,7 +1776,7 @@ void pshader_glsl_texkill(SHADER_OPCODE_
     shader_addline(arg->buffer, "if (any(lessThan(%s.xyz, vec3(0.0)))) discard;\n", dst_name);
 }
 
-/** Process the D3DSIO_DP2ADD instruction in GLSL.
+/** Process the WINED3DSIO_DP2ADD instruction in GLSL.
  * dst = dot2(src0, src1) + src2 */
 void pshader_glsl_dp2add(SHADER_OPCODE_ARG* arg) {
 
diff --git a/dlls/wined3d/pixelshader.c b/dlls/wined3d/pixelshader.c
index 9fc88cf..2f52930 100644
--- a/dlls/wined3d/pixelshader.c
+++ b/dlls/wined3d/pixelshader.c
@@ -621,32 +621,32 @@ static void pshader_texldl(WINED3DSHADER
 CONST SHADER_OPCODE IWineD3DPixelShaderImpl_shader_ins[] = {
 
     /* Arithmethic */
-    {D3DSIO_NOP,  "nop", "NOP", 0, 0, pshader_nop, pshader_hw_map2gl, NULL, 0, 0},
-    {D3DSIO_MOV,  "mov", "MOV", 1, 2, pshader_mov, pshader_hw_map2gl, shader_glsl_mov, 0, 0},
-    {D3DSIO_ADD,  "add", "ADD", 1, 3, pshader_add, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_SUB,  "sub", "SUB", 1, 3, pshader_sub, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_MAD,  "mad", "MAD", 1, 4, pshader_mad, pshader_hw_map2gl, shader_glsl_mad, 0, 0},
-    {D3DSIO_MUL,  "mul", "MUL", 1, 3, pshader_mul, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_RCP,  "rcp", "RCP",  1, 2, pshader_rcp, pshader_hw_map2gl, shader_glsl_rcp, 0, 0},
-    {D3DSIO_RSQ,  "rsq",  "RSQ", 1, 2, pshader_rsq, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_DP3,  "dp3",  "DP3", 1, 3, pshader_dp3, pshader_hw_map2gl, shader_glsl_dot, 0, 0},
-    {D3DSIO_DP4,  "dp4",  "DP4", 1, 3, pshader_dp4, pshader_hw_map2gl, shader_glsl_dot, 0, 0},
-    {D3DSIO_MIN,  "min",  "MIN", 1, 3, pshader_min, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_MAX,  "max",  "MAX", 1, 3, pshader_max, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_SLT,  "slt",  "SLT", 1, 3, pshader_slt, pshader_hw_map2gl, shader_glsl_compare, 0, 0},
-    {D3DSIO_SGE,  "sge",  "SGE", 1, 3, pshader_sge, pshader_hw_map2gl, shader_glsl_compare, 0, 0},
-    {D3DSIO_ABS,  "abs",  "ABS", 1, 2, pshader_abs, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_EXP,  "exp",  "EX2", 1, 2, pshader_exp, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_LOG,  "log",  "LG2", 1, 2, pshader_log, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_EXPP, "expp", "EXP", 1, 2, pshader_expp, pshader_hw_map2gl, shader_glsl_expp, 0, 0},
-    {D3DSIO_LOGP, "logp", "LOG", 1, 2, pshader_logp, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_DST,  "dst",  "DST", 1, 3, pshader_dst, pshader_hw_map2gl, shader_glsl_dst, 0, 0},
-    {D3DSIO_LRP,  "lrp",  "LRP", 1, 4, pshader_lrp, pshader_hw_map2gl, shader_glsl_lrp, 0, 0},
-    {D3DSIO_FRC,  "frc",  "FRC", 1, 2, pshader_frc, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_CND,  "cnd",  NULL, 1, 4, pshader_cnd, pshader_hw_cnd, shader_glsl_cnd, D3DPS_VERSION(1,1), D3DPS_VERSION(1,4)},
-    {D3DSIO_CMP,  "cmp",  NULL, 1, 4, pshader_cmp, pshader_hw_cmp, shader_glsl_cmp, D3DPS_VERSION(1,2), D3DPS_VERSION(3,0)},
-    {D3DSIO_POW,  "pow",  "POW", 1, 3, pshader_pow,  NULL, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_CRS,  "crs",  "XPS", 1, 3, pshader_crs,  NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_NOP,  "nop", "NOP", 0, 0, pshader_nop, pshader_hw_map2gl, NULL, 0, 0},
+    {WINED3DSIO_MOV,  "mov", "MOV", 1, 2, pshader_mov, pshader_hw_map2gl, shader_glsl_mov, 0, 0},
+    {WINED3DSIO_ADD,  "add", "ADD", 1, 3, pshader_add, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_SUB,  "sub", "SUB", 1, 3, pshader_sub, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_MAD,  "mad", "MAD", 1, 4, pshader_mad, pshader_hw_map2gl, shader_glsl_mad, 0, 0},
+    {WINED3DSIO_MUL,  "mul", "MUL", 1, 3, pshader_mul, pshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_RCP,  "rcp", "RCP",  1, 2, pshader_rcp, pshader_hw_map2gl, shader_glsl_rcp, 0, 0},
+    {WINED3DSIO_RSQ,  "rsq",  "RSQ", 1, 2, pshader_rsq, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_DP3,  "dp3",  "DP3", 1, 3, pshader_dp3, pshader_hw_map2gl, shader_glsl_dot, 0, 0},
+    {WINED3DSIO_DP4,  "dp4",  "DP4", 1, 3, pshader_dp4, pshader_hw_map2gl, shader_glsl_dot, 0, 0},
+    {WINED3DSIO_MIN,  "min",  "MIN", 1, 3, pshader_min, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_MAX,  "max",  "MAX", 1, 3, pshader_max, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_SLT,  "slt",  "SLT", 1, 3, pshader_slt, pshader_hw_map2gl, shader_glsl_compare, 0, 0},
+    {WINED3DSIO_SGE,  "sge",  "SGE", 1, 3, pshader_sge, pshader_hw_map2gl, shader_glsl_compare, 0, 0},
+    {WINED3DSIO_ABS,  "abs",  "ABS", 1, 2, pshader_abs, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_EXP,  "exp",  "EX2", 1, 2, pshader_exp, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_LOG,  "log",  "LG2", 1, 2, pshader_log, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_EXPP, "expp", "EXP", 1, 2, pshader_expp, pshader_hw_map2gl, shader_glsl_expp, 0, 0},
+    {WINED3DSIO_LOGP, "logp", "LOG", 1, 2, pshader_logp, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_DST,  "dst",  "DST", 1, 3, pshader_dst, pshader_hw_map2gl, shader_glsl_dst, 0, 0},
+    {WINED3DSIO_LRP,  "lrp",  "LRP", 1, 4, pshader_lrp, pshader_hw_map2gl, shader_glsl_lrp, 0, 0},
+    {WINED3DSIO_FRC,  "frc",  "FRC", 1, 2, pshader_frc, pshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_CND,  "cnd",  NULL, 1, 4, pshader_cnd, pshader_hw_cnd, shader_glsl_cnd, D3DPS_VERSION(1,1), D3DPS_VERSION(1,4)},
+    {WINED3DSIO_CMP,  "cmp",  NULL, 1, 4, pshader_cmp, pshader_hw_cmp, shader_glsl_cmp, D3DPS_VERSION(1,2), D3DPS_VERSION(3,0)},
+    {WINED3DSIO_POW,  "pow",  "POW", 1, 3, pshader_pow,  NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_CRS,  "crs",  "XPS", 1, 3, pshader_crs,  NULL, shader_glsl_map2gl, 0, 0},
     /* TODO: xyz normalise can be performed as VS_ARB using one temporary register,
         DP3 tmp , vec, vec;
         RSQ tmp, tmp.x;
@@ -657,75 +657,75 @@ CONST SHADER_OPCODE IWineD3DPixelShaderI
         MUL vec, vec, tmp;
 
     */
-    {D3DSIO_NRM,      "nrm",      NULL, 1, 2, pshader_nrm,     NULL, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_SINCOS,   "sincos",   NULL, 1, 4, pshader_sincos2, NULL, shader_glsl_sincos, D3DPS_VERSION(2,0), D3DPS_VERSION(2,0)},
-    {D3DSIO_SINCOS,   "sincos",   NULL, 1, 2, pshader_sincos3, NULL, shader_glsl_sincos, D3DPS_VERSION(3,0), -1},
+    {WINED3DSIO_NRM,      "nrm",      NULL, 1, 2, pshader_nrm,     NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_SINCOS,   "sincos",   NULL, 1, 4, pshader_sincos2, NULL, shader_glsl_sincos, D3DPS_VERSION(2,0), D3DPS_VERSION(2,0)},
+    {WINED3DSIO_SINCOS,   "sincos",   NULL, 1, 2, pshader_sincos3, NULL, shader_glsl_sincos, D3DPS_VERSION(3,0), -1},
     /* TODO: dp2add can be made out of multiple instuctions */
-    {D3DSIO_DP2ADD,   "dp2add",   GLNAME_REQUIRE_GLSL,  1, 4, pshader_dp2add,  NULL, pshader_glsl_dp2add, D3DPS_VERSION(2,0), -1},
+    {WINED3DSIO_DP2ADD,   "dp2add",   GLNAME_REQUIRE_GLSL,  1, 4, pshader_dp2add,  NULL, pshader_glsl_dp2add, D3DPS_VERSION(2,0), -1},
 
     /* Matrix */
-    {D3DSIO_M4x4, "m4x4", "undefined", 1, 3, pshader_m4x4, NULL, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M4x3, "m4x3", "undefined", 1, 3, pshader_m4x3, NULL, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x4, "m3x4", "undefined", 1, 3, pshader_m3x4, NULL, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x3, "m3x3", "undefined", 1, 3, pshader_m3x3, NULL, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x2, "m3x2", "undefined", 1, 3, pshader_m3x2, NULL, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M4x4, "m4x4", "undefined", 1, 3, pshader_m4x4, NULL, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M4x3, "m4x3", "undefined", 1, 3, pshader_m4x3, NULL, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x4, "m3x4", "undefined", 1, 3, pshader_m3x4, NULL, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x3, "m3x3", "undefined", 1, 3, pshader_m3x3, NULL, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x2, "m3x2", "undefined", 1, 3, pshader_m3x2, NULL, shader_glsl_mnxn, 0, 0},
 
     /* Register declarations */
-    {D3DSIO_DCL,      "dcl",      NULL, 0, 2, pshader_dcl,     NULL, NULL, 0, 0},
+    {WINED3DSIO_DCL,      "dcl",      NULL, 0, 2, pshader_dcl,     NULL, NULL, 0, 0},
 
     /* Flow control - requires GLSL or software shaders */
-    {D3DSIO_REP ,     "rep",      NULL, 0, 1, pshader_rep,     NULL, shader_glsl_rep,    D3DPS_VERSION(2,1), -1},
-    {D3DSIO_ENDREP,   "endrep",   NULL, 0, 0, pshader_endrep,  NULL, shader_glsl_end,    D3DPS_VERSION(2,1), -1},
-    {D3DSIO_IF,       "if",       NULL, 0, 1, pshader_if,      NULL, shader_glsl_if,     D3DPS_VERSION(2,1), -1},
-    {D3DSIO_IFC,      "ifc",      NULL, 0, 2, pshader_ifc,     NULL, shader_glsl_ifc,    D3DPS_VERSION(2,1), -1},
-    {D3DSIO_ELSE,     "else",     NULL, 0, 0, pshader_else,    NULL, shader_glsl_else,   D3DPS_VERSION(2,1), -1},
-    {D3DSIO_ENDIF,    "endif",    NULL, 0, 0, pshader_endif,   NULL, shader_glsl_end,    D3DPS_VERSION(2,1), -1},
-    {D3DSIO_BREAK,    "break",    NULL, 0, 0, pshader_break,   NULL, shader_glsl_break,  D3DPS_VERSION(2,1), -1},
-    {D3DSIO_BREAKC,   "breakc",   NULL, 0, 2, pshader_breakc,  NULL, shader_glsl_breakc, D3DPS_VERSION(2,1), -1},
-    {D3DSIO_BREAKP,   "breakp",   GLNAME_REQUIRE_GLSL, 0, 1, pshader_breakp,  NULL, NULL, 0, 0},
-    {D3DSIO_CALL,     "call",     NULL, 0, 1, pshader_call,    NULL, shader_glsl_call, D3DPS_VERSION(2,1), -1},
-    {D3DSIO_CALLNZ,   "callnz",   NULL, 0, 2, pshader_callnz,  NULL, shader_glsl_callnz, D3DPS_VERSION(2,1), -1},
-    {D3DSIO_LOOP,     "loop",     NULL, 0, 2, pshader_loop,    NULL, shader_glsl_loop,   D3DPS_VERSION(3,0), -1},
-    {D3DSIO_RET,      "ret",      NULL, 0, 0, pshader_ret,     NULL, NULL,               D3DPS_VERSION(2,1), -1},
-    {D3DSIO_ENDLOOP,  "endloop",  NULL, 0, 0, pshader_endloop, NULL, shader_glsl_end,    D3DPS_VERSION(3,0), -1},
-    {D3DSIO_LABEL,    "label",    NULL, 0, 1, pshader_label,   NULL, shader_glsl_label,  D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_REP ,     "rep",      NULL, 0, 1, pshader_rep,     NULL, shader_glsl_rep,    D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_ENDREP,   "endrep",   NULL, 0, 0, pshader_endrep,  NULL, shader_glsl_end,    D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_IF,       "if",       NULL, 0, 1, pshader_if,      NULL, shader_glsl_if,     D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_IFC,      "ifc",      NULL, 0, 2, pshader_ifc,     NULL, shader_glsl_ifc,    D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_ELSE,     "else",     NULL, 0, 0, pshader_else,    NULL, shader_glsl_else,   D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_ENDIF,    "endif",    NULL, 0, 0, pshader_endif,   NULL, shader_glsl_end,    D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_BREAK,    "break",    NULL, 0, 0, pshader_break,   NULL, shader_glsl_break,  D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_BREAKC,   "breakc",   NULL, 0, 2, pshader_breakc,  NULL, shader_glsl_breakc, D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_BREAKP,   "breakp",   GLNAME_REQUIRE_GLSL, 0, 1, pshader_breakp,  NULL, NULL, 0, 0},
+    {WINED3DSIO_CALL,     "call",     NULL, 0, 1, pshader_call,    NULL, shader_glsl_call, D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_CALLNZ,   "callnz",   NULL, 0, 2, pshader_callnz,  NULL, shader_glsl_callnz, D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_LOOP,     "loop",     NULL, 0, 2, pshader_loop,    NULL, shader_glsl_loop,   D3DPS_VERSION(3,0), -1},
+    {WINED3DSIO_RET,      "ret",      NULL, 0, 0, pshader_ret,     NULL, NULL,               D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_ENDLOOP,  "endloop",  NULL, 0, 0, pshader_endloop, NULL, shader_glsl_end,    D3DPS_VERSION(3,0), -1},
+    {WINED3DSIO_LABEL,    "label",    NULL, 0, 1, pshader_label,   NULL, shader_glsl_label,  D3DPS_VERSION(2,1), -1},
 
     /* Constant definitions */
-    {D3DSIO_DEF,      "def",      "undefined",         1, 5, pshader_def,     NULL, NULL, 0, 0},
-    {D3DSIO_DEFB,     "defb",     GLNAME_REQUIRE_GLSL, 1, 2, pshader_defb,    NULL, NULL, 0, 0},
-    {D3DSIO_DEFI,     "defi",     GLNAME_REQUIRE_GLSL, 1, 5, pshader_defi,    NULL, NULL, 0, 0},
+    {WINED3DSIO_DEF,      "def",      "undefined",         1, 5, pshader_def,     NULL, NULL, 0, 0},
+    {WINED3DSIO_DEFB,     "defb",     GLNAME_REQUIRE_GLSL, 1, 2, pshader_defb,    NULL, NULL, 0, 0},
+    {WINED3DSIO_DEFI,     "defi",     GLNAME_REQUIRE_GLSL, 1, 5, pshader_defi,    NULL, NULL, 0, 0},
 
     /* Texture */
-    {D3DSIO_TEXCOORD, "texcoord", "undefined", 1, 1, pshader_texcoord,    pshader_hw_texcoord, pshader_glsl_texcoord, 0, D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXCOORD, "texcrd",   "undefined", 1, 2, pshader_texcoord,    pshader_hw_texcoord, pshader_glsl_texcoord, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
-    {D3DSIO_TEXKILL,  "texkill",  "KIL",       1, 1, pshader_texkill,     pshader_hw_map2gl, pshader_glsl_texkill, D3DPS_VERSION(1,0), D3DPS_VERSION(3,0)},
-    {D3DSIO_TEX,      "tex",      "undefined", 1, 1, pshader_tex,         pshader_hw_tex, pshader_glsl_tex, 0, D3DPS_VERSION(1,3)},
-    {D3DSIO_TEX,      "texld",    "undefined", 1, 2, pshader_texld,       pshader_hw_tex, pshader_glsl_tex, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
-    {D3DSIO_TEX,      "texld",    "undefined", 1, 3, pshader_texld,       pshader_hw_tex, pshader_glsl_tex, D3DPS_VERSION(2,0), -1},
-    {D3DSIO_TEXBEM,   "texbem",   "undefined", 1, 2, pshader_texbem,      pshader_hw_texbem, pshader_glsl_texbem, 0, D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXBEML,  "texbeml",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texbeml, NULL, NULL, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXREG2AR,"texreg2ar","undefined", 1, 2, pshader_texreg2ar,   pshader_hw_texreg2ar, pshader_glsl_texreg2ar, D3DPS_VERSION(1,1), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXREG2GB,"texreg2gb","undefined", 1, 2, pshader_texreg2gb,   pshader_hw_texreg2gb, pshader_glsl_texreg2gb, D3DPS_VERSION(1,1), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXREG2RGB,   "texreg2rgb",   GLNAME_REQUIRE_GLSL, 1, 2, pshader_texreg2rgb,  NULL, pshader_glsl_texreg2rgb, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x2PAD,   "texm3x2pad",   "undefined", 1, 2, pshader_texm3x2pad,   pshader_hw_texm3x2pad, pshader_glsl_texm3x2pad, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x2TEX,   "texm3x2tex",   "undefined", 1, 2, pshader_texm3x2tex,   pshader_hw_texm3x2tex, pshader_glsl_texm3x2tex, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x3PAD,   "texm3x3pad",   "undefined", 1, 2, pshader_texm3x3pad,   pshader_hw_texm3x3pad, pshader_glsl_texm3x3pad, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x3DIFF,  "texm3x3diff",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x3diff,  NULL, NULL, D3DPS_VERSION(0,0), D3DPS_VERSION(0,0)},
-    {D3DSIO_TEXM3x3SPEC,  "texm3x3spec",  "undefined", 1, 3, pshader_texm3x3spec,  pshader_hw_texm3x3spec, pshader_glsl_texm3x3spec, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x3VSPEC, "texm3x3vspec",  "undefined", 1, 2, pshader_texm3x3vspec, pshader_hw_texm3x3vspec, pshader_glsl_texm3x3vspec, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x3TEX,   "texm3x3tex",   "undefined", 1, 2, pshader_texm3x3tex,   pshader_hw_texm3x3tex, pshader_glsl_texm3x3tex, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXDP3TEX,    "texdp3tex",    GLNAME_REQUIRE_GLSL, 1, 2, pshader_texdp3tex,   NULL, pshader_glsl_texdp3tex, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x2DEPTH, "texm3x2depth", GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x2depth, NULL, pshader_glsl_texm3x2depth, D3DPS_VERSION(1,3), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXDP3,   "texdp3",   GLNAME_REQUIRE_GLSL, 1, 2, pshader_texdp3,   NULL, pshader_glsl_texdp3, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXM3x3,  "texm3x3",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x3,  NULL, pshader_glsl_texm3x3, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
-    {D3DSIO_TEXDEPTH, "texdepth", GLNAME_REQUIRE_GLSL, 1, 1, pshader_texdepth, NULL, pshader_glsl_texdepth, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
-    {D3DSIO_BEM,      "bem",      GLNAME_REQUIRE_GLSL, 1, 3, pshader_bem,      NULL, NULL, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
-    {D3DSIO_DSX,      "dsx",      GLNAME_REQUIRE_GLSL, 1, 2, pshader_dsx,     NULL, NULL, 0, 0},
-    {D3DSIO_DSY,      "dsy",      GLNAME_REQUIRE_GLSL, 1, 2, pshader_dsy,     NULL, NULL, 0, 0},
-    {D3DSIO_TEXLDD,   "texldd",   GLNAME_REQUIRE_GLSL, 1, 5, pshader_texldd,  NULL, NULL, D3DPS_VERSION(2,1), -1},
-    {D3DSIO_SETP,     "setp",     GLNAME_REQUIRE_GLSL, 1, 3, pshader_setp,    NULL, NULL, 0, 0},
-    {D3DSIO_TEXLDL,   "texdl",    GLNAME_REQUIRE_GLSL, 1, 2, pshader_texldl,  NULL, NULL, 0, 0},
-    {D3DSIO_PHASE,    "phase",    GLNAME_REQUIRE_GLSL, 0, 0, pshader_nop,     NULL, NULL, 0, 0},
+    {WINED3DSIO_TEXCOORD, "texcoord", "undefined", 1, 1, pshader_texcoord,    pshader_hw_texcoord, pshader_glsl_texcoord, 0, D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXCOORD, "texcrd",   "undefined", 1, 2, pshader_texcoord,    pshader_hw_texcoord, pshader_glsl_texcoord, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
+    {WINED3DSIO_TEXKILL,  "texkill",  "KIL",       1, 1, pshader_texkill,     pshader_hw_map2gl, pshader_glsl_texkill, D3DPS_VERSION(1,0), D3DPS_VERSION(3,0)},
+    {WINED3DSIO_TEX,      "tex",      "undefined", 1, 1, pshader_tex,         pshader_hw_tex, pshader_glsl_tex, 0, D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEX,      "texld",    "undefined", 1, 2, pshader_texld,       pshader_hw_tex, pshader_glsl_tex, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
+    {WINED3DSIO_TEX,      "texld",    "undefined", 1, 3, pshader_texld,       pshader_hw_tex, pshader_glsl_tex, D3DPS_VERSION(2,0), -1},
+    {WINED3DSIO_TEXBEM,   "texbem",   "undefined", 1, 2, pshader_texbem,      pshader_hw_texbem, pshader_glsl_texbem, 0, D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXBEML,  "texbeml",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texbeml, NULL, NULL, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXREG2AR,"texreg2ar","undefined", 1, 2, pshader_texreg2ar,   pshader_hw_texreg2ar, pshader_glsl_texreg2ar, D3DPS_VERSION(1,1), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXREG2GB,"texreg2gb","undefined", 1, 2, pshader_texreg2gb,   pshader_hw_texreg2gb, pshader_glsl_texreg2gb, D3DPS_VERSION(1,1), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXREG2RGB,   "texreg2rgb",   GLNAME_REQUIRE_GLSL, 1, 2, pshader_texreg2rgb,  NULL, pshader_glsl_texreg2rgb, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x2PAD,   "texm3x2pad",   "undefined", 1, 2, pshader_texm3x2pad,   pshader_hw_texm3x2pad, pshader_glsl_texm3x2pad, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x2TEX,   "texm3x2tex",   "undefined", 1, 2, pshader_texm3x2tex,   pshader_hw_texm3x2tex, pshader_glsl_texm3x2tex, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x3PAD,   "texm3x3pad",   "undefined", 1, 2, pshader_texm3x3pad,   pshader_hw_texm3x3pad, pshader_glsl_texm3x3pad, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x3DIFF,  "texm3x3diff",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x3diff,  NULL, NULL, D3DPS_VERSION(0,0), D3DPS_VERSION(0,0)},
+    {WINED3DSIO_TEXM3x3SPEC,  "texm3x3spec",  "undefined", 1, 3, pshader_texm3x3spec,  pshader_hw_texm3x3spec, pshader_glsl_texm3x3spec, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x3VSPEC, "texm3x3vspec",  "undefined", 1, 2, pshader_texm3x3vspec, pshader_hw_texm3x3vspec, pshader_glsl_texm3x3vspec, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x3TEX,   "texm3x3tex",   "undefined", 1, 2, pshader_texm3x3tex,   pshader_hw_texm3x3tex, pshader_glsl_texm3x3tex, D3DPS_VERSION(1,0), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXDP3TEX,    "texdp3tex",    GLNAME_REQUIRE_GLSL, 1, 2, pshader_texdp3tex,   NULL, pshader_glsl_texdp3tex, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x2DEPTH, "texm3x2depth", GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x2depth, NULL, pshader_glsl_texm3x2depth, D3DPS_VERSION(1,3), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXDP3,   "texdp3",   GLNAME_REQUIRE_GLSL, 1, 2, pshader_texdp3,   NULL, pshader_glsl_texdp3, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXM3x3,  "texm3x3",  GLNAME_REQUIRE_GLSL, 1, 2, pshader_texm3x3,  NULL, pshader_glsl_texm3x3, D3DPS_VERSION(1,2), D3DPS_VERSION(1,3)},
+    {WINED3DSIO_TEXDEPTH, "texdepth", GLNAME_REQUIRE_GLSL, 1, 1, pshader_texdepth, NULL, pshader_glsl_texdepth, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
+    {WINED3DSIO_BEM,      "bem",      GLNAME_REQUIRE_GLSL, 1, 3, pshader_bem,      NULL, NULL, D3DPS_VERSION(1,4), D3DPS_VERSION(1,4)},
+    {WINED3DSIO_DSX,      "dsx",      GLNAME_REQUIRE_GLSL, 1, 2, pshader_dsx,     NULL, NULL, 0, 0},
+    {WINED3DSIO_DSY,      "dsy",      GLNAME_REQUIRE_GLSL, 1, 2, pshader_dsy,     NULL, NULL, 0, 0},
+    {WINED3DSIO_TEXLDD,   "texldd",   GLNAME_REQUIRE_GLSL, 1, 5, pshader_texldd,  NULL, NULL, D3DPS_VERSION(2,1), -1},
+    {WINED3DSIO_SETP,     "setp",     GLNAME_REQUIRE_GLSL, 1, 3, pshader_setp,    NULL, NULL, 0, 0},
+    {WINED3DSIO_TEXLDL,   "texldl",   GLNAME_REQUIRE_GLSL, 1, 2, pshader_texldl,  NULL, NULL, 0, 0},
+    {WINED3DSIO_PHASE,    "phase",    GLNAME_REQUIRE_GLSL, 0, 0, pshader_nop,     NULL, NULL, 0, 0},
     {0,               NULL,       NULL,   0, 0, NULL,            NULL, 0, 0}
 };
 
diff --git a/dlls/wined3d/vertexshader.c b/dlls/wined3d/vertexshader.c
index a229248..92ad174 100644
--- a/dlls/wined3d/vertexshader.c
+++ b/dlls/wined3d/vertexshader.c
@@ -475,35 +475,35 @@ static void vshader_texldl(WINED3DSHADER
 CONST SHADER_OPCODE IWineD3DVertexShaderImpl_shader_ins[] = {
 
     /* Arithmetic */ 
-    {D3DSIO_NOP,  "nop",  "NOP", 0, 0, vshader_nop,  vshader_hw_map2gl, NULL, 0, 0},
-    {D3DSIO_MOV,  "mov",  "MOV", 1, 2, vshader_mov,  vshader_hw_map2gl, shader_glsl_mov, 0, 0},
-    {D3DSIO_ADD,  "add",  "ADD", 1, 3, vshader_add,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_SUB,  "sub",  "SUB", 1, 3, vshader_sub,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_MAD,  "mad",  "MAD", 1, 4, vshader_mad,  vshader_hw_map2gl, shader_glsl_mad, 0, 0},
-    {D3DSIO_MUL,  "mul",  "MUL", 1, 3, vshader_mul,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
-    {D3DSIO_RCP,  "rcp",  "RCP", 1, 2, vshader_rcp,  vshader_hw_map2gl, shader_glsl_rcp, 0, 0},
-    {D3DSIO_RSQ,  "rsq",  "RSQ", 1, 2, vshader_rsq,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_DP3,  "dp3",  "DP3", 1, 3, vshader_dp3,  vshader_hw_map2gl, shader_glsl_dot, 0, 0},
-    {D3DSIO_DP4,  "dp4",  "DP4", 1, 3, vshader_dp4,  vshader_hw_map2gl, shader_glsl_dot, 0, 0},
-    {D3DSIO_MIN,  "min",  "MIN", 1, 3, vshader_min,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_MAX,  "max",  "MAX", 1, 3, vshader_max,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_SLT,  "slt",  "SLT", 1, 3, vshader_slt,  vshader_hw_map2gl, shader_glsl_compare, 0, 0},
-    {D3DSIO_SGE,  "sge",  "SGE", 1, 3, vshader_sge,  vshader_hw_map2gl, shader_glsl_compare, 0, 0},
-    {D3DSIO_ABS,  "abs",  "ABS", 1, 2, vshader_abs,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_EXP,  "exp",  "EX2", 1, 2, vshader_exp,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_LOG,  "log",  "LG2", 1, 2, vshader_log,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_EXPP, "expp", "EXP", 1, 2, vshader_expp, vshader_hw_map2gl, shader_glsl_expp, 0, 0},
-    {D3DSIO_LOGP, "logp", "LOG", 1, 2, vshader_logp, vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_LIT,  "lit",  "LIT", 1, 2, vshader_lit,  vshader_hw_map2gl, shader_glsl_lit, 0, 0},
-    {D3DSIO_DST,  "dst",  "DST", 1, 3, vshader_dst,  vshader_hw_map2gl, shader_glsl_dst, 0, 0},
-    {D3DSIO_LRP,  "lrp",  "LRP", 1, 4, vshader_lrp,  NULL,              shader_glsl_lrp, 0, 0},
-    {D3DSIO_FRC,  "frc",  "FRC", 1, 2, vshader_frc,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_POW,  "pow",  "POW", 1, 3, vshader_pow,  NULL, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_CRS,  "crs",  "XPS", 1, 3, vshader_crs,  NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_NOP,  "nop",  "NOP", 0, 0, vshader_nop,  vshader_hw_map2gl, NULL, 0, 0},
+    {WINED3DSIO_MOV,  "mov",  "MOV", 1, 2, vshader_mov,  vshader_hw_map2gl, shader_glsl_mov, 0, 0},
+    {WINED3DSIO_ADD,  "add",  "ADD", 1, 3, vshader_add,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_SUB,  "sub",  "SUB", 1, 3, vshader_sub,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_MAD,  "mad",  "MAD", 1, 4, vshader_mad,  vshader_hw_map2gl, shader_glsl_mad, 0, 0},
+    {WINED3DSIO_MUL,  "mul",  "MUL", 1, 3, vshader_mul,  vshader_hw_map2gl, shader_glsl_arith, 0, 0},
+    {WINED3DSIO_RCP,  "rcp",  "RCP", 1, 2, vshader_rcp,  vshader_hw_map2gl, shader_glsl_rcp, 0, 0},
+    {WINED3DSIO_RSQ,  "rsq",  "RSQ", 1, 2, vshader_rsq,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_DP3,  "dp3",  "DP3", 1, 3, vshader_dp3,  vshader_hw_map2gl, shader_glsl_dot, 0, 0},
+    {WINED3DSIO_DP4,  "dp4",  "DP4", 1, 3, vshader_dp4,  vshader_hw_map2gl, shader_glsl_dot, 0, 0},
+    {WINED3DSIO_MIN,  "min",  "MIN", 1, 3, vshader_min,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_MAX,  "max",  "MAX", 1, 3, vshader_max,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_SLT,  "slt",  "SLT", 1, 3, vshader_slt,  vshader_hw_map2gl, shader_glsl_compare, 0, 0},
+    {WINED3DSIO_SGE,  "sge",  "SGE", 1, 3, vshader_sge,  vshader_hw_map2gl, shader_glsl_compare, 0, 0},
+    {WINED3DSIO_ABS,  "abs",  "ABS", 1, 2, vshader_abs,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_EXP,  "exp",  "EX2", 1, 2, vshader_exp,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_LOG,  "log",  "LG2", 1, 2, vshader_log,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_EXPP, "expp", "EXP", 1, 2, vshader_expp, vshader_hw_map2gl, shader_glsl_expp, 0, 0},
+    {WINED3DSIO_LOGP, "logp", "LOG", 1, 2, vshader_logp, vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_LIT,  "lit",  "LIT", 1, 2, vshader_lit,  vshader_hw_map2gl, shader_glsl_lit, 0, 0},
+    {WINED3DSIO_DST,  "dst",  "DST", 1, 3, vshader_dst,  vshader_hw_map2gl, shader_glsl_dst, 0, 0},
+    {WINED3DSIO_LRP,  "lrp",  "LRP", 1, 4, vshader_lrp,  NULL,              shader_glsl_lrp, 0, 0},
+    {WINED3DSIO_FRC,  "frc",  "FRC", 1, 2, vshader_frc,  vshader_hw_map2gl, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_POW,  "pow",  "POW", 1, 3, vshader_pow,  NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_CRS,  "crs",  "XPS", 1, 3, vshader_crs,  NULL, shader_glsl_map2gl, 0, 0},
     /* TODO: sng can possibly be performed a  s
         RCP tmp, vec
         MUL out, tmp, vec*/
-    {D3DSIO_SGN,  "sgn",  NULL, 1, 2, vshader_sgn,  NULL,   shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_SGN,  "sgn",  NULL, 1, 2, vshader_sgn,  NULL,   shader_glsl_map2gl, 0, 0},
     /* TODO: xyz normalise can be performed as VS_ARB using one temporary register,
         DP3 tmp , vec, vec;
         RSQ tmp, tmp.x;
@@ -514,45 +514,45 @@ CONST SHADER_OPCODE IWineD3DVertexShader
         MUL vec, vec, tmp;
 
     */
-    {D3DSIO_NRM,      "nrm",      NULL, 1, 2, vshader_nrm,    NULL, shader_glsl_map2gl, 0, 0},
-    {D3DSIO_SINCOS,   "sincos",   NULL, 1, 4, vshader_sincos2, NULL, shader_glsl_sincos, D3DVS_VERSION(2,0), D3DVS_VERSION(2,0)},
-    {D3DSIO_SINCOS,   "sincos",   NULL, 1, 2, vshader_sincos3, NULL, shader_glsl_sincos, D3DVS_VERSION(3,0), -1},
+    {WINED3DSIO_NRM,      "nrm",      NULL, 1, 2, vshader_nrm,    NULL, shader_glsl_map2gl, 0, 0},
+    {WINED3DSIO_SINCOS,   "sincos",   NULL, 1, 4, vshader_sincos2, NULL, shader_glsl_sincos, D3DVS_VERSION(2,0), D3DVS_VERSION(2,0)},
+    {WINED3DSIO_SINCOS,   "sincos",   NULL, 1, 2, vshader_sincos3, NULL, shader_glsl_sincos, D3DVS_VERSION(3,0), -1},
 
     /* Matrix */
-    {D3DSIO_M4x4, "m4x4", "undefined", 1, 3, vshader_m4x4, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M4x3, "m4x3", "undefined", 1, 3, vshader_m4x3, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x4, "m3x4", "undefined", 1, 3, vshader_m3x4, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x3, "m3x3", "undefined", 1, 3, vshader_m3x3, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
-    {D3DSIO_M3x2, "m3x2", "undefined", 1, 3, vshader_m3x2, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M4x4, "m4x4", "undefined", 1, 3, vshader_m4x4, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M4x3, "m4x3", "undefined", 1, 3, vshader_m4x3, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x4, "m3x4", "undefined", 1, 3, vshader_m3x4, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x3, "m3x3", "undefined", 1, 3, vshader_m3x3, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
+    {WINED3DSIO_M3x2, "m3x2", "undefined", 1, 3, vshader_m3x2, vshader_hw_mnxn, shader_glsl_mnxn, 0, 0},
 
     /* Declare registers */
-    {D3DSIO_DCL,      "dcl",      NULL,                0, 2, vshader_dcl,     NULL, NULL, 0, 0},
+    {WINED3DSIO_DCL,      "dcl",      NULL,                0, 2, vshader_dcl,     NULL, NULL, 0, 0},
 
     /* Constant definitions */
-    {D3DSIO_DEF,      "def",      NULL,                1, 5, vshader_def,     NULL, NULL, 0, 0},
-    {D3DSIO_DEFB,     "defb",     GLNAME_REQUIRE_GLSL, 1, 2, vshader_defb,    NULL, NULL, 0, 0},
-    {D3DSIO_DEFI,     "defi",     GLNAME_REQUIRE_GLSL, 1, 5, vshader_defi,    NULL, NULL, 0, 0},
+    {WINED3DSIO_DEF,      "def",      NULL,                1, 5, vshader_def,     NULL, NULL, 0, 0},
+    {WINED3DSIO_DEFB,     "defb",     GLNAME_REQUIRE_GLSL, 1, 2, vshader_defb,    NULL, NULL, 0, 0},
+    {WINED3DSIO_DEFI,     "defi",     GLNAME_REQUIRE_GLSL, 1, 5, vshader_defi,    NULL, NULL, 0, 0},
 
     /* Flow control - requires GLSL or software shaders */
-    {D3DSIO_REP ,     "rep",      NULL, 0, 1, vshader_rep,     NULL, shader_glsl_rep,    D3DVS_VERSION(2,0), -1},
-    {D3DSIO_ENDREP,   "endrep",   NULL, 0, 0, vshader_endrep,  NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
-    {D3DSIO_IF,       "if",       NULL, 0, 1, vshader_if,      NULL, shader_glsl_if,     D3DVS_VERSION(2,0), -1},
-    {D3DSIO_IFC,      "ifc",      NULL, 0, 2, vshader_ifc,     NULL, shader_glsl_ifc,    D3DVS_VERSION(2,1), -1},
-    {D3DSIO_ELSE,     "else",     NULL, 0, 0, vshader_else,    NULL, shader_glsl_else,   D3DVS_VERSION(2,0), -1},
-    {D3DSIO_ENDIF,    "endif",    NULL, 0, 0, vshader_endif,   NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
-    {D3DSIO_BREAK,    "break",    NULL, 0, 0, vshader_break,   NULL, shader_glsl_break,  D3DVS_VERSION(2,1), -1},
-    {D3DSIO_BREAKC,   "breakc",   NULL, 0, 2, vshader_breakc,  NULL, shader_glsl_breakc, D3DVS_VERSION(2,1), -1},
-    {D3DSIO_BREAKP,   "breakp",   GLNAME_REQUIRE_GLSL, 0, 1, vshader_breakp,  NULL, NULL, 0, 0},
-    {D3DSIO_CALL,     "call",     NULL, 0, 1, vshader_call,    NULL, shader_glsl_call,   D3DVS_VERSION(2,0), -1},
-    {D3DSIO_CALLNZ,   "callnz",   NULL, 0, 2, vshader_callnz,  NULL, shader_glsl_callnz, D3DVS_VERSION(2,0), -1},
-    {D3DSIO_LOOP,     "loop",     NULL, 0, 2, vshader_loop,    NULL, shader_glsl_loop,   D3DVS_VERSION(2,0), -1},
-    {D3DSIO_RET,      "ret",      NULL, 0, 0, vshader_ret,     NULL, NULL,               D3DVS_VERSION(2,0), -1},
-    {D3DSIO_ENDLOOP,  "endloop",  NULL, 0, 0, vshader_endloop, NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
-    {D3DSIO_LABEL,    "label",    NULL, 0, 1, vshader_label,   NULL, shader_glsl_label,  D3DVS_VERSION(2,0), -1},
-
-    {D3DSIO_MOVA,     "mova",     GLNAME_REQUIRE_GLSL, 1, 2, vshader_mova,    NULL, shader_glsl_mov, 0, 0},
-    {D3DSIO_SETP,     "setp",     GLNAME_REQUIRE_GLSL, 1, 3, vshader_setp,    NULL, NULL, 0, 0},
-    {D3DSIO_TEXLDL,   "texdl",    GLNAME_REQUIRE_GLSL, 1, 2, vshader_texldl,  NULL, NULL, 0, 0},
+    {WINED3DSIO_REP ,     "rep",      NULL, 0, 1, vshader_rep,     NULL, shader_glsl_rep,    D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_ENDREP,   "endrep",   NULL, 0, 0, vshader_endrep,  NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_IF,       "if",       NULL, 0, 1, vshader_if,      NULL, shader_glsl_if,     D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_IFC,      "ifc",      NULL, 0, 2, vshader_ifc,     NULL, shader_glsl_ifc,    D3DVS_VERSION(2,1), -1},
+    {WINED3DSIO_ELSE,     "else",     NULL, 0, 0, vshader_else,    NULL, shader_glsl_else,   D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_ENDIF,    "endif",    NULL, 0, 0, vshader_endif,   NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_BREAK,    "break",    NULL, 0, 0, vshader_break,   NULL, shader_glsl_break,  D3DVS_VERSION(2,1), -1},
+    {WINED3DSIO_BREAKC,   "breakc",   NULL, 0, 2, vshader_breakc,  NULL, shader_glsl_breakc, D3DVS_VERSION(2,1), -1},
+    {WINED3DSIO_BREAKP,   "breakp",   GLNAME_REQUIRE_GLSL, 0, 1, vshader_breakp,  NULL, NULL, 0, 0},
+    {WINED3DSIO_CALL,     "call",     NULL, 0, 1, vshader_call,    NULL, shader_glsl_call,   D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_CALLNZ,   "callnz",   NULL, 0, 2, vshader_callnz,  NULL, shader_glsl_callnz, D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_LOOP,     "loop",     NULL, 0, 2, vshader_loop,    NULL, shader_glsl_loop,   D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_RET,      "ret",      NULL, 0, 0, vshader_ret,     NULL, NULL,               D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_ENDLOOP,  "endloop",  NULL, 0, 0, vshader_endloop, NULL, shader_glsl_end,    D3DVS_VERSION(2,0), -1},
+    {WINED3DSIO_LABEL,    "label",    NULL, 0, 1, vshader_label,   NULL, shader_glsl_label,  D3DVS_VERSION(2,0), -1},
+
+    {WINED3DSIO_MOVA,     "mova",     GLNAME_REQUIRE_GLSL, 1, 2, vshader_mova,    NULL, shader_glsl_mov, 0, 0},
+    {WINED3DSIO_SETP,     "setp",     GLNAME_REQUIRE_GLSL, 1, 3, vshader_setp,    NULL, NULL, 0, 0},
+    {WINED3DSIO_TEXLDL,   "texdl",    GLNAME_REQUIRE_GLSL, 1, 2, vshader_texldl,  NULL, NULL, 0, 0},
     {0,               NULL,       NULL,   0, 0, NULL,            NULL, 0, 0}
 };
 
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index b859ade..0ec3654 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -39,6 +39,7 @@ #include "wine/unicode.h"
 
 #include "d3d9.h"
 #include "d3d9types.h"
+#include "wined3d_types.h"
 #include "ddraw.h"
 #include "wine/wined3d_interface.h"
 #include "wine/wined3d_gl.h"
@@ -1673,7 +1674,7 @@ inline static BOOL shader_is_vshader_ver
 }
 
 inline static BOOL shader_is_comment(DWORD token) {
-    return D3DSIO_COMMENT == (token & D3DSI_OPCODE_MASK);
+    return WINED3DSIO_COMMENT == (token & D3DSI_OPCODE_MASK);
 }
 
 /* Internally used shader constants. Applications can use constants 0 to GL_LIMITS(vshader_constantsF) - 1,
diff --git a/dlls/wined3d/wined3d_types.h b/dlls/wined3d/wined3d_types.h
new file mode 100644
index 0000000..f3fea9a
--- /dev/null
+++ b/dlls/wined3d/wined3d_types.h
@@ -0,0 +1,119 @@
+/*
+ * Direct3D wine internal header: D3D equivalent types
+ *
+ * Copyright 2002-2003 Jason Edmeades
+ * Copyright 2002-2003 Raphael Junqueira
+ * Copyright 2005 Oliver Stieber
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#ifndef __WINE_WINED3D_TYPES_INTERNAL_H
+#define __WINE_WINED3D_TYPES_INTERNAL_H
+
+/** opcodes types for PS and VS */
+typedef enum _WINED3DSHADER_INSTRUCTION_OPCODE_TYPE {
+  WINED3DSIO_NOP          =  0,
+  WINED3DSIO_MOV          =  1,
+  WINED3DSIO_ADD          =  2,
+  WINED3DSIO_SUB          =  3,
+  WINED3DSIO_MAD          =  4,
+  WINED3DSIO_MUL          =  5,
+  WINED3DSIO_RCP          =  6,
+  WINED3DSIO_RSQ          =  7,
+  WINED3DSIO_DP3          =  8,
+  WINED3DSIO_DP4          =  9,
+  WINED3DSIO_MIN          = 10,
+  WINED3DSIO_MAX          = 11,
+  WINED3DSIO_SLT          = 12,
+  WINED3DSIO_SGE          = 13,
+  WINED3DSIO_EXP          = 14,
+  WINED3DSIO_LOG          = 15,
+  WINED3DSIO_LIT          = 16,
+  WINED3DSIO_DST          = 17,
+  WINED3DSIO_LRP          = 18,
+  WINED3DSIO_FRC          = 19,
+  WINED3DSIO_M4x4         = 20,
+  WINED3DSIO_M4x3         = 21,
+  WINED3DSIO_M3x4         = 22,
+  WINED3DSIO_M3x3         = 23,
+  WINED3DSIO_M3x2         = 24,
+  WINED3DSIO_CALL         = 25,
+  WINED3DSIO_CALLNZ       = 26,
+  WINED3DSIO_LOOP         = 27,
+  WINED3DSIO_RET          = 28,
+  WINED3DSIO_ENDLOOP      = 29,
+  WINED3DSIO_LABEL        = 30,
+  WINED3DSIO_DCL          = 31,
+  WINED3DSIO_POW          = 32,
+  WINED3DSIO_CRS          = 33,
+  WINED3DSIO_SGN          = 34,
+  WINED3DSIO_ABS          = 35,
+  WINED3DSIO_NRM          = 36,
+  WINED3DSIO_SINCOS       = 37,
+  WINED3DSIO_REP          = 38,
+  WINED3DSIO_ENDREP       = 39,
+  WINED3DSIO_IF           = 40,
+  WINED3DSIO_IFC          = 41,
+  WINED3DSIO_ELSE         = 42,
+  WINED3DSIO_ENDIF        = 43,
+  WINED3DSIO_BREAK        = 44,
+  WINED3DSIO_BREAKC       = 45,
+  WINED3DSIO_MOVA         = 46,
+  WINED3DSIO_DEFB         = 47,
+  WINED3DSIO_DEFI         = 48,
+
+  WINED3DSIO_TEXCOORD     = 64,
+  WINED3DSIO_TEXKILL      = 65,
+  WINED3DSIO_TEX          = 66,
+  WINED3DSIO_TEXBEM       = 67,
+  WINED3DSIO_TEXBEML      = 68,
+  WINED3DSIO_TEXREG2AR    = 69,
+  WINED3DSIO_TEXREG2GB    = 70,
+  WINED3DSIO_TEXM3x2PAD   = 71,
+  WINED3DSIO_TEXM3x2TEX   = 72,
+  WINED3DSIO_TEXM3x3PAD   = 73,
+  WINED3DSIO_TEXM3x3TEX   = 74,
+  WINED3DSIO_TEXM3x3DIFF  = 75,
+  WINED3DSIO_TEXM3x3SPEC  = 76,
+  WINED3DSIO_TEXM3x3VSPEC = 77,
+  WINED3DSIO_EXPP         = 78,
+  WINED3DSIO_LOGP         = 79,
+  WINED3DSIO_CND          = 80,
+  WINED3DSIO_DEF          = 81,
+  WINED3DSIO_TEXREG2RGB   = 82,
+  WINED3DSIO_TEXDP3TEX    = 83,
+  WINED3DSIO_TEXM3x2DEPTH = 84,
+  WINED3DSIO_TEXDP3       = 85,
+  WINED3DSIO_TEXM3x3      = 86,
+  WINED3DSIO_TEXDEPTH     = 87,
+  WINED3DSIO_CMP          = 88,
+  WINED3DSIO_BEM          = 89,
+  WINED3DSIO_DP2ADD       = 90,
+  WINED3DSIO_DSX          = 91,
+  WINED3DSIO_DSY          = 92,
+  WINED3DSIO_TEXLDD       = 93,
+  WINED3DSIO_SETP         = 94,
+  WINED3DSIO_TEXLDL       = 95,
+  WINED3DSIO_BREAKP       = 96,
+
+  WINED3DSIO_PHASE        = 0xFFFD,
+  WINED3DSIO_COMMENT      = 0xFFFE,
+  WINED3DSIO_END          = 0XFFFF,
+
+  WINED3DSIO_FORCE_DWORD  = 0X7FFFFFFF /** for 32-bit alignment */
+} WINED3DSHADER_INSTRUCTION_OPCODE_TYPE;
+
+#endif
-- 
1.4.2.1



More information about the wine-patches mailing list