The 'static' storage-class specifier is not supported in OpenCL.

This is documented in Section 6.8 (g) in OpenCL 1.1 specification.
This commit is contained in:
hujiajie 2016-03-03 15:59:47 +08:00
parent 51970941b4
commit ad6fb3afc1
15 changed files with 42 additions and 20 deletions

View File

@ -21,6 +21,7 @@
#ifndef B3_MPR_PENETRATION_H
#define B3_MPR_PENETRATION_H
#include "Bullet3Common/shared/b3PlatformDefinitions.h"
#include "Bullet3Common/shared/b3Float4.h"
#include "Bullet3Collision/NarrowPhaseCollision/shared/b3RigidBodyData.h"
#include "Bullet3Collision/NarrowPhaseCollision/shared/b3ConvexPolyhedronData.h"
@ -151,7 +152,7 @@ inline b3Float4 b3LocalGetSupportVertex(b3Float4ConstArg supportVec,__global con
}
static void b3MprConvexSupport(int pairIndex,int bodyIndex, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
B3_STATIC void b3MprConvexSupport(int pairIndex,int bodyIndex, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData,
b3ConstArray(b3Collidable_t) cpuCollidables,
b3ConstArray(b3Float4) cpuVertices,
@ -370,7 +371,7 @@ inline void b3ExpandPortal(b3MprSimplex_t *portal,
static int b3DiscoverPortal(int pairIndex, int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
B3_STATIC int b3DiscoverPortal(int pairIndex, int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData,
b3ConstArray(b3Collidable_t) cpuCollidables,
b3ConstArray(b3Float4) cpuVertices,
@ -505,7 +506,7 @@ static int b3DiscoverPortal(int pairIndex, int bodyIndexA, int bodyIndexB, b3Co
}
static int b3RefinePortal(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
B3_STATIC int b3RefinePortal(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData,
b3ConstArray(b3Collidable_t) cpuCollidables,
b3ConstArray(b3Float4) cpuVertices,
@ -547,7 +548,7 @@ static int b3RefinePortal(int pairIndex,int bodyIndexA, int bodyIndexB, b3Const
return -1;
}
static void b3FindPos(const b3MprSimplex_t *portal, b3Float4 *pos)
B3_STATIC void b3FindPos(const b3MprSimplex_t *portal, b3Float4 *pos)
{
b3Float4 zero = b3MakeFloat4(0,0,0,0);
@ -758,7 +759,7 @@ inline float b3MprVec3PointTriDist2(const b3Float4 *P,
}
static void b3FindPenetr(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
B3_STATIC void b3FindPenetr(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf,
b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData,
b3ConstArray(b3Collidable_t) cpuCollidables,
b3ConstArray(b3Float4) cpuVertices,
@ -811,7 +812,7 @@ static void b3FindPenetr(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstA
}
}
static void b3FindPenetrTouch(b3MprSimplex_t *portal,float *depth, b3Float4 *dir, b3Float4 *pos)
B3_STATIC void b3FindPenetrTouch(b3MprSimplex_t *portal,float *depth, b3Float4 *dir, b3Float4 *pos)
{
// Touching contact on portal's v1 - so depth is zero and direction
// is unimportant and pos can be guessed
@ -827,7 +828,7 @@ static void b3FindPenetrTouch(b3MprSimplex_t *portal,float *depth, b3Float4 *dir
b3MprVec3Scale(pos, 0.5);
}
static void b3FindPenetrSegment(b3MprSimplex_t *portal,
B3_STATIC void b3FindPenetrSegment(b3MprSimplex_t *portal,
float *depth, b3Float4 *dir, b3Float4 *pos)
{

View File

@ -20,6 +20,8 @@ inline int b3AtomicAdd (volatile int *p, int val)
}
#define __global
#define B3_STATIC static
#else
//keep B3_LARGE_FLOAT*B3_LARGE_FLOAT < FLT_MAX
#define B3_LARGE_FLOAT 1e18f
@ -32,6 +34,8 @@ inline int b3AtomicAdd (volatile int *p, int val)
#define b3Sqrt native_sqrt
#define b3Sin native_sin
#define b3Cos native_cos
#define B3_STATIC
#endif
#endif

View File

@ -17,8 +17,6 @@ static const char* mprKernelsCL= \
" */\n"
"#ifndef B3_MPR_PENETRATION_H\n"
"#define B3_MPR_PENETRATION_H\n"
"#ifndef B3_FLOAT4_H\n"
"#define B3_FLOAT4_H\n"
"#ifndef B3_PLATFORM_DEFINITIONS_H\n"
"#define B3_PLATFORM_DEFINITIONS_H\n"
"struct MyTest\n"
@ -38,6 +36,14 @@ static const char* mprKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifndef B3_FLOAT4_H\n"
"#define B3_FLOAT4_H\n"
"#ifndef B3_PLATFORM_DEFINITIONS_H\n"
"#ifdef __cplusplus\n"
"#else\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"
@ -509,7 +515,7 @@ static const char* mprKernelsCL= \
" }\n"
" return supVec;\n"
"}\n"
"static void b3MprConvexSupport(int pairIndex,int bodyIndex, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
"B3_STATIC void b3MprConvexSupport(int pairIndex,int bodyIndex, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
" b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData, \n"
" b3ConstArray(b3Collidable_t) cpuCollidables,\n"
" b3ConstArray(b3Float4) cpuVertices,\n"
@ -682,7 +688,7 @@ static const char* mprKernelsCL= \
" }\n"
" }\n"
"}\n"
"static int b3DiscoverPortal(int pairIndex, int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
"B3_STATIC int b3DiscoverPortal(int pairIndex, int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
" b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData, \n"
" b3ConstArray(b3Collidable_t) cpuCollidables,\n"
" b3ConstArray(b3Float4) cpuVertices,\n"
@ -792,7 +798,7 @@ static const char* mprKernelsCL= \
" }\n"
" return 0;\n"
"}\n"
"static int b3RefinePortal(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
"B3_STATIC int b3RefinePortal(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
" b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData, \n"
" b3ConstArray(b3Collidable_t) cpuCollidables,\n"
" b3ConstArray(b3Float4) cpuVertices,\n"
@ -826,7 +832,7 @@ static const char* mprKernelsCL= \
" }\n"
" return -1;\n"
"}\n"
"static void b3FindPos(const b3MprSimplex_t *portal, b3Float4 *pos)\n"
"B3_STATIC void b3FindPos(const b3MprSimplex_t *portal, b3Float4 *pos)\n"
"{\n"
" b3Float4 zero = b3MakeFloat4(0,0,0,0);\n"
" b3Float4* b3mpr_vec3_origin = &zero;\n"
@ -1000,7 +1006,7 @@ static const char* mprKernelsCL= \
" }\n"
" return dist;\n"
"}\n"
"static void b3FindPenetr(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
"B3_STATIC void b3FindPenetr(int pairIndex,int bodyIndexA, int bodyIndexB, b3ConstArray(b3RigidBodyData_t) cpuBodyBuf, \n"
" b3ConstArray(b3ConvexPolyhedronData_t) cpuConvexData, \n"
" b3ConstArray(b3Collidable_t) cpuCollidables,\n"
" b3ConstArray(b3Float4) cpuVertices,\n"
@ -1043,7 +1049,7 @@ static const char* mprKernelsCL= \
" iterations++;\n"
" }\n"
"}\n"
"static void b3FindPenetrTouch(b3MprSimplex_t *portal,float *depth, b3Float4 *dir, b3Float4 *pos)\n"
"B3_STATIC void b3FindPenetrTouch(b3MprSimplex_t *portal,float *depth, b3Float4 *dir, b3Float4 *pos)\n"
"{\n"
" // Touching contact on portal's v1 - so depth is zero and direction\n"
" // is unimportant and pos can be guessed\n"
@ -1055,7 +1061,7 @@ static const char* mprKernelsCL= \
" b3MprVec3Add(pos, &b3MprSimplexPoint(portal, 1)->v2);\n"
" b3MprVec3Scale(pos, 0.5);\n"
"}\n"
"static void b3FindPenetrSegment(b3MprSimplex_t *portal,\n"
"B3_STATIC void b3FindPenetrSegment(b3MprSimplex_t *portal,\n"
" float *depth, b3Float4 *dir, b3Float4 *pos)\n"
"{\n"
" \n"

View File

@ -23,6 +23,7 @@ static const char* primitiveContactsKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -50,6 +50,7 @@ static const char* satClipKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -164,6 +164,7 @@ static const char* satConcaveKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -164,6 +164,7 @@ static const char* satKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -35,6 +35,7 @@ static const char* batchingKernelsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -35,6 +35,7 @@ static const char* batchingKernelsNewCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -35,6 +35,7 @@ static const char* integrateKernelCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -35,6 +35,7 @@ static const char* solverSetupCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -510,7 +510,7 @@ typedef struct
} ConstBufferSSD;
static __constant const int gridTable4x4[] =
__constant const int gridTable4x4[] =
{
0,1,17,16,
1,2,18,19,
@ -518,7 +518,7 @@ static __constant const int gridTable4x4[] =
16,19,3,34
};
static __constant const int gridTable8x8[] =
__constant const int gridTable8x8[] =
{
0, 2, 3, 16, 17, 18, 19, 1,
66, 64, 80, 67, 82, 81, 65, 83,

View File

@ -35,6 +35,7 @@ static const char* solverSetup2CL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"
@ -514,14 +515,14 @@ static const char* solverSetup2CL= \
" float m_scale;\n"
" int m_nSplit;\n"
"} ConstBufferSSD;\n"
"static __constant const int gridTable4x4[] = \n"
"__constant const int gridTable4x4[] = \n"
"{\n"
" 0,1,17,16,\n"
" 1,2,18,19,\n"
" 17,18,32,3,\n"
" 16,19,3,34\n"
"};\n"
"static __constant const int gridTable8x8[] = \n"
"__constant const int gridTable8x8[] = \n"
"{\n"
" 0, 2, 3, 16, 17, 18, 19, 1,\n"
" 66, 64, 80, 67, 82, 81, 65, 83,\n"

View File

@ -35,6 +35,7 @@ static const char* solverUtilsCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"

View File

@ -25,6 +25,7 @@ static const char* updateAabbsKernelCL= \
"#define b3Sqrt native_sqrt\n"
"#define b3Sin native_sin\n"
"#define b3Cos native_cos\n"
"#define B3_STATIC\n"
"#endif\n"
"#endif\n"
"#ifdef __cplusplus\n"