mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-22 11:20:11 +01:00
glsl: turn runtime asserts of compile-time value into compile-time asserts
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
This commit is contained in:
parent
ae8a7d5c8f
commit
b3e3af0e37
1 changed files with 12 additions and 6 deletions
|
|
@ -73,7 +73,8 @@ dot_d(ir_constant *op0, ir_constant *op1)
|
||||||
static float
|
static float
|
||||||
bitcast_u2f(unsigned int u)
|
bitcast_u2f(unsigned int u)
|
||||||
{
|
{
|
||||||
assert(sizeof(float) == sizeof(unsigned int));
|
static_assert(sizeof(float) == sizeof(unsigned int),
|
||||||
|
"float and unsigned int size mismatch");
|
||||||
float f;
|
float f;
|
||||||
memcpy(&f, &u, sizeof(f));
|
memcpy(&f, &u, sizeof(f));
|
||||||
return f;
|
return f;
|
||||||
|
|
@ -82,7 +83,8 @@ bitcast_u2f(unsigned int u)
|
||||||
static unsigned int
|
static unsigned int
|
||||||
bitcast_f2u(float f)
|
bitcast_f2u(float f)
|
||||||
{
|
{
|
||||||
assert(sizeof(float) == sizeof(unsigned int));
|
static_assert(sizeof(float) == sizeof(unsigned int),
|
||||||
|
"float and unsigned int size mismatch");
|
||||||
unsigned int u;
|
unsigned int u;
|
||||||
memcpy(&u, &f, sizeof(f));
|
memcpy(&u, &f, sizeof(f));
|
||||||
return u;
|
return u;
|
||||||
|
|
@ -91,7 +93,8 @@ bitcast_f2u(float f)
|
||||||
static double
|
static double
|
||||||
bitcast_u642d(uint64_t u)
|
bitcast_u642d(uint64_t u)
|
||||||
{
|
{
|
||||||
assert(sizeof(double) == sizeof(uint64_t));
|
static_assert(sizeof(double) == sizeof(uint64_t),
|
||||||
|
"double and uint64_t size mismatch");
|
||||||
double d;
|
double d;
|
||||||
memcpy(&d, &u, sizeof(d));
|
memcpy(&d, &u, sizeof(d));
|
||||||
return d;
|
return d;
|
||||||
|
|
@ -100,7 +103,8 @@ bitcast_u642d(uint64_t u)
|
||||||
static double
|
static double
|
||||||
bitcast_i642d(int64_t i)
|
bitcast_i642d(int64_t i)
|
||||||
{
|
{
|
||||||
assert(sizeof(double) == sizeof(int64_t));
|
static_assert(sizeof(double) == sizeof(int64_t),
|
||||||
|
"double and int64_t size mismatch");
|
||||||
double d;
|
double d;
|
||||||
memcpy(&d, &i, sizeof(d));
|
memcpy(&d, &i, sizeof(d));
|
||||||
return d;
|
return d;
|
||||||
|
|
@ -109,7 +113,8 @@ bitcast_i642d(int64_t i)
|
||||||
static uint64_t
|
static uint64_t
|
||||||
bitcast_d2u64(double d)
|
bitcast_d2u64(double d)
|
||||||
{
|
{
|
||||||
assert(sizeof(double) == sizeof(uint64_t));
|
static_assert(sizeof(double) == sizeof(uint64_t),
|
||||||
|
"double and uint64_t size mismatch");
|
||||||
uint64_t u;
|
uint64_t u;
|
||||||
memcpy(&u, &d, sizeof(d));
|
memcpy(&u, &d, sizeof(d));
|
||||||
return u;
|
return u;
|
||||||
|
|
@ -118,7 +123,8 @@ bitcast_d2u64(double d)
|
||||||
static int64_t
|
static int64_t
|
||||||
bitcast_d2i64(double d)
|
bitcast_d2i64(double d)
|
||||||
{
|
{
|
||||||
assert(sizeof(double) == sizeof(int64_t));
|
static_assert(sizeof(double) == sizeof(int64_t),
|
||||||
|
"double and int64_t size mismatch");
|
||||||
int64_t i;
|
int64_t i;
|
||||||
memcpy(&i, &d, sizeof(d));
|
memcpy(&i, &d, sizeof(d));
|
||||||
return i;
|
return i;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue