ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

shader_sm4.c File Reference
#include "config.h"
#include "wine/port.h"
#include "wined3d_private.h"

Go to the source code of this file.

Data Structures

struct  wined3d_sm4_data
struct  wined3d_sm4_opcode_info
struct  sysval_map

Defines

#define WINED3D_SM4_INSTRUCTION_MODIFIER   (1 << 31)
#define WINED3D_SM4_INSTRUCTION_LENGTH_SHIFT   24
#define WINED3D_SM4_INSTRUCTION_LENGTH_MASK   (0xf << WINED3D_SM4_INSTRUCTION_LENGTH_SHIFT)
#define WINED3D_SM4_OPCODE_MASK   0xff
#define WINED3D_SM4_REGISTER_MODIFIER   (1 << 31)
#define WINED3D_SM4_REGISTER_ORDER_SHIFT   20
#define WINED3D_SM4_REGISTER_ORDER_MASK   (0x3 << WINED3D_SM4_REGISTER_ORDER_SHIFT)
#define WINED3D_SM4_REGISTER_TYPE_SHIFT   12
#define WINED3D_SM4_REGISTER_TYPE_MASK   (0xf << WINED3D_SM4_REGISTER_TYPE_SHIFT)
#define WINED3D_SM4_IMMCONST_TYPE_SHIFT   0
#define WINED3D_SM4_IMMCONST_TYPE_MASK   (0x3 << WINED3D_SM4_IMMCONST_TYPE_SHIFT)
#define WINED3D_SM4_WRITEMASK_SHIFT   4
#define WINED3D_SM4_WRITEMASK_MASK   (0xf << WINED3D_SM4_WRITEMASK_SHIFT)
#define WINED3D_SM4_SWIZZLE_SHIFT   4
#define WINED3D_SM4_SWIZZLE_MASK   (0xff << WINED3D_SM4_SWIZZLE_SHIFT)
#define WINED3D_SM4_VERSION_MAJOR(version)   (((version) >> 4) & 0xf)
#define WINED3D_SM4_VERSION_MINOR(version)   (((version) >> 0) & 0xf)

Enumerations

enum  wined3d_sm4_opcode {
  WINED3D_SM4_OP_ADD = 0x00, WINED3D_SM4_OP_AND = 0x01, WINED3D_SM4_OP_BREAK = 0x02, WINED3D_SM4_OP_BREAKC = 0x03,
  WINED3D_SM4_OP_CUT = 0x09, WINED3D_SM4_OP_DERIV_RTX = 0x0b, WINED3D_SM4_OP_DERIV_RTY = 0x0c, WINED3D_SM4_OP_DIV = 0x0e,
  WINED3D_SM4_OP_DP3 = 0x10, WINED3D_SM4_OP_DP4 = 0x11, WINED3D_SM4_OP_EMIT = 0x13, WINED3D_SM4_OP_ENDIF = 0x15,
  WINED3D_SM4_OP_ENDLOOP = 0x16, WINED3D_SM4_OP_EQ = 0x18, WINED3D_SM4_OP_EXP = 0x19, WINED3D_SM4_OP_FRC = 0x1a,
  WINED3D_SM4_OP_FTOI = 0x1b, WINED3D_SM4_OP_GE = 0x1d, WINED3D_SM4_OP_IADD = 0x1e, WINED3D_SM4_OP_IF = 0x1f,
  WINED3D_SM4_OP_IEQ = 0x20, WINED3D_SM4_OP_IGE = 0x21, WINED3D_SM4_OP_IMUL = 0x26, WINED3D_SM4_OP_ITOF = 0x2b,
  WINED3D_SM4_OP_LD = 0x2d, WINED3D_SM4_OP_LOG = 0x2f, WINED3D_SM4_OP_LOOP = 0x30, WINED3D_SM4_OP_LT = 0x31,
  WINED3D_SM4_OP_MAD = 0x32, WINED3D_SM4_OP_MIN = 0x33, WINED3D_SM4_OP_MAX = 0x34, WINED3D_SM4_OP_MOV = 0x36,
  WINED3D_SM4_OP_MOVC = 0x37, WINED3D_SM4_OP_MUL = 0x38, WINED3D_SM4_OP_RET = 0x3e, WINED3D_SM4_OP_ROUND_NI = 0x41,
  WINED3D_SM4_OP_RSQ = 0x44, WINED3D_SM4_OP_SAMPLE = 0x45, WINED3D_SM4_OP_SAMPLE_LOD = 0x48, WINED3D_SM4_OP_SAMPLE_GRAD = 0x49,
  WINED3D_SM4_OP_SQRT = 0x4b, WINED3D_SM4_OP_SINCOS = 0x4d, WINED3D_SM4_OP_UDIV = 0x4e, WINED3D_SM4_OP_USHR = 0x55,
  WINED3D_SM4_OP_UTOF = 0x56, WINED3D_SM4_OP_XOR = 0x57
}
enum  wined3d_sm4_register_type {
  WINED3D_SM4_RT_TEMP = 0x0, WINED3D_SM4_RT_INPUT = 0x1, WINED3D_SM4_RT_OUTPUT = 0x2, WINED3D_SM4_RT_IMMCONST = 0x4,
  WINED3D_SM4_RT_SAMPLER = 0x6, WINED3D_SM4_RT_CONSTBUFFER = 0x8, WINED3D_SM4_RT_NULL = 0xd
}
enum  wined3d_sm4_immconst_type { WINED3D_SM4_IMMCONST_SCALAR = 0x1, WINED3D_SM4_IMMCONST_VEC4 = 0x2 }

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (d3d_shader)
static struct
wined3d_sm4_opcode_info
get_opcode_info (enum wined3d_sm4_opcode opcode)
static void map_sysval (enum wined3d_sysval_semantic sysval, struct wined3d_shader_register *reg)
static void map_register (const struct wined3d_sm4_data *priv, struct wined3d_shader_register *reg)
static voidshader_sm4_init (const DWORD *byte_code, const struct wined3d_shader_signature *output_signature)
static void shader_sm4_free (void *data)
static void shader_sm4_read_header (void *data, const DWORD **ptr, struct wined3d_shader_version *shader_version)
static void shader_sm4_read_opcode (void *data, const DWORD **ptr, struct wined3d_shader_instruction *ins, UINT *param_size)
static void shader_sm4_read_src_param (void *data, const DWORD **ptr, struct wined3d_shader_src_param *src_param, struct wined3d_shader_src_param *src_rel_addr)
static void shader_sm4_read_dst_param (void *data, const DWORD **ptr, struct wined3d_shader_dst_param *dst_param, struct wined3d_shader_src_param *dst_rel_addr)
static void shader_sm4_read_semantic (const DWORD **ptr, struct wined3d_shader_semantic *semantic)
static void shader_sm4_read_comment (const DWORD **ptr, const char **comment, UINT *comment_size)
static BOOL shader_sm4_is_end (void *data, const DWORD **ptr)

Variables

static struct
wined3d_sm4_opcode_info 
opcode_table []
static enum
wined3d_shader_register_type 
register_type_table []
static struct sysval_map sysval_map []
struct wined3d_shader_frontend sm4_shader_frontend

Generated on Mon May 28 2012 05:05:03 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.