This series has Topi's split of the initial "glsl: add double support" patch. I've also integrated feedback (and R-b's) from Matt and Brian. I believe that all the comments were either implemented or I sent questions on-list. Please let me know if I've missed anything, or otherwise messed things up.
Tree available at https://github.com/imirkin/mesa/commits/fp64-3 Dave Airlie (26): glapi: add ARB_gpu_shader_fp64 (v2) mesa: add ARB_gpu_shader_fp64 extension info (v2) mesa: add mesa_type_is_double helper function (v2) mesa: add double uniform support. (v5) glsl: add ARB_gpu_shader_fp64 to the glsl extensions. (v2) glsl: Add double builtin type glsl: Add double builtin type generation glsl: Uniform linking support for doubles glsl/ir: Add builtin function support for doubles glsl/ir: Add printing support for doubles glsl/ir: Add cloning support for doubles glsl/ir: Add builtin constant function support for doubles glsl/ir: Add builder support for functions with double floats glsl: Add support doubles in optimization passes glsl: Add ubo lowering support for doubles glsl/ast: Support double floats glsl/parser: Support double floats glsl/lexer: Support double floats glsl: Support double inouts glsl: Support double loop control glsl: Linking support for doubles glsl: add double support to lower_mat_op_to_vec glsl: enable/disable certain lowering passes for doubles glsl/lower_instructions: add double lowering passes glsl: implement double builtin functions glsl: lower double optional passes (v2) Ilia Mirkin (1): glsl: add a lowering pass for frexp/ldexp with double arguments Tapani Pälli (1): glsl: validate output types for shader stages src/glsl/ast.h | 2 + src/glsl/ast_function.cpp | 67 +- src/glsl/ast_to_hir.cpp | 85 ++- src/glsl/builtin_functions.cpp | 751 ++++++++++++++------- src/glsl/builtin_type_macros.h | 16 + src/glsl/builtin_types.cpp | 30 + src/glsl/glcpp/glcpp-parse.y | 3 + src/glsl/glsl_lexer.ll | 29 +- src/glsl/glsl_parser.yy | 33 +- src/glsl/glsl_parser_extras.cpp | 5 + src/glsl/glsl_parser_extras.h | 7 + src/glsl/glsl_types.cpp | 109 ++- src/glsl/glsl_types.h | 19 +- src/glsl/ir.cpp | 104 ++- src/glsl/ir.h | 21 + src/glsl/ir_builder.cpp | 23 + src/glsl/ir_builder.h | 5 + src/glsl/ir_clone.cpp | 1 + src/glsl/ir_constant_expression.cpp | 242 ++++++- src/glsl/ir_optimization.h | 2 + src/glsl/ir_print_visitor.cpp | 11 + src/glsl/ir_set_program_inouts.cpp | 28 +- src/glsl/ir_validate.cpp | 68 +- src/glsl/link_uniform_initializers.cpp | 8 +- src/glsl/link_uniforms.cpp | 7 +- src/glsl/link_varyings.cpp | 3 +- src/glsl/loop_controls.cpp | 16 +- src/glsl/lower_instructions.cpp | 580 +++++++++++++++- src/glsl/lower_mat_op_to_vec.cpp | 2 + src/glsl/lower_ubo_reference.cpp | 12 +- src/glsl/opt_constant_propagation.cpp | 3 + src/glsl/opt_minmax.cpp | 13 + src/glsl/standalone_scaffolding.cpp | 1 + src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml | 143 ++++ src/mapi/glapi/gen/ARB_separate_shader_objects.xml | 2 - src/mapi/glapi/gen/Makefile.am | 1 + src/mapi/glapi/gen/gl_API.xml | 2 + src/mesa/main/extensions.c | 1 + src/mesa/main/mtypes.h | 1 + src/mesa/main/tests/dispatch_sanity.cpp | 70 +- src/mesa/main/uniform_query.cpp | 47 +- src/mesa/main/uniforms.c | 380 ++++++++++- src/mesa/main/uniforms.h | 92 ++- src/mesa/program/ir_to_mesa.cpp | 27 +- src/mesa/program/prog_parameter.c | 16 +- src/mesa/program/prog_parameter.h | 23 + 46 files changed, 2671 insertions(+), 440 deletions(-) create mode 100644 src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml -- 2.0.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev