Browse Source

shader_ir: Address feedback to avoid UB in bit casting

nce_cpp
ReinUsesLisp 7 years ago
parent
commit
4e8b1bf07a
  1. 6
      src/video_core/shader/shader_ir.h

6
src/video_core/shader/shader_ir.h

@ -4,6 +4,7 @@
#pragma once #pragma once
#include <cstring>
#include <map> #include <map>
#include <set> #include <set>
#include <string> #include <string>
@ -606,8 +607,9 @@ private:
} }
/// Creates a f32 immediate /// Creates a f32 immediate
Node Immediate(f32 value) { Node Immediate(f32 value) {
// TODO(Rodrigo): Replace this with bit_cast when C++20 releases
return Immediate(*reinterpret_cast<const u32*>(&value));
u32 integral;
std::memcpy(&integral, &value, sizeof(u32));
return Immediate(integral);
} }
/// Generates a node for a passed register. /// Generates a node for a passed register.

Loading…
Cancel
Save