static const struct instruction_info InstInfo[MAX_OPCODE] = {
{ OPCODE_ABS, "ABS", 1 },
{ OPCODE_ADD, "ADD", 2 },
+ { OPCODE_ARA, "ARA", 1 },
{ OPCODE_ARL, "ARL", 1 },
+ { OPCODE_ARL_NV, "ARL", 1 },
+ { OPCODE_ARR, "ARL", 1 },
+ { OPCODE_BRA, "BRA", 1 },
+ { OPCODE_CAL, "CAL", 1 },
{ OPCODE_CMP, "CMP", 3 },
{ OPCODE_COS, "COS", 1 },
{ OPCODE_DDX, "DDX", 1 },
{ OPCODE_PK4B, "PK4B", 1 },
{ OPCODE_PK4UB, "PK4UB", 1 },
{ OPCODE_POW, "POW", 2 },
+ { OPCODE_POPA, "POPA", 0 },
{ OPCODE_PRINT, "PRINT", 1 },
+ { OPCODE_PUSHA, "PUSHA", 0 },
{ OPCODE_RCC, "RCC", 1 },
{ OPCODE_RCP, "RCP", 1 },
+ { OPCODE_RET, "RET", 1 },
{ OPCODE_RFL, "RFL", 1 },
{ OPCODE_RSQ, "RSQ", 1 },
{ OPCODE_SCS, "SCS", 1 },
{ OPCODE_SLE, "SLE", 2 },
{ OPCODE_SLT, "SLT", 2 },
{ OPCODE_SNE, "SNE", 2 },
+ { OPCODE_SSG, "SSG", 1 },
{ OPCODE_STR, "STR", 0 },
{ OPCODE_SUB, "SUB", 2 },
{ OPCODE_SWZ, "SWZ", 1 },
{ OPCODE_TEX, "TEX", 1 },
{ OPCODE_TXB, "TXB", 1 },
{ OPCODE_TXD, "TXD", 3 },
+ { OPCODE_TXL, "TXL", 1 },
{ OPCODE_TXP, "TXP", 1 },
{ OPCODE_TXP_NV, "TXP", 1 },
{ OPCODE_UP2H, "UP2H", 1 },
*/
/* ARB_vp ARB_fp NV_vp NV_fp */
enum prog_opcode { /*---------------------------------*/
- OPCODE_ABS, /* X 1.1 */
+ OPCODE_ABS, /* X X 1.1 */
OPCODE_ADD, /* X X X X */
+ OPCODE_ARA, /* 2 */
OPCODE_ARL, /* X X */
+ OPCODE_ARL_NV, /* 2 */
+ OPCODE_ARR, /* 2 */
+ OPCODE_BRA, /* 2 */
+ OPCODE_CAL, /* 2 2 */
OPCODE_CMP, /* X */
- OPCODE_COS, /* X 2 */
+ OPCODE_COS, /* X 2 X */
OPCODE_DDX, /* X */
OPCODE_DDY, /* X */
OPCODE_DP3, /* X X X X */
OPCODE_DP4, /* X X X X */
OPCODE_DPH, /* X X 1.1 */
- OPCODE_DST, /* X X X */
+ OPCODE_DST, /* X X X X */
OPCODE_END, /* X X X X */
OPCODE_EX2, /* X X 2 X */
OPCODE_EXP, /* X X */
OPCODE_KIL_NV, /* X */
OPCODE_LG2, /* X X 2 X */
OPCODE_LIT, /* X X X X */
- OPCODE_LOG, /* X X X */
+ OPCODE_LOG, /* X X */
OPCODE_LRP, /* X X */
OPCODE_MAD, /* X X X X */
OPCODE_MAX, /* X X X X */
OPCODE_PK4B, /* X */
OPCODE_PK4UB, /* X */
OPCODE_POW, /* X X X */
+ OPCODE_POPA, /* 3 */
OPCODE_PRINT, /* X X */
+ OPCODE_PUSHA, /* 3 */
OPCODE_RCC, /* 1.1 */
OPCODE_RCP, /* X X X X */
+ OPCODE_RET, /* 2 2 */
OPCODE_RFL, /* X X */
OPCODE_RSQ, /* X X X X */
OPCODE_SCS, /* X */
OPCODE_SLE, /* 2 X */
OPCODE_SLT, /* X X X X */
OPCODE_SNE, /* 2 X */
- OPCODE_STR, /* X 2 X */
+ OPCODE_SSG, /* 2 */
+ OPCODE_STR, /* 2 X */
OPCODE_SUB, /* X X 1.1 X */
OPCODE_SWZ, /* X X */
- OPCODE_TEX, /* X X */
- OPCODE_TXB, /* X */
- OPCODE_TXD, /* X X */
+ OPCODE_TEX, /* X 3 X */
+ OPCODE_TXB, /* X 3 */
+ OPCODE_TXD, /* X */
+ OPCODE_TXL, /* 3 2 */
OPCODE_TXP, /* X */
- OPCODE_TXP_NV, /* X */
+ OPCODE_TXP_NV, /* 3 X */
OPCODE_UP2H, /* X */
OPCODE_UP2US, /* X */
OPCODE_UP4B, /* X */
OPCODE_UP4UB, /* X */
OPCODE_X2D, /* X */
OPCODE_XPD, /* X X */
-#if 0
- OPCODE_ARA, /* NV_vertex_program2 */
- OPCODE_ARL_NV, /* NV_vertex_program2 */
- OPCODE_ARR, /* NV_vertex_program2 */
-
- OPCODE_SEQ, /* NV_vertex_program2 */
- OPCODE_SFL, /* NV_vertex_program2 */
- OPCODE_SGT, /* NV_vertex_program2 */
- OPCODE_SLE, /* NV_vertex_program2 */
- OPCODE_SNE, /* NV_vertex_program2 */
- OPCODE_STR, /* NV_vertex_program2 */
-
- OPCODE_SSG, /* NV_vertex_program2 */
- OPCODE_COS, /* NV_vertex_program2 */
- OPCODE_SIN, /* NV_vertex_program2 */
-
- OPCODE_BRA, /* NV_vertex_program2 */
- OPCODE_CAL, /* NV_vertex_program2 */
- OPCODE_RET, /* NV_vertex_program2 */
-
- OPCODE_PUSHA, /* NV_vertex_program3 */
- OPCODE_POPA, /* NV_vertex_program3 */
-
- OPCODE_TEX, /* NV_vertex_program3 */
- OPCODE_TXB, /* NV_vertex_program3 */
- OPCODE_TXL, /* NV_vertex_program3 */
- OPCODE_TXP, /* NV_vertex_program3 */
-#endif
MAX_OPCODE
};