From d4fae3a69972fe9685b6b4f1b3c272fc2558d681 Mon Sep 17 00:00:00 2001 From: ReinUsesLisp Date: Fri, 21 Dec 2018 03:13:05 -0300 Subject: shader_ir: Address feedback to avoid UB in bit casting --- src/video_core/shader/shader_ir.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/video_core') diff --git a/src/video_core/shader/shader_ir.h b/src/video_core/shader/shader_ir.h index b91ef246f..8ad2a366f 100644 --- a/src/video_core/shader/shader_ir.h +++ b/src/video_core/shader/shader_ir.h @@ -4,6 +4,7 @@ #pragma once +#include #include #include #include @@ -606,8 +607,9 @@ private: } /// Creates a f32 immediate Node Immediate(f32 value) { - // TODO(Rodrigo): Replace this with bit_cast when C++20 releases - return Immediate(*reinterpret_cast(&value)); + u32 integral; + std::memcpy(&integral, &value, sizeof(u32)); + return Immediate(integral); } /// Generates a node for a passed register. -- cgit v1.2.3