From 88f909eb37dc3867f9d2fcd44ccee6dceaac071c Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Tue, 24 Sep 2019 16:57:03 +0200 Subject: [PATCH] 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 --- src/compiler/glsl/ir_constant_expression.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/compiler/glsl/ir_constant_expression.cpp b/src/compiler/glsl/ir_constant_expression.cpp index e589310..1605e57 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)); -- 2.7.4