Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2010-06-23 | glsl2 main: Switch from realloc to talloc_realloc to construct program source.HEADmaster | Carl Worth | 1 | -2/+2 | |
This closes 1 leak in the glsl-orangebook-ch06-bump.frag test leaving 4 to go, (all of which are inside hash_table.c). | |||||
2010-06-23 | main: Close memory leak of shader string from load_text_file. | Carl Worth | 1 | -4/+5 | |
Could have just added a call to free() to main, but since we're using talloc everywhere else, we might as well just use it here too. So pass a new 'ctx' argument to load_text_file. This removes a single memory leak from all invocations of the standalone glsl compiler. | |||||
2010-06-23 | glsl_symbol_table: Add new talloc-based new() | Carl Worth | 1 | -5/+1 | |
We take advantage of overloading of the new operator (with an additional parameter!) to make this look as "C++ like" as possible. This closes 507 memory leaks when compiling glsl-orangebook-ch06-bump.frag when measured with: valgrind ./glsl glsl-orangebook-ch06-bump.frag as seen here: total heap usage: 55,623 allocs, 14,389 frees (was 13,882 frees before) | |||||
2010-06-23 | glsl2 main: Use talloc to allocate _mesa_glsl_parse_state | Carl Worth | 1 | -27/+30 | |
This is a short-lived object. It exists only for the duration of the compile_shader() function, (as opposed to the shader and whole_program which live longer). The state is created with the same talloc parent as the shader, so that other allocation can be done with talloc_parent(state) as the owner in order to attach to a long-lived object. | |||||
2010-06-23 | glsl2 main: Use talloc to allocate whole_program struct. | Carl Worth | 1 | -12/+15 | |
This way, whole_program can be our top-level talloc context object, allowing us to free the lot with a single talloc_free in the end. | |||||
2010-06-22 | ir_validate: New pass for checking our invariants. | Eric Anholt | 1 | -0/+4 | |
2010-06-21 | glcpp: Print to the main compiler's infolog, not stdout. | Kenneth Graunke | 1 | -1/+1 | |
2010-06-21 | Use yy_scan_string and stop caring about shader->SourceLen. | Kenneth Graunke | 1 | -2/+2 | |
We had to call strlen on the preprocessed source, which seemed a bit pointless; also, we updated shader->SourceLen but not shader->Source, which was even more confusing. Just leave both untouched. | |||||
2010-06-21 | Make the main compiler call the preprocessor. | Kenneth Graunke | 1 | -3/+11 | |
By using a single function, the main compiler doesn't need to include glcpp.h, which currently has a lot of details about the preprocessor internals. In particular, this prevents the two yacc grammars from seeing each other, which would be rather messy to sort out. | |||||
2010-06-21 | Complain and exit if the given shader file doesn't exist. | Kenneth Graunke | 1 | -0/+4 | |
2010-06-19 | Print out the info log if compilation fails. | Kenneth Graunke | 1 | -0/+1 | |
2010-06-19 | Initialize the shader info log | Ian Romanick | 1 | -0/+7 | |
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> | |||||
2010-06-19 | Make shader a talloc context. | Kenneth Graunke | 1 | -2/+6 | |
2010-06-19 | Rename prog to shader. Less confusing. | Kenneth Graunke | 1 | -27/+27 | |
2010-06-17 | Don't link shaders by default | Ian Romanick | 1 | -1/+3 | |
Add a command line option to trigger linking. This "fixes" all the failing test cases. Oops. | |||||
2010-06-17 | linker: Initial bits of the linker | Ian Romanick | 1 | -0/+5 | |
No linking is done yet, but some of the semantic checking is done. | |||||
2010-06-17 | Use glsl_program instead of an open-coded vector of shaders | Ian Romanick | 1 | -8/+8 | |
2010-06-17 | Change glsl_program to glsl_shader | Ian Romanick | 1 | -5/+5 | |
2010-06-17 | Compile multiple shaders listed on the command line | Ian Romanick | 1 | -18/+36 | |
2010-06-17 | Extract compilation to a separate routine | Ian Romanick | 1 | -47/+63 | |
Pull all of the code that actually compiles shaders into a separate function. Use a glsl_program to track data about the compiled shader. | |||||
2010-06-15 | Printing LIR is optional | Ian Romanick | 1 | -1/+3 | |
2010-06-15 | Printing the AST is optional | Ian Romanick | 1 | -8/+24 | |
2010-06-15 | Minor bits of code rearranging | Ian Romanick | 1 | -7/+7 | |
2010-06-15 | Infer shader type from suffix on filename | Ian Romanick | 1 | -16/+21 | |
2010-06-14 | Remove ability to read "IR shaders" from stand-alone compiler | Ian Romanick | 1 | -25/+11 | |
2010-06-14 | Move stand-alone compiler main routine to main.cpp | Ian Romanick | 1 | -0/+175 | |