3 * libcorkscrew-based native unwinder
6 * Zoltan Varga <vargaz@gmail.com>
7 * Rodrigo Kumpera <kumpera@gmail.com>
8 * Andi McClure <andi.mcclure@xamarin.com>
9 * Johan Lorensson <johan.lorensson@xamarin.com>
11 * Copyright 2015 Xamarin, Inc (http://www.xamarin.com)
12 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
14 #ifndef MINI_AMD64_GSHAREDVT_H
15 #define MINI_AMD64_GSHAREDVT_H
18 GSHAREDVT_ARG_NONE = 0,
19 GSHAREDVT_ARG_BYVAL_TO_BYREF,
20 GSHAREDVT_ARG_BYREF_TO_BYVAL,
21 GSHAREDVT_ARG_BYREF_TO_BYVAL_U1,
22 GSHAREDVT_ARG_BYREF_TO_BYVAL_U2,
23 GSHAREDVT_ARG_BYREF_TO_BYVAL_U4
24 } GSharedVtArgMarshal;
27 GSHAREDVT_RET_NONE = 0,
28 GSHAREDVT_RET_I1, // 1 byte integer
29 GSHAREDVT_RET_U1, // 1 byte unsigned
30 GSHAREDVT_RET_I2, // 2 byte integer
31 GSHAREDVT_RET_U2, // 2 byte unsigned
32 GSHAREDVT_RET_I4, // 4 byte integer
33 GSHAREDVT_RET_U4, // 4 byte unsigned
34 GSHAREDVT_RET_I8, // 8 byte integer
35 GSHAREDVT_RET_IREGS_1, // Load in first return register
36 GSHAREDVT_RET_R8, // Double
38 } GSharedVtRetMarshal;
40 static const char* ret_marshal_name[] = {
49 "GSHAREDVT_RET_IREGS_1",
54 #ifdef DEBUG_AMD64_GSHAREDVT
55 #define DEBUG_AMD64_GSHAREDVT_PRINT printf
57 #define DEBUG_AMD64_GSHAREDVT_PRINT(...)
60 #endif /* MINI_AMD64_GSHAREDVT_H */