I don't think there's any glsl, es or otherwise, specification which would require denorms (since obviously lots of hw can't do it, d3d10 forbids them), with any precision qualifier. Hence these look like bugs of the test suite to me? (Irrespective if it's a good idea or not to enable denormals, which I don't realy know.)
Roland Am 11.01.2017 um 18:29 schrieb Samuel Pitoiset: > Only VI can do 32-bit denormals at full rate while previous > generations can do it only for 64-bit and 16-bit. > > This fixes some dEQP tests with the highp type qualifier. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99343 > Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> > --- > src/gallium/drivers/radeonsi/si_shader.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/src/gallium/drivers/radeonsi/si_shader.c > b/src/gallium/drivers/radeonsi/si_shader.c > index 5dfbd6603a..e9cb11883f 100644 > --- a/src/gallium/drivers/radeonsi/si_shader.c > +++ b/src/gallium/drivers/radeonsi/si_shader.c > @@ -6361,8 +6361,10 @@ int si_compile_llvm(struct si_screen *sscreen, > > si_shader_binary_read_config(binary, conf, 0); > > - /* Enable 64-bit and 16-bit denormals, because there is no performance > - * cost. > + /* Enable denormals when there is no performance cost. > + * > + * Only VI can do 32-bit denormals at full rate while previous > + * generations can do it only for 64-bit and 16-bit. > * > * If denormals are enabled, all floating-point output modifiers are > * ignored. > @@ -6373,7 +6375,10 @@ int si_compile_llvm(struct si_screen *sscreen, > * have to stop using those. > * - SI & CI would be very slow. > */ > - conf->float_mode |= V_00B028_FP_64_DENORMS; > + if (sscreen->b.chip_class >= VI) > + conf->float_mode |= V_00B028_FP_ALL_DENORMS; > + else > + conf->float_mode |= V_00B028_FP_64_DENORMS; > > FREE(binary->config); > FREE(binary->global_symbol_offsets); > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev