It all works fine on nvc0 and softpipe with my branch at https://github.com/imirkin/mesa/commits/fp64-4
This branch also includes Dave's preliminary work on r600/cayman, not sure how far along it is, I believe it's still missing a few things. The nvc0 implementation needs a few more finishing touches for handling RCP and RSQ better (just adding a couple of steps of Newton-Raphson, since the hw only computes 32 bits of the 64-bit result). On Sun, Feb 8, 2015 at 12:04 PM, Aditya Avinash <adityaavina...@gmail.com> wrote: > Hi, > How far is glsl compiler working for fp64 shader? > > On Sun, Feb 8, 2015 at 4:00 AM, Ilia Mirkin <imir...@alum.mit.edu> wrote: >> >> From: Dave Airlie <airl...@redhat.com> >> >> v2: add define bit (Tapani Pälli) >> >> Patch makes following Piglit tests pass: >> arb_gpu_shader_fp64/preprocessor/define.vert >> arb_gpu_shader_fp64/preprocessor/define.frag >> >> Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> >> Signed-off-by: Dave Airlie <airl...@redhat.com> >> Reviewed-by: Matt Turner <matts...@gmail.com> >> --- >> src/glsl/glcpp/glcpp-parse.y | 3 +++ >> src/glsl/glsl_parser_extras.cpp | 1 + >> src/glsl/glsl_parser_extras.h | 2 ++ >> src/glsl/standalone_scaffolding.cpp | 1 + >> 4 files changed, 7 insertions(+) >> >> diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y >> index e5bebe5..c2f5223 100644 >> --- a/src/glsl/glcpp/glcpp-parse.y >> +++ b/src/glsl/glcpp/glcpp-parse.y >> @@ -2445,6 +2445,9 @@ >> _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser, intmax_t >> versio >> if (extensions->ARB_gpu_shader5) >> add_builtin_define(parser, "GL_ARB_gpu_shader5", 1); >> >> + if (extensions->ARB_gpu_shader_fp64) >> + add_builtin_define(parser, "GL_ARB_gpu_shader_fp64", 1); >> + >> if (extensions->AMD_vertex_shader_layer) >> add_builtin_define(parser, "GL_AMD_vertex_shader_layer", >> 1); >> >> diff --git a/src/glsl/glsl_parser_extras.cpp >> b/src/glsl/glsl_parser_extras.cpp >> index ccdf031..cb19ce1 100644 >> --- a/src/glsl/glsl_parser_extras.cpp >> +++ b/src/glsl/glsl_parser_extras.cpp >> @@ -527,6 +527,7 @@ static const _mesa_glsl_extension >> _mesa_glsl_supported_extensions[] = { >> EXT(ARB_fragment_coord_conventions, true, false, >> ARB_fragment_coord_conventions), >> EXT(ARB_fragment_layer_viewport, true, false, >> ARB_fragment_layer_viewport), >> EXT(ARB_gpu_shader5, true, false, >> ARB_gpu_shader5), >> + EXT(ARB_gpu_shader_fp64, true, false, >> ARB_gpu_shader_fp64), >> EXT(ARB_sample_shading, true, false, >> ARB_sample_shading), >> EXT(ARB_separate_shader_objects, true, false, dummy_true), >> EXT(ARB_shader_atomic_counters, true, false, >> ARB_shader_atomic_counters), >> diff --git a/src/glsl/glsl_parser_extras.h b/src/glsl/glsl_parser_extras.h >> index 843fdae..dafee4e 100644 >> --- a/src/glsl/glsl_parser_extras.h >> +++ b/src/glsl/glsl_parser_extras.h >> @@ -414,6 +414,8 @@ struct _mesa_glsl_parse_state { >> bool ARB_fragment_layer_viewport_warn; >> bool ARB_gpu_shader5_enable; >> bool ARB_gpu_shader5_warn; >> + bool ARB_gpu_shader_fp64_enable; >> + bool ARB_gpu_shader_fp64_warn; >> bool ARB_sample_shading_enable; >> bool ARB_sample_shading_warn; >> bool ARB_separate_shader_objects_enable; >> diff --git a/src/glsl/standalone_scaffolding.cpp >> b/src/glsl/standalone_scaffolding.cpp >> index 67b0d0c..ad0d75b 100644 >> --- a/src/glsl/standalone_scaffolding.cpp >> +++ b/src/glsl/standalone_scaffolding.cpp >> @@ -127,6 +127,7 @@ void initialize_context_to_defaults(struct gl_context >> *ctx, gl_api api) >> ctx->Extensions.ARB_fragment_coord_conventions = true; >> ctx->Extensions.ARB_fragment_layer_viewport = true; >> ctx->Extensions.ARB_gpu_shader5 = true; >> + ctx->Extensions.ARB_gpu_shader_fp64 = true; >> ctx->Extensions.ARB_sample_shading = true; >> ctx->Extensions.ARB_shader_bit_encoding = true; >> ctx->Extensions.ARB_shader_stencil_export = true; >> -- >> 2.0.5 >> >> _______________________________________________ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > > > -- > Regards, > Aditya Atluri, > USA. > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev