diff options
author | Keith Whitwell <[email protected]> | 2010-05-14 12:10:09 +0100 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2010-05-14 12:19:57 +0100 |
commit | c26751447011a713924b9163a1e0b44fd39c6b1c (patch) | |
tree | e8db4c28d9f8da0a1ab20ced02710dcdbb0ef6cf /src/gallium/targets/graw-xlib/graw_util.c | |
parent | 7375d7a5c9d5c32fd6bdde0cc8cab8fe41415964 (diff) |
graw: split util code into new file
Diffstat (limited to 'src/gallium/targets/graw-xlib/graw_util.c')
-rw-r--r-- | src/gallium/targets/graw-xlib/graw_util.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/gallium/targets/graw-xlib/graw_util.c b/src/gallium/targets/graw-xlib/graw_util.c new file mode 100644 index 00000000000..147532cdee1 --- /dev/null +++ b/src/gallium/targets/graw-xlib/graw_util.c @@ -0,0 +1,36 @@ + +#include "pipe/p_compiler.h" +#include "pipe/p_context.h" +#include "tgsi/tgsi_text.h" +#include "util/u_memory.h" +#include "state_tracker/graw.h" + + +/* Helper functions. These are the same for all graw implementations. + */ +void *graw_parse_vertex_shader(struct pipe_context *pipe, + const char *text) +{ + struct tgsi_token tokens[1024]; + struct pipe_shader_state state; + + if (!tgsi_text_translate(text, tokens, Elements(tokens))) + return NULL; + + state.tokens = tokens; + return pipe->create_vs_state(pipe, &state); +} + +void *graw_parse_fragment_shader(struct pipe_context *pipe, + const char *text) +{ + struct tgsi_token tokens[1024]; + struct pipe_shader_state state; + + if (!tgsi_text_translate(text, tokens, Elements(tokens))) + return NULL; + + state.tokens = tokens; + return pipe->create_fs_state(pipe, &state); +} + |