annotate test/suite2/case.cc @ 663:127b569978cc default tip

- another tweak handling clang trying to be too smart (see last commit)
author Tassilo Philipp
date Sun, 24 Mar 2024 13:52:44 +0100
parents 85b7a117b807
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
1 /*
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
2
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
3 Package: dyncall
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
4 Library: test
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
5 File: test/suite2/case.cc
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
6 Description:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
7 License:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
8
606
85b7a117b807 - more statics in test code (this is partly needed on an experimental freebsd sparc64 build where the elf cleanup code crashes for some reason ... it's probably that experimental build, but a good change to do regardless)
Tassilo Philipp
parents: 604
diff changeset
9 Copyright (c) 2007-2022 Daniel Adler <dadler@uni-goettingen.de>,
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
10 Tassilo Philipp <tphilipp@potion-studios.com>
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
11
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
12 Permission to use, copy, modify, and distribute this software for any
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
13 purpose with or without fee is hereby granted, provided that the above
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
14 copyright notice and this permission notice appear in all copies.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
15
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
16 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
17 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
18 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
19 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
20 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
21 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
22 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
24 */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
25
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
26
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
27
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
28 #include "../../dyncall/dyncall.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29 #include "config.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 #include "../../dyncall/dyncall_value.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 #include "funcinfo.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32
604
90dfdac91b9b - cleanups, made some arrays local to TUs, etc.
Tassilo Philipp
parents: 281
diff changeset
33 static DCValue mValue[MAXARGS];
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
35 void clearValues() { for(int i = 0;i<MAXARGS;++i) mValue[i].L = 0xCAFEBABEDEADC0DEULL; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37 template<typename T> void g(T value, int pos);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
39 template<> void g(DCchar value, int pos) { mValue[pos].c = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 template<> void g(DCshort value, int pos) { mValue[pos].s = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 template<> void g(DCint value, int pos) { mValue[pos].i = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 template<> void g(DCpointer value, int pos) { mValue[pos].p = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 template<> void g(DClonglong value, int pos) { mValue[pos].l = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44 template<> void g(DCfloat value, int pos) { mValue[pos].f = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45 template<> void g(DCdouble value, int pos) { mValue[pos].d = value; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47 DCValue* getArg(int pos) { return &mValue[pos]; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48
606
85b7a117b807 - more statics in test code (this is partly needed on an experimental freebsd sparc64 build where the elf cleanup code crashes for some reason ... it's probably that experimental build, but a good change to do regardless)
Tassilo Philipp
parents: 604
diff changeset
49 static int gID;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 int getId() { return gID; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 extern "C" {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54 #define VF0(id,S) void f##id () {gID=id;}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 #define VF1(id,A1,S) void f##id (A1 a1) {gID=id;g<A1>(a1,0);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 #define VF2(id,A1,A2,S) void f##id (A1 a1, A2 a2) {gID=id;g<A1>(a1,0);g<A2>(a2,1);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57 #define VF3(id,A1,A2,A3,S) void f##id (A1 a1, A2 a2,A3 a3) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 #define VF4(id,A1,A2,A3,A4,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59 #define VF5(id,A1,A2,A3,A4,A5,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60 #define VF6(id,A1,A2,A3,A4,A5,A6,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61 #define VF7(id,A1,A2,A3,A4,A5,A6,A7,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 #define VF8(id,A1,A2,A3,A4,A5,A6,A7,A8,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63 #define VF9(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 #define VF10(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
65 #define VF11(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
66 #define VF12(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
67 #define VF13(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
68 #define VF14(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
69 #define VF15(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
70 #define VF16(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15,A16 a16) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);g<A16>(a16,15);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
71 #define VF17(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15,A16 a16,A17 a17) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);g<A16>(a16,15);g<A17>(a17,16);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
72 #define VF18(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15,A16 a16,A17 a17,A18 a18) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);g<A16>(a16,15);g<A17>(a17,16);g<A18>(a18,17);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
73 #define VF19(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15,A16 a16,A17 a17,A18 a18,A19 a19) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);g<A16>(a16,15);g<A17>(a17,16);g<A18>(a18,17);g<A19>(a19,18);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
74 #define VF20(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,S) void f##id (A1 a1, A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12,A13 a13,A14 a14,A15 a15,A16 a16,A17 a17,A18 a18,A19 a19,A20 a20) {gID=id;g<A1>(a1,0);g<A2>(a2,1);g<A3>(a3,2);g<A4>(a4,3);g<A5>(a5,4);g<A6>(a6,5);g<A7>(a7,6);g<A8>(a8,7);g<A9>(a9,8);g<A10>(a10,9);g<A11>(a11,10);g<A12>(a12,11);g<A13>(a13,12);g<A14>(a14,13);g<A15>(a15,14);g<A16>(a16,15);g<A17>(a17,16);g<A18>(a18,17);g<A19>(a19,18);g<A20>(a20,19);}
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
75
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
76 #include "case.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
77
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
78 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
79
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
80 #undef VF0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
81 #undef VF1
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
82 #undef VF2
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
83 #undef VF3
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
84 #undef VF4
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
85 #undef VF5
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
86 #undef VF6
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
87 #undef VF7
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
88 #undef VF8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
89 #undef VF9
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
90 #undef VF10
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
91 #undef VF11
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
92 #undef VF12
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
93 #undef VF13
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
94 #undef VF14
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
95 #undef VF15
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
96 #undef VF16
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
97 #undef VF17
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
98 #undef VF18
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
99 #undef VF19
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
100 #undef VF20
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
101
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
102 #define VF0(id,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
103 #define VF1(id,A1,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
104 #define VF2(id,A1,A2,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
105 #define VF3(id,A1,A2,A3,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
106 #define VF4(id,A1,A2,A3,A4,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
107 #define VF5(id,A1,A2,A3,A4,A5,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
108 #define VF6(id,A1,A2,A3,A4,A5,A6,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
109 #define VF7(id,A1,A2,A3,A4,A5,A6,A7,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
110 #define VF8(id,A1,A2,A3,A4,A5,A6,A7,A8,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
111 #define VF9(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
112 #define VF10(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
113 #define VF11(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
114 #define VF12(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
115 #define VF13(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
116 #define VF14(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
117 #define VF15(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
118 #define VF16(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
119 #define VF17(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
120 #define VF18(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
121 #define VF19(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
122 #define VF20(id,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,S) { (void*)(f##id), #S },
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
123
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
124 funcinfo gFuncInfos[] = {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
125
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
126 #include "case.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
127
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
128 };
606
85b7a117b807 - more statics in test code (this is partly needed on an experimental freebsd sparc64 build where the elf cleanup code crashes for some reason ... it's probably that experimental build, but a good change to do regardless)
Tassilo Philipp
parents: 604
diff changeset
129