gallivm: silence casting warning

This commit is contained in:
Brian Paul
2010-05-13 13:25:29 -06:00
parent c91d9cb563
commit 17542c1e3e
@@ -310,6 +310,21 @@ lp_build_pack_rgba_aos(LLVMBuilderRef builder,
}
typedef void (*fetch_func)(float *, const uint8_t *, unsigned, unsigned);
/** cast wrapper */
static void *
fetch_func_ptr_to_voidptr(fetch_func f)
{
union {
void *v;
fetch_func f;
} u;
u.f = f;
return u.v;
}
/**
* Fetch a pixel into a 4 float AoS.
*
@@ -390,7 +405,8 @@ lp_build_fetch_rgba_aos(LLVMBuilderRef builder,
assert(LLVMIsDeclaration(function));
LLVMAddGlobalMapping(lp_build_engine, function, format_desc->fetch_rgba_float);
LLVMAddGlobalMapping(lp_build_engine, function,
fetch_func_ptr_to_voidptr(format_desc->fetch_rgba_float));
}
tmp = lp_build_alloca(builder, LLVMVectorType(LLVMFloatType(), 4), "");