diff options
author | Søren Sandmann Pedersen <ssp@redhat.com> | 2010-04-14 11:32:08 -0400 |
---|---|---|
committer | Søren Sandmann Pedersen <ssp@redhat.com> | 2010-04-14 11:32:08 -0400 |
commit | 63f4bf4508ca7b7f97ab6e5755dc127d98364d03 (patch) | |
tree | 34c88b30c17b0c30d53efb2eeba914e1ad2e1e39 | |
parent | d0f0407a3963615f13e65c7a348c0add820207d3 (diff) |
Add instruction type
-rw-r--r-- | psl.c | 56 |
1 files changed, 47 insertions, 9 deletions
@@ -2,21 +2,59 @@ #include <stdarg.h> #include "psl.h" -typedef struct memory_t memory_t; +typedef struct instruction_list_t instruction_list_t; -struct memory_t +typedef enum { - + TEX, + ADD, + MAD, + CMP_LT, + LABEL +} instruction_type_t; + +struct psl_instruction_t +{ + instruction_type_t type; + + union + { + struct + { + } tex; + + struct + { + } add; + + struct + { + } mad; + + struct + { + } cmp_lt; + + struct + { + } label; + } u; +}; + +struct instruction_list_t +{ + psl_instruction_t inst[255]; + instruction_list_t *next; }; struct psl_statement_t { - memory_t *memory; + psl_instruction_t *instructions; }; struct psl_program_t { - psl_statement_t *statement; + instruction_list_t *inst; }; psl_program_t * @@ -25,10 +63,10 @@ psl_program_create (psl_statement_t *statement) } psl_instruction_t * -psl_tex (psl_var_t *dest, - psl_var_t *img, - psl_var_t *u, - psl_var_t *v) +psl_tex (psl_var_t *dest, + psl_var_t *img, + psl_var_t *u, + psl_var_t *v) { } |