Hi,
I am getting very strange error when trying to build my OCL program (the hex numbers are different every run)
Error: Code selection failed to select: 0x1305d90: v4f32 = bit_convert 0x12963d0
I am using linux, with driver 256 building the program fine, but driver 258 dev beta (which I need for OpenCL 1.1 - using a lot of float3’s) makes this error
what does it mean? how am I to fix this?
thanks
EDIT: I have found the code that caused this:
struct triangle_s
{
float3 spaceCoords[3];
float3 normalCoords[3];
float2 textureCoords[3];
size_t objectIndex;
};
...
float intersectRayTri(__private struct ray_s ray, __private struct triangle_s triangle,__private float3 *baryCoords)
{
__private float3 e1=triangle.spaceCoords[1]-triangle.spaceCoords[0];
return length(e1);
strangely, changing the function parameters to struct pointers instead of structs solved the issue.