Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
18d7a73a
Commit
18d7a73a
authored
Oct 11, 2010
by
Henri Verbeet
Committed by
Alexandre Julliard
Oct 11, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Recognize the SM4 sample_l opcode.
parent
407ed1b8
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
66 additions
and
60 deletions
+66
-60
arb_program_shader.c
dlls/wined3d/arb_program_shader.c
+1
-0
glsl_shader.c
dlls/wined3d/glsl_shader.c
+1
-0
shader.c
dlls/wined3d/shader.c
+1
-0
shader_sm4.c
dlls/wined3d/shader_sm4.c
+62
-60
wined3d_private.h
dlls/wined3d/wined3d_private.h
+1
-0
No files found.
dlls/wined3d/arb_program_shader.c
View file @
18d7a73a
...
@@ -4996,6 +4996,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL
...
@@ -4996,6 +4996,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL
/* WINED3DSIH_RET */
shader_hw_ret
,
/* WINED3DSIH_RET */
shader_hw_ret
,
/* WINED3DSIH_RSQ */
shader_hw_scalar_op
,
/* WINED3DSIH_RSQ */
shader_hw_scalar_op
,
/* WINED3DSIH_SAMPLE */
NULL
,
/* WINED3DSIH_SAMPLE */
NULL
,
/* WINED3DSIH_SAMPLE_LOD */
NULL
,
/* WINED3DSIH_SETP */
NULL
,
/* WINED3DSIH_SETP */
NULL
,
/* WINED3DSIH_SGE */
shader_hw_map2gl
,
/* WINED3DSIH_SGE */
shader_hw_map2gl
,
/* WINED3DSIH_SGN */
shader_hw_sgn
,
/* WINED3DSIH_SGN */
shader_hw_sgn
,
...
...
dlls/wined3d/glsl_shader.c
View file @
18d7a73a
...
@@ -5054,6 +5054,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB
...
@@ -5054,6 +5054,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB
/* WINED3DSIH_RET */
shader_glsl_ret
,
/* WINED3DSIH_RET */
shader_glsl_ret
,
/* WINED3DSIH_RSQ */
shader_glsl_rsq
,
/* WINED3DSIH_RSQ */
shader_glsl_rsq
,
/* WINED3DSIH_SAMPLE */
NULL
,
/* WINED3DSIH_SAMPLE */
NULL
,
/* WINED3DSIH_SAMPLE_LOD */
NULL
,
/* WINED3DSIH_SETP */
NULL
,
/* WINED3DSIH_SETP */
NULL
,
/* WINED3DSIH_SGE */
shader_glsl_compare
,
/* WINED3DSIH_SGE */
shader_glsl_compare
,
/* WINED3DSIH_SGN */
shader_glsl_sgn
,
/* WINED3DSIH_SGN */
shader_glsl_sgn
,
...
...
dlls/wined3d/shader.c
View file @
18d7a73a
...
@@ -100,6 +100,7 @@ static const char * const shader_opcode_names[] =
...
@@ -100,6 +100,7 @@ static const char * const shader_opcode_names[] =
/* WINED3DSIH_RET */
"ret"
,
/* WINED3DSIH_RET */
"ret"
,
/* WINED3DSIH_RSQ */
"rsq"
,
/* WINED3DSIH_RSQ */
"rsq"
,
/* WINED3DSIH_SAMPLE */
"sample"
,
/* WINED3DSIH_SAMPLE */
"sample"
,
/* WINED3DSIH_SAMPLE_LOD */
"sample_l"
,
/* WINED3DSIH_SETP */
"setp"
,
/* WINED3DSIH_SETP */
"setp"
,
/* WINED3DSIH_SGE */
"sge"
,
/* WINED3DSIH_SGE */
"sge"
,
/* WINED3DSIH_SGN */
"sgn"
,
/* WINED3DSIH_SGN */
"sgn"
,
...
...
dlls/wined3d/shader_sm4.c
View file @
18d7a73a
...
@@ -48,36 +48,37 @@ WINE_DEFAULT_DEBUG_CHANNEL(d3d_shader);
...
@@ -48,36 +48,37 @@ WINE_DEFAULT_DEBUG_CHANNEL(d3d_shader);
enum
wined3d_sm4_opcode
enum
wined3d_sm4_opcode
{
{
WINED3D_SM4_OP_ADD
=
0x00
,
WINED3D_SM4_OP_ADD
=
0x00
,
WINED3D_SM4_OP_AND
=
0x01
,
WINED3D_SM4_OP_AND
=
0x01
,
WINED3D_SM4_OP_BREAK
=
0x02
,
WINED3D_SM4_OP_BREAK
=
0x02
,
WINED3D_SM4_OP_BREAKC
=
0x03
,
WINED3D_SM4_OP_BREAKC
=
0x03
,
WINED3D_SM4_OP_CUT
=
0x09
,
WINED3D_SM4_OP_CUT
=
0x09
,
WINED3D_SM4_OP_DP3
=
0x10
,
WINED3D_SM4_OP_DP3
=
0x10
,
WINED3D_SM4_OP_DP4
=
0x11
,
WINED3D_SM4_OP_DP4
=
0x11
,
WINED3D_SM4_OP_EMIT
=
0x13
,
WINED3D_SM4_OP_EMIT
=
0x13
,
WINED3D_SM4_OP_ENDIF
=
0x15
,
WINED3D_SM4_OP_ENDIF
=
0x15
,
WINED3D_SM4_OP_ENDLOOP
=
0x16
,
WINED3D_SM4_OP_ENDLOOP
=
0x16
,
WINED3D_SM4_OP_EXP
=
0x19
,
WINED3D_SM4_OP_EXP
=
0x19
,
WINED3D_SM4_OP_FRC
=
0x1a
,
WINED3D_SM4_OP_FRC
=
0x1a
,
WINED3D_SM4_OP_IADD
=
0x1e
,
WINED3D_SM4_OP_IADD
=
0x1e
,
WINED3D_SM4_OP_IF
=
0x1f
,
WINED3D_SM4_OP_IF
=
0x1f
,
WINED3D_SM4_OP_IGE
=
0x21
,
WINED3D_SM4_OP_IGE
=
0x21
,
WINED3D_SM4_OP_IMUL
=
0x26
,
WINED3D_SM4_OP_IMUL
=
0x26
,
WINED3D_SM4_OP_ITOF
=
0x2b
,
WINED3D_SM4_OP_ITOF
=
0x2b
,
WINED3D_SM4_OP_LOG
=
0x2f
,
WINED3D_SM4_OP_LOG
=
0x2f
,
WINED3D_SM4_OP_LOOP
=
0x30
,
WINED3D_SM4_OP_LOOP
=
0x30
,
WINED3D_SM4_OP_LT
=
0x31
,
WINED3D_SM4_OP_LT
=
0x31
,
WINED3D_SM4_OP_MAD
=
0x32
,
WINED3D_SM4_OP_MAD
=
0x32
,
WINED3D_SM4_OP_MIN
=
0x33
,
WINED3D_SM4_OP_MIN
=
0x33
,
WINED3D_SM4_OP_MAX
=
0x34
,
WINED3D_SM4_OP_MAX
=
0x34
,
WINED3D_SM4_OP_MOV
=
0x36
,
WINED3D_SM4_OP_MOV
=
0x36
,
WINED3D_SM4_OP_MOVC
=
0x37
,
WINED3D_SM4_OP_MOVC
=
0x37
,
WINED3D_SM4_OP_MUL
=
0x38
,
WINED3D_SM4_OP_MUL
=
0x38
,
WINED3D_SM4_OP_RET
=
0x3e
,
WINED3D_SM4_OP_RET
=
0x3e
,
WINED3D_SM4_OP_RSQ
=
0x44
,
WINED3D_SM4_OP_RSQ
=
0x44
,
WINED3D_SM4_OP_SAMPLE
=
0x45
,
WINED3D_SM4_OP_SAMPLE
=
0x45
,
WINED3D_SM4_OP_SINCOS
=
0x4d
,
WINED3D_SM4_OP_SAMPLE_LOD
=
0x48
,
WINED3D_SM4_OP_SINCOS
=
0x4d
,
};
};
enum
wined3d_sm4_register_type
enum
wined3d_sm4_register_type
...
@@ -120,36 +121,37 @@ struct sysval_map
...
@@ -120,36 +121,37 @@ struct sysval_map
static
const
struct
wined3d_sm4_opcode_info
opcode_table
[]
=
static
const
struct
wined3d_sm4_opcode_info
opcode_table
[]
=
{
{
{
WINED3D_SM4_OP_ADD
,
WINED3DSIH_ADD
,
1
,
2
},
{
WINED3D_SM4_OP_ADD
,
WINED3DSIH_ADD
,
1
,
2
},
{
WINED3D_SM4_OP_AND
,
WINED3DSIH_AND
,
1
,
2
},
{
WINED3D_SM4_OP_AND
,
WINED3DSIH_AND
,
1
,
2
},
{
WINED3D_SM4_OP_BREAK
,
WINED3DSIH_BREAK
,
0
,
0
},
{
WINED3D_SM4_OP_BREAK
,
WINED3DSIH_BREAK
,
0
,
0
},
{
WINED3D_SM4_OP_BREAKC
,
WINED3DSIH_BREAKP
,
0
,
1
},
{
WINED3D_SM4_OP_BREAKC
,
WINED3DSIH_BREAKP
,
0
,
1
},
{
WINED3D_SM4_OP_CUT
,
WINED3DSIH_CUT
,
0
,
0
},
{
WINED3D_SM4_OP_CUT
,
WINED3DSIH_CUT
,
0
,
0
},
{
WINED3D_SM4_OP_DP3
,
WINED3DSIH_DP3
,
1
,
2
},
{
WINED3D_SM4_OP_DP3
,
WINED3DSIH_DP3
,
1
,
2
},
{
WINED3D_SM4_OP_DP4
,
WINED3DSIH_DP4
,
1
,
2
},
{
WINED3D_SM4_OP_DP4
,
WINED3DSIH_DP4
,
1
,
2
},
{
WINED3D_SM4_OP_EMIT
,
WINED3DSIH_EMIT
,
0
,
0
},
{
WINED3D_SM4_OP_EMIT
,
WINED3DSIH_EMIT
,
0
,
0
},
{
WINED3D_SM4_OP_ENDIF
,
WINED3DSIH_ENDIF
,
0
,
0
},
{
WINED3D_SM4_OP_ENDIF
,
WINED3DSIH_ENDIF
,
0
,
0
},
{
WINED3D_SM4_OP_ENDLOOP
,
WINED3DSIH_ENDLOOP
,
0
,
0
},
{
WINED3D_SM4_OP_ENDLOOP
,
WINED3DSIH_ENDLOOP
,
0
,
0
},
{
WINED3D_SM4_OP_EXP
,
WINED3DSIH_EXP
,
1
,
1
},
{
WINED3D_SM4_OP_EXP
,
WINED3DSIH_EXP
,
1
,
1
},
{
WINED3D_SM4_OP_FRC
,
WINED3DSIH_FRC
,
1
,
1
},
{
WINED3D_SM4_OP_FRC
,
WINED3DSIH_FRC
,
1
,
1
},
{
WINED3D_SM4_OP_IADD
,
WINED3DSIH_IADD
,
1
,
2
},
{
WINED3D_SM4_OP_IADD
,
WINED3DSIH_IADD
,
1
,
2
},
{
WINED3D_SM4_OP_IF
,
WINED3DSIH_IF
,
0
,
1
},
{
WINED3D_SM4_OP_IF
,
WINED3DSIH_IF
,
0
,
1
},
{
WINED3D_SM4_OP_IGE
,
WINED3DSIH_IGE
,
1
,
2
},
{
WINED3D_SM4_OP_IGE
,
WINED3DSIH_IGE
,
1
,
2
},
{
WINED3D_SM4_OP_IMUL
,
WINED3DSIH_IMUL
,
2
,
2
},
{
WINED3D_SM4_OP_IMUL
,
WINED3DSIH_IMUL
,
2
,
2
},
{
WINED3D_SM4_OP_ITOF
,
WINED3DSIH_ITOF
,
1
,
1
},
{
WINED3D_SM4_OP_ITOF
,
WINED3DSIH_ITOF
,
1
,
1
},
{
WINED3D_SM4_OP_LOG
,
WINED3DSIH_LOG
,
1
,
1
},
{
WINED3D_SM4_OP_LOG
,
WINED3DSIH_LOG
,
1
,
1
},
{
WINED3D_SM4_OP_LOOP
,
WINED3DSIH_LOOP
,
0
,
0
},
{
WINED3D_SM4_OP_LOOP
,
WINED3DSIH_LOOP
,
0
,
0
},
{
WINED3D_SM4_OP_LT
,
WINED3DSIH_LT
,
1
,
2
},
{
WINED3D_SM4_OP_LT
,
WINED3DSIH_LT
,
1
,
2
},
{
WINED3D_SM4_OP_MAD
,
WINED3DSIH_MAD
,
1
,
3
},
{
WINED3D_SM4_OP_MAD
,
WINED3DSIH_MAD
,
1
,
3
},
{
WINED3D_SM4_OP_MIN
,
WINED3DSIH_MIN
,
1
,
2
},
{
WINED3D_SM4_OP_MIN
,
WINED3DSIH_MIN
,
1
,
2
},
{
WINED3D_SM4_OP_MAX
,
WINED3DSIH_MAX
,
1
,
2
},
{
WINED3D_SM4_OP_MAX
,
WINED3DSIH_MAX
,
1
,
2
},
{
WINED3D_SM4_OP_MOV
,
WINED3DSIH_MOV
,
1
,
1
},
{
WINED3D_SM4_OP_MOV
,
WINED3DSIH_MOV
,
1
,
1
},
{
WINED3D_SM4_OP_MOVC
,
WINED3DSIH_MOVC
,
1
,
3
},
{
WINED3D_SM4_OP_MOVC
,
WINED3DSIH_MOVC
,
1
,
3
},
{
WINED3D_SM4_OP_MUL
,
WINED3DSIH_MUL
,
1
,
2
},
{
WINED3D_SM4_OP_MUL
,
WINED3DSIH_MUL
,
1
,
2
},
{
WINED3D_SM4_OP_RET
,
WINED3DSIH_RET
,
0
,
0
},
{
WINED3D_SM4_OP_RET
,
WINED3DSIH_RET
,
0
,
0
},
{
WINED3D_SM4_OP_RSQ
,
WINED3DSIH_RSQ
,
1
,
1
},
{
WINED3D_SM4_OP_RSQ
,
WINED3DSIH_RSQ
,
1
,
1
},
{
WINED3D_SM4_OP_SAMPLE
,
WINED3DSIH_SAMPLE
,
1
,
3
},
{
WINED3D_SM4_OP_SAMPLE
,
WINED3DSIH_SAMPLE
,
1
,
3
},
{
WINED3D_SM4_OP_SINCOS
,
WINED3DSIH_SINCOS
,
2
,
1
},
{
WINED3D_SM4_OP_SAMPLE_LOD
,
WINED3DSIH_SAMPLE_LOD
,
1
,
4
},
{
WINED3D_SM4_OP_SINCOS
,
WINED3DSIH_SINCOS
,
2
,
1
},
};
};
static
const
WINED3DSHADER_PARAM_REGISTER_TYPE
register_type_table
[]
=
static
const
WINED3DSHADER_PARAM_REGISTER_TYPE
register_type_table
[]
=
...
...
dlls/wined3d/wined3d_private.h
View file @
18d7a73a
...
@@ -468,6 +468,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER
...
@@ -468,6 +468,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER
WINED3DSIH_RET
,
WINED3DSIH_RET
,
WINED3DSIH_RSQ
,
WINED3DSIH_RSQ
,
WINED3DSIH_SAMPLE
,
WINED3DSIH_SAMPLE
,
WINED3DSIH_SAMPLE_LOD
,
WINED3DSIH_SETP
,
WINED3DSIH_SETP
,
WINED3DSIH_SGE
,
WINED3DSIH_SGE
,
WINED3DSIH_SGN
,
WINED3DSIH_SGN
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment