ocl: autogenerated code

This commit is contained in:
Alexander Alekhin 2016-10-02 02:36:26 +03:00
parent a0add98b30
commit 411e551335
4 changed files with 914 additions and 837 deletions

View File

@ -39,319 +39,282 @@ enum OPENCLAMDFFT_FN_ID {
namespace {
// generated by parser_clamdfft.py
template <int ID, typename _R>
struct openclamdfft_fn0
{
typedef _R (*FN)();
static _R switch_fn()
{ return ((FN)openclamdfft_check_fn(ID))(); }
};
#define openclamdfft_fn0(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(); } \
template <int ID, typename _R, typename _T1>
struct openclamdfft_fn1
{
typedef _R (*FN)(_T1);
static _R switch_fn(_T1 p1)
{ return ((FN)openclamdfft_check_fn(ID))(p1); }
};
#define openclamdfft_fn1(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1); } \
template <int ID, typename _R, typename _T1, typename _T2>
struct openclamdfft_fn2
{
typedef _R (*FN)(_T1, _T2);
static _R switch_fn(_T1 p1, _T2 p2)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2); }
};
#define openclamdfft_fn2(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3>
struct openclamdfft_fn3
{
typedef _R (*FN)(_T1, _T2, _T3);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3); }
};
#define openclamdfft_fn3(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4>
struct openclamdfft_fn4
{
typedef _R (*FN)(_T1, _T2, _T3, _T4);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4); }
};
#define openclamdfft_fn4(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5>
struct openclamdfft_fn5
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5); }
};
#define openclamdfft_fn5(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6>
struct openclamdfft_fn6
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6); }
};
#define openclamdfft_fn6(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7>
struct openclamdfft_fn7
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); }
};
#define openclamdfft_fn7(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8>
struct openclamdfft_fn8
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); }
};
#define openclamdfft_fn8(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9>
struct openclamdfft_fn9
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); }
};
#define openclamdfft_fn9(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10>
struct openclamdfft_fn10
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); }
};
#define openclamdfft_fn10(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11>
struct openclamdfft_fn11
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); }
};
#define openclamdfft_fn11(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12>
struct openclamdfft_fn12
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); }
};
#define openclamdfft_fn12(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13>
struct openclamdfft_fn13
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); }
};
#define openclamdfft_fn13(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14>
struct openclamdfft_fn14
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); }
};
#define openclamdfft_fn14(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15>
struct openclamdfft_fn15
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15); }
};
#define openclamdfft_fn15(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16>
struct openclamdfft_fn16
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16); }
};
#define openclamdfft_fn16(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17>
struct openclamdfft_fn17
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17); }
};
#define openclamdfft_fn17(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17, typename _T18>
struct openclamdfft_fn18
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17, _T18);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17, _T18 p18)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18); }
};
#define openclamdfft_fn18(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17, typename _T18, typename _T19>
struct openclamdfft_fn19
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17, _T18, _T19);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17, _T18 p18, _T19 p19)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19); }
};
#define openclamdfft_fn19(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17, typename _T18, typename _T19, typename _T20>
struct openclamdfft_fn20
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17, _T18, _T19, _T20);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17, _T18 p18, _T19 p19, _T20 p20)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20); }
};
#define openclamdfft_fn20(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17, typename _T18, typename _T19, typename _T20, typename _T21>
struct openclamdfft_fn21
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17, _T18, _T19, _T20, _T21);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17, _T18 p18, _T19 p19, _T20 p20, _T21 p21)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21); }
};
#define openclamdfft_fn21(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14, typename _T15, typename _T16, typename _T17, typename _T18, typename _T19, typename _T20, typename _T21, typename _T22>
struct openclamdfft_fn22
{
typedef _R (*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14, _T15, _T16, _T17, _T18, _T19, _T20, _T21, _T22);
static _R switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14, _T15 p15, _T16 p16, _T17 p17, _T18 p18, _T19 p19, _T20 p20, _T21 p21, _T22 p22)
{ return ((FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22); }
};
#define openclamdfft_fn22(ID, _R, decl_args) \
typedef _R (*ID##FN)decl_args; \
static _R ID##_switch_fn decl_args \
{ return ((ID##FN)openclamdfft_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22); } \
}
// generated by parser_clamdfft.py
openclamdfft_fn5(OPENCLAMDFFT_FN_clAmdFftBakePlan, clAmdFftStatus, (clAmdFftPlanHandle p1, cl_uint p2, cl_command_queue* p3, void (CL_CALLBACK*p4) (clAmdFftPlanHandle plHandle, void* user_data), void* p5))
clAmdFftStatus (*clAmdFftBakePlan)(clAmdFftPlanHandle, cl_uint, cl_command_queue*, void (CL_CALLBACK*) (clAmdFftPlanHandle plHandle, void* user_data), void*) =
openclamdfft_fn5<OPENCLAMDFFT_FN_clAmdFftBakePlan, clAmdFftStatus, clAmdFftPlanHandle, cl_uint, cl_command_queue*, void (CL_CALLBACK*) (clAmdFftPlanHandle plHandle, void* user_data), void*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftBakePlan_switch_fn;
static const struct DynamicFnEntry clAmdFftBakePlan_definition = { "clAmdFftBakePlan", (void**)&clAmdFftBakePlan};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftCopyPlan, clAmdFftStatus, (clAmdFftPlanHandle* p1, cl_context p2, clAmdFftPlanHandle p3))
//clAmdFftStatus (*clAmdFftCopyPlan)(clAmdFftPlanHandle*, cl_context, clAmdFftPlanHandle) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftCopyPlan, clAmdFftStatus, clAmdFftPlanHandle*, cl_context, clAmdFftPlanHandle>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftCopyPlan_switch_fn;
//static const struct DynamicFnEntry clAmdFftCopyPlan_definition = { "clAmdFftCopyPlan", (void**)&clAmdFftCopyPlan};
openclamdfft_fn4(OPENCLAMDFFT_FN_clAmdFftCreateDefaultPlan, clAmdFftStatus, (clAmdFftPlanHandle* p1, cl_context p2, const clAmdFftDim p3, const size_t* p4))
clAmdFftStatus (*clAmdFftCreateDefaultPlan)(clAmdFftPlanHandle*, cl_context, const clAmdFftDim, const size_t*) =
openclamdfft_fn4<OPENCLAMDFFT_FN_clAmdFftCreateDefaultPlan, clAmdFftStatus, clAmdFftPlanHandle*, cl_context, const clAmdFftDim, const size_t*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftCreateDefaultPlan_switch_fn;
static const struct DynamicFnEntry clAmdFftCreateDefaultPlan_definition = { "clAmdFftCreateDefaultPlan", (void**)&clAmdFftCreateDefaultPlan};
openclamdfft_fn1(OPENCLAMDFFT_FN_clAmdFftDestroyPlan, clAmdFftStatus, (clAmdFftPlanHandle* p1))
clAmdFftStatus (*clAmdFftDestroyPlan)(clAmdFftPlanHandle*) =
openclamdfft_fn1<OPENCLAMDFFT_FN_clAmdFftDestroyPlan, clAmdFftStatus, clAmdFftPlanHandle*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftDestroyPlan_switch_fn;
static const struct DynamicFnEntry clAmdFftDestroyPlan_definition = { "clAmdFftDestroyPlan", (void**)&clAmdFftDestroyPlan};
openclamdfft_fn10(OPENCLAMDFFT_FN_clAmdFftEnqueueTransform, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftDirection p2, cl_uint p3, cl_command_queue* p4, cl_uint p5, const cl_event* p6, cl_event* p7, cl_mem* p8, cl_mem* p9, cl_mem p10))
clAmdFftStatus (*clAmdFftEnqueueTransform)(clAmdFftPlanHandle, clAmdFftDirection, cl_uint, cl_command_queue*, cl_uint, const cl_event*, cl_event*, cl_mem*, cl_mem*, cl_mem) =
openclamdfft_fn10<OPENCLAMDFFT_FN_clAmdFftEnqueueTransform, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftDirection, cl_uint, cl_command_queue*, cl_uint, const cl_event*, cl_event*, cl_mem*, cl_mem*, cl_mem>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftEnqueueTransform_switch_fn;
static const struct DynamicFnEntry clAmdFftEnqueueTransform_definition = { "clAmdFftEnqueueTransform", (void**)&clAmdFftEnqueueTransform};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetLayout, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftLayout* p2, clAmdFftLayout* p3))
//clAmdFftStatus (*clAmdFftGetLayout)(const clAmdFftPlanHandle, clAmdFftLayout*, clAmdFftLayout*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetLayout, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftLayout*, clAmdFftLayout*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetLayout_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetLayout_definition = { "clAmdFftGetLayout", (void**)&clAmdFftGetLayout};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetPlanBatchSize, clAmdFftStatus, (const clAmdFftPlanHandle p1, size_t* p2))
//clAmdFftStatus (*clAmdFftGetPlanBatchSize)(const clAmdFftPlanHandle, size_t*) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetPlanBatchSize, clAmdFftStatus, const clAmdFftPlanHandle, size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanBatchSize_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanBatchSize_definition = { "clAmdFftGetPlanBatchSize", (void**)&clAmdFftGetPlanBatchSize};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetPlanContext, clAmdFftStatus, (const clAmdFftPlanHandle p1, cl_context* p2))
//clAmdFftStatus (*clAmdFftGetPlanContext)(const clAmdFftPlanHandle, cl_context*) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetPlanContext, clAmdFftStatus, const clAmdFftPlanHandle, cl_context*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanContext_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanContext_definition = { "clAmdFftGetPlanContext", (void**)&clAmdFftGetPlanContext};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanDim, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftDim* p2, cl_uint* p3))
//clAmdFftStatus (*clAmdFftGetPlanDim)(const clAmdFftPlanHandle, clAmdFftDim*, cl_uint*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanDim, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftDim*, cl_uint*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanDim_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanDim_definition = { "clAmdFftGetPlanDim", (void**)&clAmdFftGetPlanDim};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanDistance, clAmdFftStatus, (const clAmdFftPlanHandle p1, size_t* p2, size_t* p3))
//clAmdFftStatus (*clAmdFftGetPlanDistance)(const clAmdFftPlanHandle, size_t*, size_t*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanDistance, clAmdFftStatus, const clAmdFftPlanHandle, size_t*, size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanDistance_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanDistance_definition = { "clAmdFftGetPlanDistance", (void**)&clAmdFftGetPlanDistance};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanInStride, clAmdFftStatus, (const clAmdFftPlanHandle p1, const clAmdFftDim p2, size_t* p3))
//clAmdFftStatus (*clAmdFftGetPlanInStride)(const clAmdFftPlanHandle, const clAmdFftDim, size_t*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanInStride, clAmdFftStatus, const clAmdFftPlanHandle, const clAmdFftDim, size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanInStride_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanInStride_definition = { "clAmdFftGetPlanInStride", (void**)&clAmdFftGetPlanInStride};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanLength, clAmdFftStatus, (const clAmdFftPlanHandle p1, const clAmdFftDim p2, size_t* p3))
//clAmdFftStatus (*clAmdFftGetPlanLength)(const clAmdFftPlanHandle, const clAmdFftDim, size_t*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanLength, clAmdFftStatus, const clAmdFftPlanHandle, const clAmdFftDim, size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanLength_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanLength_definition = { "clAmdFftGetPlanLength", (void**)&clAmdFftGetPlanLength};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanOutStride, clAmdFftStatus, (const clAmdFftPlanHandle p1, const clAmdFftDim p2, size_t* p3))
//clAmdFftStatus (*clAmdFftGetPlanOutStride)(const clAmdFftPlanHandle, const clAmdFftDim, size_t*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanOutStride, clAmdFftStatus, const clAmdFftPlanHandle, const clAmdFftDim, size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanOutStride_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanOutStride_definition = { "clAmdFftGetPlanOutStride", (void**)&clAmdFftGetPlanOutStride};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetPlanPrecision, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftPrecision* p2))
//clAmdFftStatus (*clAmdFftGetPlanPrecision)(const clAmdFftPlanHandle, clAmdFftPrecision*) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetPlanPrecision, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftPrecision*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanPrecision_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanPrecision_definition = { "clAmdFftGetPlanPrecision", (void**)&clAmdFftGetPlanPrecision};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetPlanScale, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftDirection p2, cl_float* p3))
//clAmdFftStatus (*clAmdFftGetPlanScale)(const clAmdFftPlanHandle, clAmdFftDirection, cl_float*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetPlanScale, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftDirection, cl_float*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanScale_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanScale_definition = { "clAmdFftGetPlanScale", (void**)&clAmdFftGetPlanScale};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetPlanTransposeResult, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftResultTransposed* p2))
//clAmdFftStatus (*clAmdFftGetPlanTransposeResult)(const clAmdFftPlanHandle, clAmdFftResultTransposed*) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetPlanTransposeResult, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftResultTransposed*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetPlanTransposeResult_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetPlanTransposeResult_definition = { "clAmdFftGetPlanTransposeResult", (void**)&clAmdFftGetPlanTransposeResult};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetResultLocation, clAmdFftStatus, (const clAmdFftPlanHandle p1, clAmdFftResultLocation* p2))
//clAmdFftStatus (*clAmdFftGetResultLocation)(const clAmdFftPlanHandle, clAmdFftResultLocation*) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetResultLocation, clAmdFftStatus, const clAmdFftPlanHandle, clAmdFftResultLocation*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftGetResultLocation_switch_fn;
//static const struct DynamicFnEntry clAmdFftGetResultLocation_definition = { "clAmdFftGetResultLocation", (void**)&clAmdFftGetResultLocation};
openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftGetTmpBufSize, clAmdFftStatus, (const clAmdFftPlanHandle p1, size_t* p2))
clAmdFftStatus (*clAmdFftGetTmpBufSize)(const clAmdFftPlanHandle, size_t*) =
openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftGetTmpBufSize, clAmdFftStatus, const clAmdFftPlanHandle, size_t*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftGetTmpBufSize_switch_fn;
static const struct DynamicFnEntry clAmdFftGetTmpBufSize_definition = { "clAmdFftGetTmpBufSize", (void**)&clAmdFftGetTmpBufSize};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftGetVersion, clAmdFftStatus, (cl_uint* p1, cl_uint* p2, cl_uint* p3))
clAmdFftStatus (*clAmdFftGetVersion)(cl_uint*, cl_uint*, cl_uint*) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftGetVersion, clAmdFftStatus, cl_uint*, cl_uint*, cl_uint*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftGetVersion_switch_fn;
static const struct DynamicFnEntry clAmdFftGetVersion_definition = { "clAmdFftGetVersion", (void**)&clAmdFftGetVersion};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetLayout, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftLayout p2, clAmdFftLayout p3))
clAmdFftStatus (*clAmdFftSetLayout)(clAmdFftPlanHandle, clAmdFftLayout, clAmdFftLayout) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetLayout, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftLayout, clAmdFftLayout>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetLayout_switch_fn;
static const struct DynamicFnEntry clAmdFftSetLayout_definition = { "clAmdFftSetLayout", (void**)&clAmdFftSetLayout};
openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftSetPlanBatchSize, clAmdFftStatus, (clAmdFftPlanHandle p1, size_t p2))
clAmdFftStatus (*clAmdFftSetPlanBatchSize)(clAmdFftPlanHandle, size_t) =
openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftSetPlanBatchSize, clAmdFftStatus, clAmdFftPlanHandle, size_t>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanBatchSize_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanBatchSize_definition = { "clAmdFftSetPlanBatchSize", (void**)&clAmdFftSetPlanBatchSize};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftSetPlanDim, clAmdFftStatus, (clAmdFftPlanHandle p1, const clAmdFftDim p2))
//clAmdFftStatus (*clAmdFftSetPlanDim)(clAmdFftPlanHandle, const clAmdFftDim) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftSetPlanDim, clAmdFftStatus, clAmdFftPlanHandle, const clAmdFftDim>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftSetPlanDim_switch_fn;
//static const struct DynamicFnEntry clAmdFftSetPlanDim_definition = { "clAmdFftSetPlanDim", (void**)&clAmdFftSetPlanDim};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetPlanDistance, clAmdFftStatus, (clAmdFftPlanHandle p1, size_t p2, size_t p3))
clAmdFftStatus (*clAmdFftSetPlanDistance)(clAmdFftPlanHandle, size_t, size_t) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetPlanDistance, clAmdFftStatus, clAmdFftPlanHandle, size_t, size_t>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanDistance_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanDistance_definition = { "clAmdFftSetPlanDistance", (void**)&clAmdFftSetPlanDistance};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetPlanInStride, clAmdFftStatus, (clAmdFftPlanHandle p1, const clAmdFftDim p2, size_t* p3))
clAmdFftStatus (*clAmdFftSetPlanInStride)(clAmdFftPlanHandle, const clAmdFftDim, size_t*) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetPlanInStride, clAmdFftStatus, clAmdFftPlanHandle, const clAmdFftDim, size_t*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanInStride_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanInStride_definition = { "clAmdFftSetPlanInStride", (void**)&clAmdFftSetPlanInStride};
//openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetPlanLength, clAmdFftStatus, (clAmdFftPlanHandle p1, const clAmdFftDim p2, const size_t* p3))
//clAmdFftStatus (*clAmdFftSetPlanLength)(clAmdFftPlanHandle, const clAmdFftDim, const size_t*) =
// openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetPlanLength, clAmdFftStatus, clAmdFftPlanHandle, const clAmdFftDim, const size_t*>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftSetPlanLength_switch_fn;
//static const struct DynamicFnEntry clAmdFftSetPlanLength_definition = { "clAmdFftSetPlanLength", (void**)&clAmdFftSetPlanLength};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetPlanOutStride, clAmdFftStatus, (clAmdFftPlanHandle p1, const clAmdFftDim p2, size_t* p3))
clAmdFftStatus (*clAmdFftSetPlanOutStride)(clAmdFftPlanHandle, const clAmdFftDim, size_t*) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetPlanOutStride, clAmdFftStatus, clAmdFftPlanHandle, const clAmdFftDim, size_t*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanOutStride_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanOutStride_definition = { "clAmdFftSetPlanOutStride", (void**)&clAmdFftSetPlanOutStride};
openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftSetPlanPrecision, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftPrecision p2))
clAmdFftStatus (*clAmdFftSetPlanPrecision)(clAmdFftPlanHandle, clAmdFftPrecision) =
openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftSetPlanPrecision, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftPrecision>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanPrecision_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanPrecision_definition = { "clAmdFftSetPlanPrecision", (void**)&clAmdFftSetPlanPrecision};
openclamdfft_fn3(OPENCLAMDFFT_FN_clAmdFftSetPlanScale, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftDirection p2, cl_float p3))
clAmdFftStatus (*clAmdFftSetPlanScale)(clAmdFftPlanHandle, clAmdFftDirection, cl_float) =
openclamdfft_fn3<OPENCLAMDFFT_FN_clAmdFftSetPlanScale, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftDirection, cl_float>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetPlanScale_switch_fn;
static const struct DynamicFnEntry clAmdFftSetPlanScale_definition = { "clAmdFftSetPlanScale", (void**)&clAmdFftSetPlanScale};
//openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftSetPlanTransposeResult, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftResultTransposed p2))
//clAmdFftStatus (*clAmdFftSetPlanTransposeResult)(clAmdFftPlanHandle, clAmdFftResultTransposed) =
// openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftSetPlanTransposeResult, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftResultTransposed>::switch_fn;
// OPENCLAMDFFT_FN_clAmdFftSetPlanTransposeResult_switch_fn;
//static const struct DynamicFnEntry clAmdFftSetPlanTransposeResult_definition = { "clAmdFftSetPlanTransposeResult", (void**)&clAmdFftSetPlanTransposeResult};
openclamdfft_fn2(OPENCLAMDFFT_FN_clAmdFftSetResultLocation, clAmdFftStatus, (clAmdFftPlanHandle p1, clAmdFftResultLocation p2))
clAmdFftStatus (*clAmdFftSetResultLocation)(clAmdFftPlanHandle, clAmdFftResultLocation) =
openclamdfft_fn2<OPENCLAMDFFT_FN_clAmdFftSetResultLocation, clAmdFftStatus, clAmdFftPlanHandle, clAmdFftResultLocation>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetResultLocation_switch_fn;
static const struct DynamicFnEntry clAmdFftSetResultLocation_definition = { "clAmdFftSetResultLocation", (void**)&clAmdFftSetResultLocation};
openclamdfft_fn1(OPENCLAMDFFT_FN_clAmdFftSetup, clAmdFftStatus, (const clAmdFftSetupData* p1))
clAmdFftStatus (*clAmdFftSetup)(const clAmdFftSetupData*) =
openclamdfft_fn1<OPENCLAMDFFT_FN_clAmdFftSetup, clAmdFftStatus, const clAmdFftSetupData*>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftSetup_switch_fn;
static const struct DynamicFnEntry clAmdFftSetup_definition = { "clAmdFftSetup", (void**)&clAmdFftSetup};
openclamdfft_fn0(OPENCLAMDFFT_FN_clAmdFftTeardown, clAmdFftStatus, ())
clAmdFftStatus (*clAmdFftTeardown)() =
openclamdfft_fn0<OPENCLAMDFFT_FN_clAmdFftTeardown, clAmdFftStatus>::switch_fn;
OPENCLAMDFFT_FN_clAmdFftTeardown_switch_fn;
static const struct DynamicFnEntry clAmdFftTeardown_definition = { "clAmdFftTeardown", (void**)&clAmdFftTeardown};

