From: Erik Faye-Lund Date: Tue, 24 Sep 2019 14:57:03 +0000 (+0200) Subject: glsl: correct bitcast-helpers X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=88f909eb37dc3867f9d2fcd44ccee6dceaac071c;p=mesa.git glsl: correct bitcast-helpers Without this, we'll incorrectly round off huge values to the nearest representable double instead of keeping it at the exact value as we're supposed to. Found by inspecting compiler-warnings. Signed-off-by: Erik Faye-Lund Fixes: 85faf5082f ("glsl: Add 64-bit integer support for constant expressions") Reviewed-by: Eric Engestrom --- diff --git a/src/compiler/glsl/ir_constant_expression.cpp b/src/compiler/glsl/ir_constant_expression.cpp index e5893103ed2..1605e571758 100644 --- a/src/compiler/glsl/ir_constant_expression.cpp +++ b/src/compiler/glsl/ir_constant_expression.cpp @@ -106,7 +106,7 @@ bitcast_i642d(int64_t i) return d; } -static double +static uint64_t bitcast_d2u64(double d) { assert(sizeof(double) == sizeof(uint64_t)); @@ -115,7 +115,7 @@ bitcast_d2u64(double d) return u; } -static double +static int64_t bitcast_d2i64(double d) { assert(sizeof(double) == sizeof(int64_t));