Mercurial > pub > dyncall > dyncall
annotate dyncall/dyncall_callvm_arm64.h @ 546:ba70fb631bea
x64:
* support for non-standard aggr-by-value packing (#pragma pack, etc.)
* callbacks: handling callconv prefixes in signature
author | Tassilo Philipp |
---|---|
date | Tue, 31 May 2022 19:29:34 +0200 |
parents | ad5f9803f52f |
children | cab0031c6691 |
rev | line source |
---|---|
0 | 1 /* |
2 | |
3 Package: dyncall | |
4 Library: dyncall | |
5 File: dyncall/dyncall_callvm_arm64.h | |
6 Description: | |
7 License: | |
8 | |
366
ad5f9803f52f
- removal of some unnecessary headers that only contained internally used forward declarations, so no need to have them
Tassilo Philipp
parents:
281
diff
changeset
|
9 Copyright (c) 2015-2020 Daniel Adler <dadler@uni-goettingen.de>, |
281 | 10 Tassilo Philipp <tphilipp@potion-studios.com> |
0 | 11 |
12 Permission to use, copy, modify, and distribute this software for any | |
13 purpose with or without fee is hereby granted, provided that the above | |
14 copyright notice and this permission notice appear in all copies. | |
15 | |
16 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
17 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
18 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
19 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
20 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
21 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
22 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
23 | |
24 */ | |
25 | |
26 #ifndef DYNCALL_CALLVM_ARM64_H | |
27 #define DYNCALL_CALLVM_ARM64_H | |
28 | |
29 #include "dyncall_callvm.h" | |
30 #include "dyncall_vector.h" | |
31 | |
32 typedef struct | |
33 { | |
34 DCCallVM mInterface; | |
35 unsigned int i; /* int register counter */ | |
36 unsigned int f; /* float register counter */ | |
37 union { /* float register buffer */ | |
38 DCfloat S[16]; | |
39 DCdouble D[8]; | |
40 } u; | |
41 unsigned long long I[8]; /* int register buffer */ | |
42 DCVecHead mVecHead; /* argument buffer head */ | |
43 } DCCallVM_arm64; | |
44 | |
45 #endif /* DYNCALL_CALLVM_ARM64_DEBIAN_H */ | |
46 |