View File

@ -95,479 +95,522 @@ enum OPENCL_FN_ID {
namespace {
// generated by parser_cl.py
template <int ID, typename _R>
struct opencl_fn0
{
typedef _R (CL_API_CALL*FN)();
static _R CL_API_CALL switch_fn()
{ return ((FN)opencl_check_fn(ID))(); }
};
#define opencl_fn0(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(); } \
template <int ID, typename _R, typename _T1>
struct opencl_fn1
{
typedef _R (CL_API_CALL*FN)(_T1);
static _R CL_API_CALL switch_fn(_T1 p1)
{ return ((FN)opencl_check_fn(ID))(p1); }
};
#define opencl_fn1(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1); } \
template <int ID, typename _R, typename _T1, typename _T2>
struct opencl_fn2
{
typedef _R (CL_API_CALL*FN)(_T1, _T2);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2)
{ return ((FN)opencl_check_fn(ID))(p1, p2); }
};
#define opencl_fn2(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3>
struct opencl_fn3
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3); }
};
#define opencl_fn3(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4>
struct opencl_fn4
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4); }
};
#define opencl_fn4(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5>
struct opencl_fn5
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5); }
};
#define opencl_fn5(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6>
struct opencl_fn6
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6); }
};
#define opencl_fn6(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7>
struct opencl_fn7
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); }
};
#define opencl_fn7(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8>
struct opencl_fn8
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); }
};
#define opencl_fn8(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9>
struct opencl_fn9
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); }
};
#define opencl_fn9(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10>
struct opencl_fn10
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); }
};
#define opencl_fn10(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11>
struct opencl_fn11
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); }
};
#define opencl_fn11(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12>
struct opencl_fn12
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); }
};
#define opencl_fn12(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13>
struct opencl_fn13
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); }
};
#define opencl_fn13(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14>
struct opencl_fn14
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14)
{ return ((FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); }
};
#define opencl_fn14(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); } \
} // anonymous namespace
// generated by parser_cl.py
opencl_fn6(OPENCL_FN_clBuildProgram, cl_int, (cl_program p1, cl_uint p2, const cl_device_id* p3, const char* p4, void (CL_CALLBACK*p5) (cl_program, void*), void* p6))
cl_int (CL_API_CALL*clBuildProgram)(cl_program, cl_uint, const cl_device_id*, const char*, void (CL_CALLBACK*) (cl_program, void*), void*) =
opencl_fn6<OPENCL_FN_clBuildProgram, cl_int, cl_program, cl_uint, const cl_device_id*, const char*, void (CL_CALLBACK*) (cl_program, void*), void*>::switch_fn;
OPENCL_FN_clBuildProgram_switch_fn;
static const struct DynamicFnEntry clBuildProgram_definition = { "clBuildProgram", (void**)&clBuildProgram};
opencl_fn9(OPENCL_FN_clCompileProgram, cl_int, (cl_program p1, cl_uint p2, const cl_device_id* p3, const char* p4, cl_uint p5, const cl_program* p6, const char** p7, void (CL_CALLBACK*p8) (cl_program, void*), void* p9))
cl_int (CL_API_CALL*clCompileProgram)(cl_program, cl_uint, const cl_device_id*, const char*, cl_uint, const cl_program*, const char**, void (CL_CALLBACK*) (cl_program, void*), void*) =
opencl_fn9<OPENCL_FN_clCompileProgram, cl_int, cl_program, cl_uint, const cl_device_id*, const char*, cl_uint, const cl_program*, const char**, void (CL_CALLBACK*) (cl_program, void*), void*>::switch_fn;
OPENCL_FN_clCompileProgram_switch_fn;
static const struct DynamicFnEntry clCompileProgram_definition = { "clCompileProgram", (void**)&clCompileProgram};
opencl_fn5(OPENCL_FN_clCreateBuffer, cl_mem, (cl_context p1, cl_mem_flags p2, size_t p3, void* p4, cl_int* p5))
cl_mem (CL_API_CALL*clCreateBuffer)(cl_context, cl_mem_flags, size_t, void*, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateBuffer, cl_mem, cl_context, cl_mem_flags, size_t, void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateBuffer_switch_fn;
static const struct DynamicFnEntry clCreateBuffer_definition = { "clCreateBuffer", (void**)&clCreateBuffer};
opencl_fn4(OPENCL_FN_clCreateCommandQueue, cl_command_queue, (cl_context p1, cl_device_id p2, cl_command_queue_properties p3, cl_int* p4))
cl_command_queue (CL_API_CALL*clCreateCommandQueue)(cl_context, cl_device_id, cl_command_queue_properties, cl_int*) =
opencl_fn4<OPENCL_FN_clCreateCommandQueue, cl_command_queue, cl_context, cl_device_id, cl_command_queue_properties, cl_int*>::switch_fn;
OPENCL_FN_clCreateCommandQueue_switch_fn;
static const struct DynamicFnEntry clCreateCommandQueue_definition = { "clCreateCommandQueue", (void**)&clCreateCommandQueue};
opencl_fn6(OPENCL_FN_clCreateContext, cl_context, (const cl_context_properties* p1, cl_uint p2, const cl_device_id* p3, void (CL_CALLBACK*p4) (const char*, const void*, size_t, void*), void* p5, cl_int* p6))
cl_context (CL_API_CALL*clCreateContext)(const cl_context_properties*, cl_uint, const cl_device_id*, void (CL_CALLBACK*) (const char*, const void*, size_t, void*), void*, cl_int*) =
opencl_fn6<OPENCL_FN_clCreateContext, cl_context, const cl_context_properties*, cl_uint, const cl_device_id*, void (CL_CALLBACK*) (const char*, const void*, size_t, void*), void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateContext_switch_fn;
static const struct DynamicFnEntry clCreateContext_definition = { "clCreateContext", (void**)&clCreateContext};
opencl_fn5(OPENCL_FN_clCreateContextFromType, cl_context, (const cl_context_properties* p1, cl_device_type p2, void (CL_CALLBACK*p3) (const char*, const void*, size_t, void*), void* p4, cl_int* p5))
cl_context (CL_API_CALL*clCreateContextFromType)(const cl_context_properties*, cl_device_type, void (CL_CALLBACK*) (const char*, const void*, size_t, void*), void*, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateContextFromType, cl_context, const cl_context_properties*, cl_device_type, void (CL_CALLBACK*) (const char*, const void*, size_t, void*), void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateContextFromType_switch_fn;
static const struct DynamicFnEntry clCreateContextFromType_definition = { "clCreateContextFromType", (void**)&clCreateContextFromType};
opencl_fn6(OPENCL_FN_clCreateImage, cl_mem, (cl_context p1, cl_mem_flags p2, const cl_image_format* p3, const cl_image_desc* p4, void* p5, cl_int* p6))
cl_mem (CL_API_CALL*clCreateImage)(cl_context, cl_mem_flags, const cl_image_format*, const cl_image_desc*, void*, cl_int*) =
opencl_fn6<OPENCL_FN_clCreateImage, cl_mem, cl_context, cl_mem_flags, const cl_image_format*, const cl_image_desc*, void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateImage_switch_fn;
static const struct DynamicFnEntry clCreateImage_definition = { "clCreateImage", (void**)&clCreateImage};
opencl_fn8(OPENCL_FN_clCreateImage2D, cl_mem, (cl_context p1, cl_mem_flags p2, const cl_image_format* p3, size_t p4, size_t p5, size_t p6, void* p7, cl_int* p8))
cl_mem (CL_API_CALL*clCreateImage2D)(cl_context, cl_mem_flags, const cl_image_format*, size_t, size_t, size_t, void*, cl_int*) =
opencl_fn8<OPENCL_FN_clCreateImage2D, cl_mem, cl_context, cl_mem_flags, const cl_image_format*, size_t, size_t, size_t, void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateImage2D_switch_fn;
static const struct DynamicFnEntry clCreateImage2D_definition = { "clCreateImage2D", (void**)&clCreateImage2D};
opencl_fn10(OPENCL_FN_clCreateImage3D, cl_mem, (cl_context p1, cl_mem_flags p2, const cl_image_format* p3, size_t p4, size_t p5, size_t p6, size_t p7, size_t p8, void* p9, cl_int* p10))
cl_mem (CL_API_CALL*clCreateImage3D)(cl_context, cl_mem_flags, const cl_image_format*, size_t, size_t, size_t, size_t, size_t, void*, cl_int*) =
opencl_fn10<OPENCL_FN_clCreateImage3D, cl_mem, cl_context, cl_mem_flags, const cl_image_format*, size_t, size_t, size_t, size_t, size_t, void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateImage3D_switch_fn;
static const struct DynamicFnEntry clCreateImage3D_definition = { "clCreateImage3D", (void**)&clCreateImage3D};
opencl_fn3(OPENCL_FN_clCreateKernel, cl_kernel, (cl_program p1, const char* p2, cl_int* p3))
cl_kernel (CL_API_CALL*clCreateKernel)(cl_program, const char*, cl_int*) =
opencl_fn3<OPENCL_FN_clCreateKernel, cl_kernel, cl_program, const char*, cl_int*>::switch_fn;
OPENCL_FN_clCreateKernel_switch_fn;
static const struct DynamicFnEntry clCreateKernel_definition = { "clCreateKernel", (void**)&clCreateKernel};
opencl_fn4(OPENCL_FN_clCreateKernelsInProgram, cl_int, (cl_program p1, cl_uint p2, cl_kernel* p3, cl_uint* p4))
cl_int (CL_API_CALL*clCreateKernelsInProgram)(cl_program, cl_uint, cl_kernel*, cl_uint*) =
opencl_fn4<OPENCL_FN_clCreateKernelsInProgram, cl_int, cl_program, cl_uint, cl_kernel*, cl_uint*>::switch_fn;
OPENCL_FN_clCreateKernelsInProgram_switch_fn;
static const struct DynamicFnEntry clCreateKernelsInProgram_definition = { "clCreateKernelsInProgram", (void**)&clCreateKernelsInProgram};
opencl_fn7(OPENCL_FN_clCreateProgramWithBinary, cl_program, (cl_context p1, cl_uint p2, const cl_device_id* p3, const size_t* p4, const unsigned char** p5, cl_int* p6, cl_int* p7))
cl_program (CL_API_CALL*clCreateProgramWithBinary)(cl_context, cl_uint, const cl_device_id*, const size_t*, const unsigned char**, cl_int*, cl_int*) =
opencl_fn7<OPENCL_FN_clCreateProgramWithBinary, cl_program, cl_context, cl_uint, const cl_device_id*, const size_t*, const unsigned char**, cl_int*, cl_int*>::switch_fn;
OPENCL_FN_clCreateProgramWithBinary_switch_fn;
static const struct DynamicFnEntry clCreateProgramWithBinary_definition = { "clCreateProgramWithBinary", (void**)&clCreateProgramWithBinary};
opencl_fn5(OPENCL_FN_clCreateProgramWithBuiltInKernels, cl_program, (cl_context p1, cl_uint p2, const cl_device_id* p3, const char* p4, cl_int* p5))
cl_program (CL_API_CALL*clCreateProgramWithBuiltInKernels)(cl_context, cl_uint, const cl_device_id*, const char*, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateProgramWithBuiltInKernels, cl_program, cl_context, cl_uint, const cl_device_id*, const char*, cl_int*>::switch_fn;
OPENCL_FN_clCreateProgramWithBuiltInKernels_switch_fn;
static const struct DynamicFnEntry clCreateProgramWithBuiltInKernels_definition = { "clCreateProgramWithBuiltInKernels", (void**)&clCreateProgramWithBuiltInKernels};
opencl_fn5(OPENCL_FN_clCreateProgramWithSource, cl_program, (cl_context p1, cl_uint p2, const char** p3, const size_t* p4, cl_int* p5))
cl_program (CL_API_CALL*clCreateProgramWithSource)(cl_context, cl_uint, const char**, const size_t*, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateProgramWithSource, cl_program, cl_context, cl_uint, const char**, const size_t*, cl_int*>::switch_fn;
OPENCL_FN_clCreateProgramWithSource_switch_fn;
static const struct DynamicFnEntry clCreateProgramWithSource_definition = { "clCreateProgramWithSource", (void**)&clCreateProgramWithSource};
opencl_fn5(OPENCL_FN_clCreateSampler, cl_sampler, (cl_context p1, cl_bool p2, cl_addressing_mode p3, cl_filter_mode p4, cl_int* p5))
cl_sampler (CL_API_CALL*clCreateSampler)(cl_context, cl_bool, cl_addressing_mode, cl_filter_mode, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateSampler, cl_sampler, cl_context, cl_bool, cl_addressing_mode, cl_filter_mode, cl_int*>::switch_fn;
OPENCL_FN_clCreateSampler_switch_fn;
static const struct DynamicFnEntry clCreateSampler_definition = { "clCreateSampler", (void**)&clCreateSampler};
opencl_fn5(OPENCL_FN_clCreateSubBuffer, cl_mem, (cl_mem p1, cl_mem_flags p2, cl_buffer_create_type p3, const void* p4, cl_int* p5))
cl_mem (CL_API_CALL*clCreateSubBuffer)(cl_mem, cl_mem_flags, cl_buffer_create_type, const void*, cl_int*) =
opencl_fn5<OPENCL_FN_clCreateSubBuffer, cl_mem, cl_mem, cl_mem_flags, cl_buffer_create_type, const void*, cl_int*>::switch_fn;
OPENCL_FN_clCreateSubBuffer_switch_fn;
static const struct DynamicFnEntry clCreateSubBuffer_definition = { "clCreateSubBuffer", (void**)&clCreateSubBuffer};
opencl_fn5(OPENCL_FN_clCreateSubDevices, cl_int, (cl_device_id p1, const cl_device_partition_property* p2, cl_uint p3, cl_device_id* p4, cl_uint* p5))
cl_int (CL_API_CALL*clCreateSubDevices)(cl_device_id, const cl_device_partition_property*, cl_uint, cl_device_id*, cl_uint*) =
opencl_fn5<OPENCL_FN_clCreateSubDevices, cl_int, cl_device_id, const cl_device_partition_property*, cl_uint, cl_device_id*, cl_uint*>::switch_fn;
OPENCL_FN_clCreateSubDevices_switch_fn;
static const struct DynamicFnEntry clCreateSubDevices_definition = { "clCreateSubDevices", (void**)&clCreateSubDevices};
opencl_fn2(OPENCL_FN_clCreateUserEvent, cl_event, (cl_context p1, cl_int* p2))
cl_event (CL_API_CALL*clCreateUserEvent)(cl_context, cl_int*) =
opencl_fn2<OPENCL_FN_clCreateUserEvent, cl_event, cl_context, cl_int*>::switch_fn;
OPENCL_FN_clCreateUserEvent_switch_fn;
static const struct DynamicFnEntry clCreateUserEvent_definition = { "clCreateUserEvent", (void**)&clCreateUserEvent};
opencl_fn1(OPENCL_FN_clEnqueueBarrier, cl_int, (cl_command_queue p1))
cl_int (CL_API_CALL*clEnqueueBarrier)(cl_command_queue) =
opencl_fn1<OPENCL_FN_clEnqueueBarrier, cl_int, cl_command_queue>::switch_fn;
OPENCL_FN_clEnqueueBarrier_switch_fn;
static const struct DynamicFnEntry clEnqueueBarrier_definition = { "clEnqueueBarrier", (void**)&clEnqueueBarrier};
opencl_fn4(OPENCL_FN_clEnqueueBarrierWithWaitList, cl_int, (cl_command_queue p1, cl_uint p2, const cl_event* p3, cl_event* p4))
cl_int (CL_API_CALL*clEnqueueBarrierWithWaitList)(cl_command_queue, cl_uint, const cl_event*, cl_event*) =
opencl_fn4<OPENCL_FN_clEnqueueBarrierWithWaitList, cl_int, cl_command_queue, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueBarrierWithWaitList_switch_fn;
static const struct DynamicFnEntry clEnqueueBarrierWithWaitList_definition = { "clEnqueueBarrierWithWaitList", (void**)&clEnqueueBarrierWithWaitList};
opencl_fn9(OPENCL_FN_clEnqueueCopyBuffer, cl_int, (cl_command_queue p1, cl_mem p2, cl_mem p3, size_t p4, size_t p5, size_t p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueCopyBuffer)(cl_command_queue, cl_mem, cl_mem, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueCopyBuffer, cl_int, cl_command_queue, cl_mem, cl_mem, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueCopyBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueCopyBuffer_definition = { "clEnqueueCopyBuffer", (void**)&clEnqueueCopyBuffer};
opencl_fn13(OPENCL_FN_clEnqueueCopyBufferRect, cl_int, (cl_command_queue p1, cl_mem p2, cl_mem p3, const size_t* p4, const size_t* p5, const size_t* p6, size_t p7, size_t p8, size_t p9, size_t p10, cl_uint p11, const cl_event* p12, cl_event* p13))
cl_int (CL_API_CALL*clEnqueueCopyBufferRect)(cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*) =
opencl_fn13<OPENCL_FN_clEnqueueCopyBufferRect, cl_int, cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueCopyBufferRect_switch_fn;
static const struct DynamicFnEntry clEnqueueCopyBufferRect_definition = { "clEnqueueCopyBufferRect", (void**)&clEnqueueCopyBufferRect};
opencl_fn9(OPENCL_FN_clEnqueueCopyBufferToImage, cl_int, (cl_command_queue p1, cl_mem p2, cl_mem p3, size_t p4, const size_t* p5, const size_t* p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueCopyBufferToImage)(cl_command_queue, cl_mem, cl_mem, size_t, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueCopyBufferToImage, cl_int, cl_command_queue, cl_mem, cl_mem, size_t, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueCopyBufferToImage_switch_fn;
static const struct DynamicFnEntry clEnqueueCopyBufferToImage_definition = { "clEnqueueCopyBufferToImage", (void**)&clEnqueueCopyBufferToImage};
opencl_fn9(OPENCL_FN_clEnqueueCopyImage, cl_int, (cl_command_queue p1, cl_mem p2, cl_mem p3, const size_t* p4, const size_t* p5, const size_t* p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueCopyImage)(cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueCopyImage, cl_int, cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueCopyImage_switch_fn;
static const struct DynamicFnEntry clEnqueueCopyImage_definition = { "clEnqueueCopyImage", (void**)&clEnqueueCopyImage};
opencl_fn9(OPENCL_FN_clEnqueueCopyImageToBuffer, cl_int, (cl_command_queue p1, cl_mem p2, cl_mem p3, const size_t* p4, const size_t* p5, size_t p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueCopyImageToBuffer)(cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, size_t, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueCopyImageToBuffer, cl_int, cl_command_queue, cl_mem, cl_mem, const size_t*, const size_t*, size_t, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueCopyImageToBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueCopyImageToBuffer_definition = { "clEnqueueCopyImageToBuffer", (void**)&clEnqueueCopyImageToBuffer};
opencl_fn9(OPENCL_FN_clEnqueueFillBuffer, cl_int, (cl_command_queue p1, cl_mem p2, const void* p3, size_t p4, size_t p5, size_t p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueFillBuffer)(cl_command_queue, cl_mem, const void*, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueFillBuffer, cl_int, cl_command_queue, cl_mem, const void*, size_t, size_t, size_t, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueFillBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueFillBuffer_definition = { "clEnqueueFillBuffer", (void**)&clEnqueueFillBuffer};
opencl_fn8(OPENCL_FN_clEnqueueFillImage, cl_int, (cl_command_queue p1, cl_mem p2, const void* p3, const size_t* p4, const size_t* p5, cl_uint p6, const cl_event* p7, cl_event* p8))
cl_int (CL_API_CALL*clEnqueueFillImage)(cl_command_queue, cl_mem, const void*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*) =
opencl_fn8<OPENCL_FN_clEnqueueFillImage, cl_int, cl_command_queue, cl_mem, const void*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueFillImage_switch_fn;
static const struct DynamicFnEntry clEnqueueFillImage_definition = { "clEnqueueFillImage", (void**)&clEnqueueFillImage};
opencl_fn10(OPENCL_FN_clEnqueueMapBuffer, void*, (cl_command_queue p1, cl_mem p2, cl_bool p3, cl_map_flags p4, size_t p5, size_t p6, cl_uint p7, const cl_event* p8, cl_event* p9, cl_int* p10))
void* (CL_API_CALL*clEnqueueMapBuffer)(cl_command_queue, cl_mem, cl_bool, cl_map_flags, size_t, size_t, cl_uint, const cl_event*, cl_event*, cl_int*) =
opencl_fn10<OPENCL_FN_clEnqueueMapBuffer, void*, cl_command_queue, cl_mem, cl_bool, cl_map_flags, size_t, size_t, cl_uint, const cl_event*, cl_event*, cl_int*>::switch_fn;
OPENCL_FN_clEnqueueMapBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueMapBuffer_definition = { "clEnqueueMapBuffer", (void**)&clEnqueueMapBuffer};
opencl_fn12(OPENCL_FN_clEnqueueMapImage, void*, (cl_command_queue p1, cl_mem p2, cl_bool p3, cl_map_flags p4, const size_t* p5, const size_t* p6, size_t* p7, size_t* p8, cl_uint p9, const cl_event* p10, cl_event* p11, cl_int* p12))
void* (CL_API_CALL*clEnqueueMapImage)(cl_command_queue, cl_mem, cl_bool, cl_map_flags, const size_t*, const size_t*, size_t*, size_t*, cl_uint, const cl_event*, cl_event*, cl_int*) =
opencl_fn12<OPENCL_FN_clEnqueueMapImage, void*, cl_command_queue, cl_mem, cl_bool, cl_map_flags, const size_t*, const size_t*, size_t*, size_t*, cl_uint, const cl_event*, cl_event*, cl_int*>::switch_fn;
OPENCL_FN_clEnqueueMapImage_switch_fn;
static const struct DynamicFnEntry clEnqueueMapImage_definition = { "clEnqueueMapImage", (void**)&clEnqueueMapImage};
opencl_fn2(OPENCL_FN_clEnqueueMarker, cl_int, (cl_command_queue p1, cl_event* p2))
cl_int (CL_API_CALL*clEnqueueMarker)(cl_command_queue, cl_event*) =
opencl_fn2<OPENCL_FN_clEnqueueMarker, cl_int, cl_command_queue, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueMarker_switch_fn;
static const struct DynamicFnEntry clEnqueueMarker_definition = { "clEnqueueMarker", (void**)&clEnqueueMarker};
opencl_fn4(OPENCL_FN_clEnqueueMarkerWithWaitList, cl_int, (cl_command_queue p1, cl_uint p2, const cl_event* p3, cl_event* p4))
cl_int (CL_API_CALL*clEnqueueMarkerWithWaitList)(cl_command_queue, cl_uint, const cl_event*, cl_event*) =
opencl_fn4<OPENCL_FN_clEnqueueMarkerWithWaitList, cl_int, cl_command_queue, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueMarkerWithWaitList_switch_fn;
static const struct DynamicFnEntry clEnqueueMarkerWithWaitList_definition = { "clEnqueueMarkerWithWaitList", (void**)&clEnqueueMarkerWithWaitList};
opencl_fn7(OPENCL_FN_clEnqueueMigrateMemObjects, cl_int, (cl_command_queue p1, cl_uint p2, const cl_mem* p3, cl_mem_migration_flags p4, cl_uint p5, const cl_event* p6, cl_event* p7))
cl_int (CL_API_CALL*clEnqueueMigrateMemObjects)(cl_command_queue, cl_uint, const cl_mem*, cl_mem_migration_flags, cl_uint, const cl_event*, cl_event*) =
opencl_fn7<OPENCL_FN_clEnqueueMigrateMemObjects, cl_int, cl_command_queue, cl_uint, const cl_mem*, cl_mem_migration_flags, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueMigrateMemObjects_switch_fn;
static const struct DynamicFnEntry clEnqueueMigrateMemObjects_definition = { "clEnqueueMigrateMemObjects", (void**)&clEnqueueMigrateMemObjects};
opencl_fn9(OPENCL_FN_clEnqueueNDRangeKernel, cl_int, (cl_command_queue p1, cl_kernel p2, cl_uint p3, const size_t* p4, const size_t* p5, const size_t* p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueNDRangeKernel)(cl_command_queue, cl_kernel, cl_uint, const size_t*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueNDRangeKernel, cl_int, cl_command_queue, cl_kernel, cl_uint, const size_t*, const size_t*, const size_t*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueNDRangeKernel_switch_fn;
static const struct DynamicFnEntry clEnqueueNDRangeKernel_definition = { "clEnqueueNDRangeKernel", (void**)&clEnqueueNDRangeKernel};
opencl_fn10(OPENCL_FN_clEnqueueNativeKernel, cl_int, (cl_command_queue p1, void (CL_CALLBACK*p2) (void*), void* p3, size_t p4, cl_uint p5, const cl_mem* p6, const void** p7, cl_uint p8, const cl_event* p9, cl_event* p10))
cl_int (CL_API_CALL*clEnqueueNativeKernel)(cl_command_queue, void (CL_CALLBACK*) (void*), void*, size_t, cl_uint, const cl_mem*, const void**, cl_uint, const cl_event*, cl_event*) =
opencl_fn10<OPENCL_FN_clEnqueueNativeKernel, cl_int, cl_command_queue, void (CL_CALLBACK*) (void*), void*, size_t, cl_uint, const cl_mem*, const void**, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueNativeKernel_switch_fn;
static const struct DynamicFnEntry clEnqueueNativeKernel_definition = { "clEnqueueNativeKernel", (void**)&clEnqueueNativeKernel};
opencl_fn9(OPENCL_FN_clEnqueueReadBuffer, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, size_t p4, size_t p5, void* p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueReadBuffer)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueReadBuffer, cl_int, cl_command_queue, cl_mem, cl_bool, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueReadBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueReadBuffer_definition = { "clEnqueueReadBuffer", (void**)&clEnqueueReadBuffer};
opencl_fn14(OPENCL_FN_clEnqueueReadBufferRect, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, const size_t* p4, const size_t* p5, const size_t* p6, size_t p7, size_t p8, size_t p9, size_t p10, void* p11, cl_uint p12, const cl_event* p13, cl_event* p14))
cl_int (CL_API_CALL*clEnqueueReadBufferRect)(cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn14<OPENCL_FN_clEnqueueReadBufferRect, cl_int, cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueReadBufferRect_switch_fn;
static const struct DynamicFnEntry clEnqueueReadBufferRect_definition = { "clEnqueueReadBufferRect", (void**)&clEnqueueReadBufferRect};
opencl_fn11(OPENCL_FN_clEnqueueReadImage, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, const size_t* p4, const size_t* p5, size_t p6, size_t p7, void* p8, cl_uint p9, const cl_event* p10, cl_event* p11))
cl_int (CL_API_CALL*clEnqueueReadImage)(cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn11<OPENCL_FN_clEnqueueReadImage, cl_int, cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, size_t, size_t, void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueReadImage_switch_fn;
static const struct DynamicFnEntry clEnqueueReadImage_definition = { "clEnqueueReadImage", (void**)&clEnqueueReadImage};
opencl_fn5(OPENCL_FN_clEnqueueTask, cl_int, (cl_command_queue p1, cl_kernel p2, cl_uint p3, const cl_event* p4, cl_event* p5))
cl_int (CL_API_CALL*clEnqueueTask)(cl_command_queue, cl_kernel, cl_uint, const cl_event*, cl_event*) =
opencl_fn5<OPENCL_FN_clEnqueueTask, cl_int, cl_command_queue, cl_kernel, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueTask_switch_fn;
static const struct DynamicFnEntry clEnqueueTask_definition = { "clEnqueueTask", (void**)&clEnqueueTask};
opencl_fn6(OPENCL_FN_clEnqueueUnmapMemObject, cl_int, (cl_command_queue p1, cl_mem p2, void* p3, cl_uint p4, const cl_event* p5, cl_event* p6))
cl_int (CL_API_CALL*clEnqueueUnmapMemObject)(cl_command_queue, cl_mem, void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn6<OPENCL_FN_clEnqueueUnmapMemObject, cl_int, cl_command_queue, cl_mem, void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueUnmapMemObject_switch_fn;
static const struct DynamicFnEntry clEnqueueUnmapMemObject_definition = { "clEnqueueUnmapMemObject", (void**)&clEnqueueUnmapMemObject};
opencl_fn3(OPENCL_FN_clEnqueueWaitForEvents, cl_int, (cl_command_queue p1, cl_uint p2, const cl_event* p3))
cl_int (CL_API_CALL*clEnqueueWaitForEvents)(cl_command_queue, cl_uint, const cl_event*) =
opencl_fn3<OPENCL_FN_clEnqueueWaitForEvents, cl_int, cl_command_queue, cl_uint, const cl_event*>::switch_fn;
OPENCL_FN_clEnqueueWaitForEvents_switch_fn;
static const struct DynamicFnEntry clEnqueueWaitForEvents_definition = { "clEnqueueWaitForEvents", (void**)&clEnqueueWaitForEvents};
opencl_fn9(OPENCL_FN_clEnqueueWriteBuffer, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, size_t p4, size_t p5, const void* p6, cl_uint p7, const cl_event* p8, cl_event* p9))
cl_int (CL_API_CALL*clEnqueueWriteBuffer)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn9<OPENCL_FN_clEnqueueWriteBuffer, cl_int, cl_command_queue, cl_mem, cl_bool, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueWriteBuffer_switch_fn;
static const struct DynamicFnEntry clEnqueueWriteBuffer_definition = { "clEnqueueWriteBuffer", (void**)&clEnqueueWriteBuffer};
opencl_fn14(OPENCL_FN_clEnqueueWriteBufferRect, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, const size_t* p4, const size_t* p5, const size_t* p6, size_t p7, size_t p8, size_t p9, size_t p10, const void* p11, cl_uint p12, const cl_event* p13, cl_event* p14))
cl_int (CL_API_CALL*clEnqueueWriteBufferRect)(cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn14<OPENCL_FN_clEnqueueWriteBufferRect, cl_int, cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, const size_t*, size_t, size_t, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueWriteBufferRect_switch_fn;
static const struct DynamicFnEntry clEnqueueWriteBufferRect_definition = { "clEnqueueWriteBufferRect", (void**)&clEnqueueWriteBufferRect};
opencl_fn11(OPENCL_FN_clEnqueueWriteImage, cl_int, (cl_command_queue p1, cl_mem p2, cl_bool p3, const size_t* p4, const size_t* p5, size_t p6, size_t p7, const void* p8, cl_uint p9, const cl_event* p10, cl_event* p11))
cl_int (CL_API_CALL*clEnqueueWriteImage)(cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*) =
opencl_fn11<OPENCL_FN_clEnqueueWriteImage, cl_int, cl_command_queue, cl_mem, cl_bool, const size_t*, const size_t*, size_t, size_t, const void*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_FN_clEnqueueWriteImage_switch_fn;
static const struct DynamicFnEntry clEnqueueWriteImage_definition = { "clEnqueueWriteImage", (void**)&clEnqueueWriteImage};
opencl_fn1(OPENCL_FN_clFinish, cl_int, (cl_command_queue p1))
cl_int (CL_API_CALL*clFinish)(cl_command_queue) =
opencl_fn1<OPENCL_FN_clFinish, cl_int, cl_command_queue>::switch_fn;
OPENCL_FN_clFinish_switch_fn;
static const struct DynamicFnEntry clFinish_definition = { "clFinish", (void**)&clFinish};
opencl_fn1(OPENCL_FN_clFlush, cl_int, (cl_command_queue p1))
cl_int (CL_API_CALL*clFlush)(cl_command_queue) =
opencl_fn1<OPENCL_FN_clFlush, cl_int, cl_command_queue>::switch_fn;
OPENCL_FN_clFlush_switch_fn;
static const struct DynamicFnEntry clFlush_definition = { "clFlush", (void**)&clFlush};
opencl_fn5(OPENCL_FN_clGetCommandQueueInfo, cl_int, (cl_command_queue p1, cl_command_queue_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetCommandQueueInfo)(cl_command_queue, cl_command_queue_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetCommandQueueInfo, cl_int, cl_command_queue, cl_command_queue_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetCommandQueueInfo_switch_fn;
static const struct DynamicFnEntry clGetCommandQueueInfo_definition = { "clGetCommandQueueInfo", (void**)&clGetCommandQueueInfo};
opencl_fn5(OPENCL_FN_clGetContextInfo, cl_int, (cl_context p1, cl_context_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetContextInfo)(cl_context, cl_context_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetContextInfo, cl_int, cl_context, cl_context_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetContextInfo_switch_fn;
static const struct DynamicFnEntry clGetContextInfo_definition = { "clGetContextInfo", (void**)&clGetContextInfo};
opencl_fn5(OPENCL_FN_clGetDeviceIDs, cl_int, (cl_platform_id p1, cl_device_type p2, cl_uint p3, cl_device_id* p4, cl_uint* p5))
cl_int (CL_API_CALL*clGetDeviceIDs)(cl_platform_id, cl_device_type, cl_uint, cl_device_id*, cl_uint*) =
opencl_fn5<OPENCL_FN_clGetDeviceIDs, cl_int, cl_platform_id, cl_device_type, cl_uint, cl_device_id*, cl_uint*>::switch_fn;
OPENCL_FN_clGetDeviceIDs_switch_fn;
static const struct DynamicFnEntry clGetDeviceIDs_definition = { "clGetDeviceIDs", (void**)&clGetDeviceIDs};
opencl_fn5(OPENCL_FN_clGetDeviceInfo, cl_int, (cl_device_id p1, cl_device_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetDeviceInfo)(cl_device_id, cl_device_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetDeviceInfo, cl_int, cl_device_id, cl_device_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetDeviceInfo_switch_fn;
static const struct DynamicFnEntry clGetDeviceInfo_definition = { "clGetDeviceInfo", (void**)&clGetDeviceInfo};
opencl_fn5(OPENCL_FN_clGetEventInfo, cl_int, (cl_event p1, cl_event_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetEventInfo)(cl_event, cl_event_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetEventInfo, cl_int, cl_event, cl_event_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetEventInfo_switch_fn;
static const struct DynamicFnEntry clGetEventInfo_definition = { "clGetEventInfo", (void**)&clGetEventInfo};
opencl_fn5(OPENCL_FN_clGetEventProfilingInfo, cl_int, (cl_event p1, cl_profiling_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetEventProfilingInfo)(cl_event, cl_profiling_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetEventProfilingInfo, cl_int, cl_event, cl_profiling_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetEventProfilingInfo_switch_fn;
static const struct DynamicFnEntry clGetEventProfilingInfo_definition = { "clGetEventProfilingInfo", (void**)&clGetEventProfilingInfo};
opencl_fn1(OPENCL_FN_clGetExtensionFunctionAddress, void*, (const char* p1))
void* (CL_API_CALL*clGetExtensionFunctionAddress)(const char*) =
opencl_fn1<OPENCL_FN_clGetExtensionFunctionAddress, void*, const char*>::switch_fn;
OPENCL_FN_clGetExtensionFunctionAddress_switch_fn;
static const struct DynamicFnEntry clGetExtensionFunctionAddress_definition = { "clGetExtensionFunctionAddress", (void**)&clGetExtensionFunctionAddress};
opencl_fn2(OPENCL_FN_clGetExtensionFunctionAddressForPlatform, void*, (cl_platform_id p1, const char* p2))
void* (CL_API_CALL*clGetExtensionFunctionAddressForPlatform)(cl_platform_id, const char*) =
opencl_fn2<OPENCL_FN_clGetExtensionFunctionAddressForPlatform, void*, cl_platform_id, const char*>::switch_fn;
OPENCL_FN_clGetExtensionFunctionAddressForPlatform_switch_fn;
static const struct DynamicFnEntry clGetExtensionFunctionAddressForPlatform_definition = { "clGetExtensionFunctionAddressForPlatform", (void**)&clGetExtensionFunctionAddressForPlatform};
opencl_fn5(OPENCL_FN_clGetImageInfo, cl_int, (cl_mem p1, cl_image_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetImageInfo)(cl_mem, cl_image_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetImageInfo, cl_int, cl_mem, cl_image_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetImageInfo_switch_fn;
static const struct DynamicFnEntry clGetImageInfo_definition = { "clGetImageInfo", (void**)&clGetImageInfo};
opencl_fn6(OPENCL_FN_clGetKernelArgInfo, cl_int, (cl_kernel p1, cl_uint p2, cl_kernel_arg_info p3, size_t p4, void* p5, size_t* p6))
cl_int (CL_API_CALL*clGetKernelArgInfo)(cl_kernel, cl_uint, cl_kernel_arg_info, size_t, void*, size_t*) =
opencl_fn6<OPENCL_FN_clGetKernelArgInfo, cl_int, cl_kernel, cl_uint, cl_kernel_arg_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetKernelArgInfo_switch_fn;
static const struct DynamicFnEntry clGetKernelArgInfo_definition = { "clGetKernelArgInfo", (void**)&clGetKernelArgInfo};
opencl_fn5(OPENCL_FN_clGetKernelInfo, cl_int, (cl_kernel p1, cl_kernel_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetKernelInfo)(cl_kernel, cl_kernel_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetKernelInfo, cl_int, cl_kernel, cl_kernel_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetKernelInfo_switch_fn;
static const struct DynamicFnEntry clGetKernelInfo_definition = { "clGetKernelInfo", (void**)&clGetKernelInfo};
opencl_fn6(OPENCL_FN_clGetKernelWorkGroupInfo, cl_int, (cl_kernel p1, cl_device_id p2, cl_kernel_work_group_info p3, size_t p4, void* p5, size_t* p6))
cl_int (CL_API_CALL*clGetKernelWorkGroupInfo)(cl_kernel, cl_device_id, cl_kernel_work_group_info, size_t, void*, size_t*) =
opencl_fn6<OPENCL_FN_clGetKernelWorkGroupInfo, cl_int, cl_kernel, cl_device_id, cl_kernel_work_group_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetKernelWorkGroupInfo_switch_fn;
static const struct DynamicFnEntry clGetKernelWorkGroupInfo_definition = { "clGetKernelWorkGroupInfo", (void**)&clGetKernelWorkGroupInfo};
opencl_fn5(OPENCL_FN_clGetMemObjectInfo, cl_int, (cl_mem p1, cl_mem_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetMemObjectInfo)(cl_mem, cl_mem_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetMemObjectInfo, cl_int, cl_mem, cl_mem_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetMemObjectInfo_switch_fn;
static const struct DynamicFnEntry clGetMemObjectInfo_definition = { "clGetMemObjectInfo", (void**)&clGetMemObjectInfo};
opencl_fn3(OPENCL_FN_clGetPlatformIDs, cl_int, (cl_uint p1, cl_platform_id* p2, cl_uint* p3))
cl_int (CL_API_CALL*clGetPlatformIDs)(cl_uint, cl_platform_id*, cl_uint*) =
opencl_fn3<OPENCL_FN_clGetPlatformIDs, cl_int, cl_uint, cl_platform_id*, cl_uint*>::switch_fn;
OPENCL_FN_clGetPlatformIDs_switch_fn;
static const struct DynamicFnEntry clGetPlatformIDs_definition = { "clGetPlatformIDs", (void**)&clGetPlatformIDs};
opencl_fn5(OPENCL_FN_clGetPlatformInfo, cl_int, (cl_platform_id p1, cl_platform_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetPlatformInfo)(cl_platform_id, cl_platform_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetPlatformInfo, cl_int, cl_platform_id, cl_platform_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetPlatformInfo_switch_fn;
static const struct DynamicFnEntry clGetPlatformInfo_definition = { "clGetPlatformInfo", (void**)&clGetPlatformInfo};
opencl_fn6(OPENCL_FN_clGetProgramBuildInfo, cl_int, (cl_program p1, cl_device_id p2, cl_program_build_info p3, size_t p4, void* p5, size_t* p6))
cl_int (CL_API_CALL*clGetProgramBuildInfo)(cl_program, cl_device_id, cl_program_build_info, size_t, void*, size_t*) =
opencl_fn6<OPENCL_FN_clGetProgramBuildInfo, cl_int, cl_program, cl_device_id, cl_program_build_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetProgramBuildInfo_switch_fn;
static const struct DynamicFnEntry clGetProgramBuildInfo_definition = { "clGetProgramBuildInfo", (void**)&clGetProgramBuildInfo};
opencl_fn5(OPENCL_FN_clGetProgramInfo, cl_int, (cl_program p1, cl_program_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetProgramInfo)(cl_program, cl_program_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetProgramInfo, cl_int, cl_program, cl_program_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetProgramInfo_switch_fn;
static const struct DynamicFnEntry clGetProgramInfo_definition = { "clGetProgramInfo", (void**)&clGetProgramInfo};
opencl_fn5(OPENCL_FN_clGetSamplerInfo, cl_int, (cl_sampler p1, cl_sampler_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetSamplerInfo)(cl_sampler, cl_sampler_info, size_t, void*, size_t*) =
opencl_fn5<OPENCL_FN_clGetSamplerInfo, cl_int, cl_sampler, cl_sampler_info, size_t, void*, size_t*>::switch_fn;
OPENCL_FN_clGetSamplerInfo_switch_fn;
static const struct DynamicFnEntry clGetSamplerInfo_definition = { "clGetSamplerInfo", (void**)&clGetSamplerInfo};
opencl_fn6(OPENCL_FN_clGetSupportedImageFormats, cl_int, (cl_context p1, cl_mem_flags p2, cl_mem_object_type p3, cl_uint p4, cl_image_format* p5, cl_uint* p6))
cl_int (CL_API_CALL*clGetSupportedImageFormats)(cl_context, cl_mem_flags, cl_mem_object_type, cl_uint, cl_image_format*, cl_uint*) =
opencl_fn6<OPENCL_FN_clGetSupportedImageFormats, cl_int, cl_context, cl_mem_flags, cl_mem_object_type, cl_uint, cl_image_format*, cl_uint*>::switch_fn;
OPENCL_FN_clGetSupportedImageFormats_switch_fn;
static const struct DynamicFnEntry clGetSupportedImageFormats_definition = { "clGetSupportedImageFormats", (void**)&clGetSupportedImageFormats};
opencl_fn9(OPENCL_FN_clLinkProgram, cl_program, (cl_context p1, cl_uint p2, const cl_device_id* p3, const char* p4, cl_uint p5, const cl_program* p6, void (CL_CALLBACK*p7) (cl_program, void*), void* p8, cl_int* p9))
cl_program (CL_API_CALL*clLinkProgram)(cl_context, cl_uint, const cl_device_id*, const char*, cl_uint, const cl_program*, void (CL_CALLBACK*) (cl_program, void*), void*, cl_int*) =
opencl_fn9<OPENCL_FN_clLinkProgram, cl_program, cl_context, cl_uint, const cl_device_id*, const char*, cl_uint, const cl_program*, void (CL_CALLBACK*) (cl_program, void*), void*, cl_int*>::switch_fn;
OPENCL_FN_clLinkProgram_switch_fn;
static const struct DynamicFnEntry clLinkProgram_definition = { "clLinkProgram", (void**)&clLinkProgram};
opencl_fn1(OPENCL_FN_clReleaseCommandQueue, cl_int, (cl_command_queue p1))
cl_int (CL_API_CALL*clReleaseCommandQueue)(cl_command_queue) =
opencl_fn1<OPENCL_FN_clReleaseCommandQueue, cl_int, cl_command_queue>::switch_fn;
OPENCL_FN_clReleaseCommandQueue_switch_fn;
static const struct DynamicFnEntry clReleaseCommandQueue_definition = { "clReleaseCommandQueue", (void**)&clReleaseCommandQueue};
opencl_fn1(OPENCL_FN_clReleaseContext, cl_int, (cl_context p1))
cl_int (CL_API_CALL*clReleaseContext)(cl_context) =
opencl_fn1<OPENCL_FN_clReleaseContext, cl_int, cl_context>::switch_fn;
OPENCL_FN_clReleaseContext_switch_fn;
static const struct DynamicFnEntry clReleaseContext_definition = { "clReleaseContext", (void**)&clReleaseContext};
opencl_fn1(OPENCL_FN_clReleaseDevice, cl_int, (cl_device_id p1))
cl_int (CL_API_CALL*clReleaseDevice)(cl_device_id) =
opencl_fn1<OPENCL_FN_clReleaseDevice, cl_int, cl_device_id>::switch_fn;
OPENCL_FN_clReleaseDevice_switch_fn;
static const struct DynamicFnEntry clReleaseDevice_definition = { "clReleaseDevice", (void**)&clReleaseDevice};
opencl_fn1(OPENCL_FN_clReleaseEvent, cl_int, (cl_event p1))
cl_int (CL_API_CALL*clReleaseEvent)(cl_event) =
opencl_fn1<OPENCL_FN_clReleaseEvent, cl_int, cl_event>::switch_fn;
OPENCL_FN_clReleaseEvent_switch_fn;
static const struct DynamicFnEntry clReleaseEvent_definition = { "clReleaseEvent", (void**)&clReleaseEvent};
opencl_fn1(OPENCL_FN_clReleaseKernel, cl_int, (cl_kernel p1))
cl_int (CL_API_CALL*clReleaseKernel)(cl_kernel) =
opencl_fn1<OPENCL_FN_clReleaseKernel, cl_int, cl_kernel>::switch_fn;
OPENCL_FN_clReleaseKernel_switch_fn;
static const struct DynamicFnEntry clReleaseKernel_definition = { "clReleaseKernel", (void**)&clReleaseKernel};
opencl_fn1(OPENCL_FN_clReleaseMemObject, cl_int, (cl_mem p1))
cl_int (CL_API_CALL*clReleaseMemObject)(cl_mem) =
opencl_fn1<OPENCL_FN_clReleaseMemObject, cl_int, cl_mem>::switch_fn;
OPENCL_FN_clReleaseMemObject_switch_fn;
static const struct DynamicFnEntry clReleaseMemObject_definition = { "clReleaseMemObject", (void**)&clReleaseMemObject};
opencl_fn1(OPENCL_FN_clReleaseProgram, cl_int, (cl_program p1))
cl_int (CL_API_CALL*clReleaseProgram)(cl_program) =
opencl_fn1<OPENCL_FN_clReleaseProgram, cl_int, cl_program>::switch_fn;
OPENCL_FN_clReleaseProgram_switch_fn;
static const struct DynamicFnEntry clReleaseProgram_definition = { "clReleaseProgram", (void**)&clReleaseProgram};
opencl_fn1(OPENCL_FN_clReleaseSampler, cl_int, (cl_sampler p1))
cl_int (CL_API_CALL*clReleaseSampler)(cl_sampler) =
opencl_fn1<OPENCL_FN_clReleaseSampler, cl_int, cl_sampler>::switch_fn;
OPENCL_FN_clReleaseSampler_switch_fn;
static const struct DynamicFnEntry clReleaseSampler_definition = { "clReleaseSampler", (void**)&clReleaseSampler};
opencl_fn1(OPENCL_FN_clRetainCommandQueue, cl_int, (cl_command_queue p1))
cl_int (CL_API_CALL*clRetainCommandQueue)(cl_command_queue) =
opencl_fn1<OPENCL_FN_clRetainCommandQueue, cl_int, cl_command_queue>::switch_fn;
OPENCL_FN_clRetainCommandQueue_switch_fn;
static const struct DynamicFnEntry clRetainCommandQueue_definition = { "clRetainCommandQueue", (void**)&clRetainCommandQueue};
opencl_fn1(OPENCL_FN_clRetainContext, cl_int, (cl_context p1))
cl_int (CL_API_CALL*clRetainContext)(cl_context) =
opencl_fn1<OPENCL_FN_clRetainContext, cl_int, cl_context>::switch_fn;
OPENCL_FN_clRetainContext_switch_fn;
static const struct DynamicFnEntry clRetainContext_definition = { "clRetainContext", (void**)&clRetainContext};
opencl_fn1(OPENCL_FN_clRetainDevice, cl_int, (cl_device_id p1))
cl_int (CL_API_CALL*clRetainDevice)(cl_device_id) =
opencl_fn1<OPENCL_FN_clRetainDevice, cl_int, cl_device_id>::switch_fn;
OPENCL_FN_clRetainDevice_switch_fn;
static const struct DynamicFnEntry clRetainDevice_definition = { "clRetainDevice", (void**)&clRetainDevice};
opencl_fn1(OPENCL_FN_clRetainEvent, cl_int, (cl_event p1))
cl_int (CL_API_CALL*clRetainEvent)(cl_event) =
opencl_fn1<OPENCL_FN_clRetainEvent, cl_int, cl_event>::switch_fn;
OPENCL_FN_clRetainEvent_switch_fn;
static const struct DynamicFnEntry clRetainEvent_definition = { "clRetainEvent", (void**)&clRetainEvent};
opencl_fn1(OPENCL_FN_clRetainKernel, cl_int, (cl_kernel p1))
cl_int (CL_API_CALL*clRetainKernel)(cl_kernel) =
opencl_fn1<OPENCL_FN_clRetainKernel, cl_int, cl_kernel>::switch_fn;
OPENCL_FN_clRetainKernel_switch_fn;
static const struct DynamicFnEntry clRetainKernel_definition = { "clRetainKernel", (void**)&clRetainKernel};
opencl_fn1(OPENCL_FN_clRetainMemObject, cl_int, (cl_mem p1))
cl_int (CL_API_CALL*clRetainMemObject)(cl_mem) =
opencl_fn1<OPENCL_FN_clRetainMemObject, cl_int, cl_mem>::switch_fn;
OPENCL_FN_clRetainMemObject_switch_fn;
static const struct DynamicFnEntry clRetainMemObject_definition = { "clRetainMemObject", (void**)&clRetainMemObject};
opencl_fn1(OPENCL_FN_clRetainProgram, cl_int, (cl_program p1))
cl_int (CL_API_CALL*clRetainProgram)(cl_program) =
opencl_fn1<OPENCL_FN_clRetainProgram, cl_int, cl_program>::switch_fn;
OPENCL_FN_clRetainProgram_switch_fn;
static const struct DynamicFnEntry clRetainProgram_definition = { "clRetainProgram", (void**)&clRetainProgram};
opencl_fn1(OPENCL_FN_clRetainSampler, cl_int, (cl_sampler p1))
cl_int (CL_API_CALL*clRetainSampler)(cl_sampler) =
opencl_fn1<OPENCL_FN_clRetainSampler, cl_int, cl_sampler>::switch_fn;
OPENCL_FN_clRetainSampler_switch_fn;
static const struct DynamicFnEntry clRetainSampler_definition = { "clRetainSampler", (void**)&clRetainSampler};
opencl_fn4(OPENCL_FN_clSetEventCallback, cl_int, (cl_event p1, cl_int p2, void (CL_CALLBACK*p3) (cl_event, cl_int, void*), void* p4))
cl_int (CL_API_CALL*clSetEventCallback)(cl_event, cl_int, void (CL_CALLBACK*) (cl_event, cl_int, void*), void*) =
opencl_fn4<OPENCL_FN_clSetEventCallback, cl_int, cl_event, cl_int, void (CL_CALLBACK*) (cl_event, cl_int, void*), void*>::switch_fn;
OPENCL_FN_clSetEventCallback_switch_fn;
static const struct DynamicFnEntry clSetEventCallback_definition = { "clSetEventCallback", (void**)&clSetEventCallback};
opencl_fn4(OPENCL_FN_clSetKernelArg, cl_int, (cl_kernel p1, cl_uint p2, size_t p3, const void* p4))
cl_int (CL_API_CALL*clSetKernelArg)(cl_kernel, cl_uint, size_t, const void*) =
opencl_fn4<OPENCL_FN_clSetKernelArg, cl_int, cl_kernel, cl_uint, size_t, const void*>::switch_fn;
OPENCL_FN_clSetKernelArg_switch_fn;
static const struct DynamicFnEntry clSetKernelArg_definition = { "clSetKernelArg", (void**)&clSetKernelArg};
opencl_fn3(OPENCL_FN_clSetMemObjectDestructorCallback, cl_int, (cl_mem p1, void (CL_CALLBACK*p2) (cl_mem, void*), void* p3))
cl_int (CL_API_CALL*clSetMemObjectDestructorCallback)(cl_mem, void (CL_CALLBACK*) (cl_mem, void*), void*) =
opencl_fn3<OPENCL_FN_clSetMemObjectDestructorCallback, cl_int, cl_mem, void (CL_CALLBACK*) (cl_mem, void*), void*>::switch_fn;
OPENCL_FN_clSetMemObjectDestructorCallback_switch_fn;
static const struct DynamicFnEntry clSetMemObjectDestructorCallback_definition = { "clSetMemObjectDestructorCallback", (void**)&clSetMemObjectDestructorCallback};
opencl_fn2(OPENCL_FN_clSetUserEventStatus, cl_int, (cl_event p1, cl_int p2))
cl_int (CL_API_CALL*clSetUserEventStatus)(cl_event, cl_int) =
opencl_fn2<OPENCL_FN_clSetUserEventStatus, cl_int, cl_event, cl_int>::switch_fn;
OPENCL_FN_clSetUserEventStatus_switch_fn;
static const struct DynamicFnEntry clSetUserEventStatus_definition = { "clSetUserEventStatus", (void**)&clSetUserEventStatus};
opencl_fn0(OPENCL_FN_clUnloadCompiler, cl_int, ())
cl_int (CL_API_CALL*clUnloadCompiler)() =
opencl_fn0<OPENCL_FN_clUnloadCompiler, cl_int>::switch_fn;
OPENCL_FN_clUnloadCompiler_switch_fn;
static const struct DynamicFnEntry clUnloadCompiler_definition = { "clUnloadCompiler", (void**)&clUnloadCompiler};
opencl_fn1(OPENCL_FN_clUnloadPlatformCompiler, cl_int, (cl_platform_id p1))
cl_int (CL_API_CALL*clUnloadPlatformCompiler)(cl_platform_id) =
opencl_fn1<OPENCL_FN_clUnloadPlatformCompiler, cl_int, cl_platform_id>::switch_fn;
OPENCL_FN_clUnloadPlatformCompiler_switch_fn;
static const struct DynamicFnEntry clUnloadPlatformCompiler_definition = { "clUnloadPlatformCompiler", (void**)&clUnloadPlatformCompiler};
opencl_fn2(OPENCL_FN_clWaitForEvents, cl_int, (cl_uint p1, const cl_event* p2))
cl_int (CL_API_CALL*clWaitForEvents)(cl_uint, const cl_event*) =
opencl_fn2<OPENCL_FN_clWaitForEvents, cl_int, cl_uint, const cl_event*>::switch_fn;
OPENCL_FN_clWaitForEvents_switch_fn;
static const struct DynamicFnEntry clWaitForEvents_definition = { "clWaitForEvents", (void**)&clWaitForEvents};

View File

@ -17,169 +17,134 @@ enum OPENCL_GL_FN_ID {
namespace {
// generated by parser_cl.py
template <int ID, typename _R>
struct opencl_gl_fn0
{
typedef _R (CL_API_CALL*FN)();
static _R CL_API_CALL switch_fn()
{ return ((FN)opencl_gl_check_fn(ID))(); }
};
#define opencl_gl_fn0(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(); } \
template <int ID, typename _R, typename _T1>
struct opencl_gl_fn1
{
typedef _R (CL_API_CALL*FN)(_T1);
static _R CL_API_CALL switch_fn(_T1 p1)
{ return ((FN)opencl_gl_check_fn(ID))(p1); }
};
#define opencl_gl_fn1(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1); } \
template <int ID, typename _R, typename _T1, typename _T2>
struct opencl_gl_fn2
{
typedef _R (CL_API_CALL*FN)(_T1, _T2);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2); }
};
#define opencl_gl_fn2(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3>
struct opencl_gl_fn3
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3); }
};
#define opencl_gl_fn3(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4>
struct opencl_gl_fn4
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4); }
};
#define opencl_gl_fn4(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5>
struct opencl_gl_fn5
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5); }
};
#define opencl_gl_fn5(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6>
struct opencl_gl_fn6
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6); }
};
#define opencl_gl_fn6(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7>
struct opencl_gl_fn7
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); }
};
#define opencl_gl_fn7(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8>
struct opencl_gl_fn8
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); }
};
#define opencl_gl_fn8(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9>
struct opencl_gl_fn9
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); }
};
#define opencl_gl_fn9(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10>
struct opencl_gl_fn10
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); }
};
#define opencl_gl_fn10(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11>
struct opencl_gl_fn11
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); }
};
#define opencl_gl_fn11(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12>
struct opencl_gl_fn12
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); }
};
#define opencl_gl_fn12(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13>
struct opencl_gl_fn13
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); }
};
#define opencl_gl_fn13(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13); } \
template <int ID, typename _R, typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10, typename _T11, typename _T12, typename _T13, typename _T14>
struct opencl_gl_fn14
{
typedef _R (CL_API_CALL*FN)(_T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10, _T11, _T12, _T13, _T14);
static _R CL_API_CALL switch_fn(_T1 p1, _T2 p2, _T3 p3, _T4 p4, _T5 p5, _T6 p6, _T7 p7, _T8 p8, _T9 p9, _T10 p10, _T11 p11, _T12 p12, _T13 p13, _T14 p14)
{ return ((FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); }
};
#define opencl_gl_fn14(ID, _R, decl_args) \
typedef _R (CL_API_CALL*ID##FN)decl_args; \
static _R CL_API_CALL ID##_switch_fn decl_args \
{ return ((ID##FN)opencl_gl_check_fn(ID))(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); } \
} // anonymous namespace
#ifdef cl_khr_gl_sharing
// generated by parser_cl.py
opencl_gl_fn4(OPENCL_GL_FN_clCreateFromGLBuffer, cl_mem, (cl_context p1, cl_mem_flags p2, cl_GLuint p3, int* p4))
cl_mem (CL_API_CALL*clCreateFromGLBuffer)(cl_context, cl_mem_flags, cl_GLuint, int*) =
opencl_gl_fn4<OPENCL_GL_FN_clCreateFromGLBuffer, cl_mem, cl_context, cl_mem_flags, cl_GLuint, int*>::switch_fn;
OPENCL_GL_FN_clCreateFromGLBuffer_switch_fn;
static const struct DynamicFnEntry clCreateFromGLBuffer_definition = { "clCreateFromGLBuffer", (void**)&clCreateFromGLBuffer};
opencl_gl_fn4(OPENCL_GL_FN_clCreateFromGLRenderbuffer, cl_mem, (cl_context p1, cl_mem_flags p2, cl_GLuint p3, cl_int* p4))
cl_mem (CL_API_CALL*clCreateFromGLRenderbuffer)(cl_context, cl_mem_flags, cl_GLuint, cl_int*) =
opencl_gl_fn4<OPENCL_GL_FN_clCreateFromGLRenderbuffer, cl_mem, cl_context, cl_mem_flags, cl_GLuint, cl_int*>::switch_fn;
OPENCL_GL_FN_clCreateFromGLRenderbuffer_switch_fn;
static const struct DynamicFnEntry clCreateFromGLRenderbuffer_definition = { "clCreateFromGLRenderbuffer", (void**)&clCreateFromGLRenderbuffer};
opencl_gl_fn6(OPENCL_GL_FN_clCreateFromGLTexture, cl_mem, (cl_context p1, cl_mem_flags p2, cl_GLenum p3, cl_GLint p4, cl_GLuint p5, cl_int* p6))
cl_mem (CL_API_CALL*clCreateFromGLTexture)(cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*) =
opencl_gl_fn6<OPENCL_GL_FN_clCreateFromGLTexture, cl_mem, cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*>::switch_fn;
OPENCL_GL_FN_clCreateFromGLTexture_switch_fn;
static const struct DynamicFnEntry clCreateFromGLTexture_definition = { "clCreateFromGLTexture", (void**)&clCreateFromGLTexture};
opencl_gl_fn6(OPENCL_GL_FN_clCreateFromGLTexture2D, cl_mem, (cl_context p1, cl_mem_flags p2, cl_GLenum p3, cl_GLint p4, cl_GLuint p5, cl_int* p6))
cl_mem (CL_API_CALL*clCreateFromGLTexture2D)(cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*) =
opencl_gl_fn6<OPENCL_GL_FN_clCreateFromGLTexture2D, cl_mem, cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*>::switch_fn;
OPENCL_GL_FN_clCreateFromGLTexture2D_switch_fn;
static const struct DynamicFnEntry clCreateFromGLTexture2D_definition = { "clCreateFromGLTexture2D", (void**)&clCreateFromGLTexture2D};
opencl_gl_fn6(OPENCL_GL_FN_clCreateFromGLTexture3D, cl_mem, (cl_context p1, cl_mem_flags p2, cl_GLenum p3, cl_GLint p4, cl_GLuint p5, cl_int* p6))
cl_mem (CL_API_CALL*clCreateFromGLTexture3D)(cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*) =
opencl_gl_fn6<OPENCL_GL_FN_clCreateFromGLTexture3D, cl_mem, cl_context, cl_mem_flags, cl_GLenum, cl_GLint, cl_GLuint, cl_int*>::switch_fn;
OPENCL_GL_FN_clCreateFromGLTexture3D_switch_fn;
static const struct DynamicFnEntry clCreateFromGLTexture3D_definition = { "clCreateFromGLTexture3D", (void**)&clCreateFromGLTexture3D};
opencl_gl_fn6(OPENCL_GL_FN_clEnqueueAcquireGLObjects, cl_int, (cl_command_queue p1, cl_uint p2, const cl_mem* p3, cl_uint p4, const cl_event* p5, cl_event* p6))
cl_int (CL_API_CALL*clEnqueueAcquireGLObjects)(cl_command_queue, cl_uint, const cl_mem*, cl_uint, const cl_event*, cl_event*) =
opencl_gl_fn6<OPENCL_GL_FN_clEnqueueAcquireGLObjects, cl_int, cl_command_queue, cl_uint, const cl_mem*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_GL_FN_clEnqueueAcquireGLObjects_switch_fn;
static const struct DynamicFnEntry clEnqueueAcquireGLObjects_definition = { "clEnqueueAcquireGLObjects", (void**)&clEnqueueAcquireGLObjects};
opencl_gl_fn6(OPENCL_GL_FN_clEnqueueReleaseGLObjects, cl_int, (cl_command_queue p1, cl_uint p2, const cl_mem* p3, cl_uint p4, const cl_event* p5, cl_event* p6))
cl_int (CL_API_CALL*clEnqueueReleaseGLObjects)(cl_command_queue, cl_uint, const cl_mem*, cl_uint, const cl_event*, cl_event*) =
opencl_gl_fn6<OPENCL_GL_FN_clEnqueueReleaseGLObjects, cl_int, cl_command_queue, cl_uint, const cl_mem*, cl_uint, const cl_event*, cl_event*>::switch_fn;
OPENCL_GL_FN_clEnqueueReleaseGLObjects_switch_fn;
static const struct DynamicFnEntry clEnqueueReleaseGLObjects_definition = { "clEnqueueReleaseGLObjects", (void**)&clEnqueueReleaseGLObjects};
opencl_gl_fn5(OPENCL_GL_FN_clGetGLContextInfoKHR, cl_int, (const cl_context_properties* p1, cl_gl_context_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetGLContextInfoKHR)(const cl_context_properties*, cl_gl_context_info, size_t, void*, size_t*) =
opencl_gl_fn5<OPENCL_GL_FN_clGetGLContextInfoKHR, cl_int, const cl_context_properties*, cl_gl_context_info, size_t, void*, size_t*>::switch_fn;
OPENCL_GL_FN_clGetGLContextInfoKHR_switch_fn;
static const struct DynamicFnEntry clGetGLContextInfoKHR_definition = { "clGetGLContextInfoKHR", (void**)&clGetGLContextInfoKHR};
opencl_gl_fn3(OPENCL_GL_FN_clGetGLObjectInfo, cl_int, (cl_mem p1, cl_gl_object_type* p2, cl_GLuint* p3))
cl_int (CL_API_CALL*clGetGLObjectInfo)(cl_mem, cl_gl_object_type*, cl_GLuint*) =
opencl_gl_fn3<OPENCL_GL_FN_clGetGLObjectInfo, cl_int, cl_mem, cl_gl_object_type*, cl_GLuint*>::switch_fn;
OPENCL_GL_FN_clGetGLObjectInfo_switch_fn;
static const struct DynamicFnEntry clGetGLObjectInfo_definition = { "clGetGLObjectInfo", (void**)&clGetGLObjectInfo};
opencl_gl_fn5(OPENCL_GL_FN_clGetGLTextureInfo, cl_int, (cl_mem p1, cl_gl_texture_info p2, size_t p3, void* p4, size_t* p5))
cl_int (CL_API_CALL*clGetGLTextureInfo)(cl_mem, cl_gl_texture_info, size_t, void*, size_t*) =
opencl_gl_fn5<OPENCL_GL_FN_clGetGLTextureInfo, cl_int, cl_mem, cl_gl_texture_info, size_t, void*, size_t*>::switch_fn;
OPENCL_GL_FN_clGetGLTextureInfo_switch_fn;
static const struct DynamicFnEntry clGetGLTextureInfo_definition = { "clGetGLTextureInfo", (void**)&clGetGLTextureInfo};