annotate test/plain/test_main.c @ 533:71c884e610f0

- integration of patches from Raphael Luba, Thekla, Inc.: * integration of aggregate-by-value (struct, union) support patch for x64 (win and sysv) * windows/x64 asm additions to specify how stack unwinds (help for debuggers, exception handling, etc.) * see Changelog for details - new calling convention modes for thiscalls (platform agnostic, was specific before) * new signature character for platform agnostic thiscalls ('*' / DC_SIGCHAR_CC_THISCALL) - dcCallF(), dcVCallF(), dcArgF() and dcVArgF(): * added support for aggregates-by-value (wasn't part of patch) * change that those functions don't implicitly call dcReset() anymore, which was unflexible (breaking change) - added macros to feature test implementation for aggregate-by-value and syscall support - changed libdyncall_s.lib and libdyncallback_s.lib order in callback test makefiles, as some toolchains are picky about order - doc: * man page updates to describe aggregate interface * manual overview changes to highlight platforms with aggregate-by-value support - test/plain: replaced tests w/ old/stale sctruct interface with new aggregate one
author Tassilo Philipp
date Thu, 21 Apr 2022 13:35:47 +0200
parents d4bf63ab9164
children c477ddd64718
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/plain/test_main.c
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
6 Description:
0
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
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
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
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29 #include "../../dyncall/dyncall.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 #include "../common/platformInit.h"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 #include "../common/platformInit.c" /* Impl. for functions only used in this translation unit */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
34 /* -------------------------------------------------------------------------
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
35 * test: identity function calls
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36 * ------------------------------------------------------------------------- */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38 #define DEF_FUNCS(API,NAME) \
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
39 void API fun_##NAME##_v() { g_void_testval = 1; } \
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 DCbool API fun_##NAME##_b(DCbool x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 DCint API fun_##NAME##_i(DCint x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 DClong API fun_##NAME##_j(DClong x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 DClonglong API fun_##NAME##_l(DClonglong x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44 DCfloat API fun_##NAME##_f(DCfloat x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45 DCdouble API fun_##NAME##_d(DCdouble x) { return x; } \
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46 DCpointer API fun_##NAME##_p(DCpointer x) { return x; }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48 /* __cdecl */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 #if !defined(DC__OS_Win32)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51 # define __cdecl
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 #endif
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
54 int g_void_testval;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 DEF_FUNCS(__cdecl,c)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
57 static int testCallC()
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
58 {
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
59 int ret = 1;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61 DCCallVM* pc = dcNewCallVM(4096);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 dcMode(pc,DC_CALL_C_DEFAULT);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63 /* void */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 dcReset(pc);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
65 g_void_testval = 0;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
66 dcCallVoid(pc, (DCpointer) &fun_c_v);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
67 ret = g_void_testval && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
68 /* bool */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
69 {
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
70 DCbool r, val=DC_TRUE;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
71 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
72 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
73 r = dcCallBool(pc, (DCpointer) &fun_c_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
74 printf("bt (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
75 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
76
146
0ab08c1541f0 - fixed armhf ellipsis calls, were ignoring spill area
cslag
parents: 141
diff changeset
77 val=DC_FALSE;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
78 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
79 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
80 r = dcCallBool(pc, (DCpointer) &fun_c_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
81 printf("bf (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
82 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
83 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
84 /* int */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
85 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
86 DCint r, val=1234;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
87 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
88 dcArgInt(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
89 r = dcCallInt(pc, (DCpointer) &fun_c_i);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
90 printf("i (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
91 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
92 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
93 /* long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
94 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
95 DClong r, val=(DClong) 0xCAFEBABEL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
96 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
97 dcArgLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
98 r = dcCallLong(pc, (DCpointer) &fun_c_j);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
99 printf("l (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
100 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
101 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
102 /* long long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
103 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
104 DClonglong r, val=(DClonglong) 0xCAFEBABEDEADC0DELL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
105 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
106 dcArgLongLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
107 r = dcCallLongLong(pc, (DCpointer) &fun_c_l);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
108 printf("ll (cdecl): %d\n", (r == (DClonglong)val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
109 ret = (r == (DClonglong)val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
110 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
111 /* float */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
112 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
113 DCfloat r, val=1.234567f;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
114 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
115 dcArgFloat(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
116 r = dcCallFloat(pc, (DCpointer) &fun_c_f);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
117 printf("f (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
118 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
119 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
120 /* double */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
121 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
122 DCdouble r, val=1.23456789;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
123 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
124 dcArgDouble(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
125 r = dcCallDouble(pc, (DCpointer) &fun_c_d);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
126 printf("d (cdecl): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
127 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
128 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
129 /* ptr */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
130 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
131 DCpointer r;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
132 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
133 dcArgPointer(pc, (DCpointer) &fun_c_b);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
134 r = dcCallPointer(pc, (DCpointer) &fun_c_p);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
135 printf("p (cdecl): %d\n", (r == (DCpointer) &fun_c_b));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
136 ret = (r == (DCpointer) &fun_c_b) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
137 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
138 dcFree(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
139
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
140 return ret;
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
141 }
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
142
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
143
348
da4b267c10bf - test code fixes and cleanups for win 32
Tassilo Philipp
parents: 324
diff changeset
144 #if defined(DC__OS_Win32)
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
145 /* win32 __stdcall */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
146
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
147 DEF_FUNCS(__stdcall,std)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
148
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
149 static int testCallStd()
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
150 {
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
151 int ret = 1;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
152
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
153 DCCallVM* pc = dcNewCallVM(4096);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
154 dcMode(pc,DC_CALL_C_X86_WIN32_STD);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
155 /* void */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
156 dcReset(pc);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
157 g_void_testval = 0;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
158 dcCallVoid(pc, (DCpointer) &fun_std_v);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
159 ret = g_void_testval && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
160 /* bool */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
161 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
162 DCbool r, val=DC_TRUE;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
163 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
164 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
165 r = dcCallBool(pc, (DCpointer) &fun_std_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
166 printf("bt (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
167 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
168
146
0ab08c1541f0 - fixed armhf ellipsis calls, were ignoring spill area
cslag
parents: 141
diff changeset
169 val=DC_FALSE;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
170 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
171 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
172 r = dcCallBool(pc, (DCpointer) &fun_std_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
173 printf("bf (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
174 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
175 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
176 /* int */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
177 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
178 DCint r, val=1234;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
179 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
180 dcArgInt(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
181 r = dcCallInt(pc, (DCpointer) &fun_std_i);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
182 printf("i (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
183 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
184 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
185 /* long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
186 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
187 DClong r, val=0xCAFEBABEUL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
188 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
189 dcArgLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
190 r = dcCallLong(pc, (DCpointer) &fun_std_j);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
191 printf("l (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
192 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
193 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
194 /* long long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
195 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
196 DClonglong r, val=0xCAFEBABEDEADC0DEULL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
197 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
198 dcArgLongLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
199 r = dcCallLongLong(pc, (DCpointer) &fun_std_l);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
200 printf("ll (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
201 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
202 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
203 /* float */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
204 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
205 DCfloat r, val=1.234567f;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
206 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
207 dcArgFloat(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
208 r = dcCallFloat(pc, (DCpointer) &fun_std_f);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
209 printf("f (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
210 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
211 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
212 /* double */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
213 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
214 DCdouble r, val=1.23456789;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
215 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
216 dcArgDouble(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
217 r = dcCallDouble(pc, (DCpointer) &fun_std_d);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
218 printf("d (stdcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
219 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
220 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
221 /* ptr */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
222 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
223 DCpointer r;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
224 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
225 dcArgPointer(pc, (DCpointer) &fun_c_b);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
226 r = dcCallPointer(pc, (DCpointer) &fun_std_p);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
227 printf("p (stdcall): %d\n", (r == &fun_c_b));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
228 ret = (r == &fun_c_b) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
229 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
230 dcFree(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
231
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
232 return ret;
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
233 }
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
234
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
235 #endif
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
236
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
237
348
da4b267c10bf - test code fixes and cleanups for win 32
Tassilo Philipp
parents: 324
diff changeset
238 #if defined(DC__OS_Win32)
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
239 /* win32 __fastcall */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
240
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
241 DEF_FUNCS(__fastcall,fast)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
242
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
243 static int testCallFast()
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
244 {
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
245 int ret = 1;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
246
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
247 DCCallVM* pc = dcNewCallVM(4096);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
248 #ifdef DC__C_GNU
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
249 # define FT "GNU"
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
250 dcMode(pc,DC_CALL_C_X86_WIN32_FAST_GNU);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
251 #else
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
252 # define FT "MS"
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
253 dcMode(pc,DC_CALL_C_X86_WIN32_FAST_MS);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
254 #endif
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
255 /* void */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
256 dcReset(pc);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
257 g_void_testval = 0;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
258 dcCallVoid(pc, (DCpointer) &fun_fast_v);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
259 ret = g_void_testval && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
260 /* bool */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
261 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
262 DCbool r, val=DC_TRUE;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
263 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
264 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
265 r = dcCallBool(pc, (DCpointer) &fun_fast_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
266 printf("bt ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
267 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
268
146
0ab08c1541f0 - fixed armhf ellipsis calls, were ignoring spill area
cslag
parents: 141
diff changeset
269 val=DC_FALSE;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
270 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
271 dcArgBool(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
272 r = dcCallBool(pc, (DCpointer) &fun_fast_b);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
273 printf("bf ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
274 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
275 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
276 /* int */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
277 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
278 DCint r, val=1234;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
279 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
280 dcArgInt(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
281 r = dcCallInt(pc, (DCpointer) &fun_fast_i);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
282 printf("i ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
283 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
284 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
285 /* long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
286 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
287 DClong r, val=0xCAFEBABEUL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
288 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
289 dcArgLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
290 r = dcCallLong(pc, (DCpointer) &fun_fast_j);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
291 printf("l ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
292 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
293 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
294 /* long long */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
295 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
296 DClonglong r, val=0xCAFEBABEDEADC0DEULL;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
297 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
298 dcArgLongLong(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
299 r = dcCallLongLong(pc, (DCpointer) &fun_fast_l);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
300 printf("ll ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
301 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
302 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
303 /* float */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
304 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
305 DCfloat r, val=1.234567f;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
306 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
307 dcArgFloat(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
308 r = dcCallFloat(pc, (DCpointer) &fun_fast_f);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
309 printf("f ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
310 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
311 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
312 /* double */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
313 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
314 DCdouble r, val=1.23456789;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
315 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
316 dcArgDouble(pc, val);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
317 r = dcCallDouble(pc, (DCpointer) &fun_fast_d);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
318 printf("d ("FT"fastcall): %d\n", (r == val));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
319 ret = (r == val) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
320 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
321 /* ptr */
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
322 {
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
323 DCpointer r;
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
324 dcReset(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
325 dcArgPointer(pc, (DCpointer) &fun_c_b);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
326 r = dcCallPointer(pc, (DCpointer) &fun_fast_p);
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
327 printf("p ("FT"fastcall): %d\n", (r == &fun_c_b));
531
f6430d194be6 cleanups
Tassilo Philipp
parents: 348
diff changeset
328 ret = (r == &fun_c_b) && ret;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
329 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
330 dcFree(pc);
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
331
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
332 return ret;
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
333 }
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
334
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
335 #endif
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
336
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
337
533
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
338 #if defined(DC__Feature_AggrByVal)
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
339 int testAggrReturns();
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
340 int testAggrParameters();
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
341 #endif
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
342
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
343 int main(int argc, char* argv[])
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
344 {
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
345 int r = 1;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
346 dcTest_initPlatform();
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
347
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
348 r = testCallC() && r;
533
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
349 #if defined(DC__Feature_AggrByVal)
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
350 r = testAggrReturns() && r;
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
351 r = testAggrParameters() && r;
71c884e610f0 - integration of patches from Raphael Luba, Thekla, Inc.:
Tassilo Philipp
parents: 532
diff changeset
352 #endif
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
353 #if defined(DC__OS_Win32)
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
354 r = testCallStd() && r;
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
355 r = testCallFast() && r;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
356 #endif
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
357
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
358 printf("result: plain: %d\n", r);
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
359
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
360 dcTest_deInitPlatform();
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
361
324
dd78bd0152af - removal of never-adopted mini-test framework stub
Tassilo Philipp
parents: 281
diff changeset
362 return !r;
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
363 }
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
364