annotate dyncallback/dyncall_thunk_mips64.h @ 357:d982a00c2177

- PPC64 asm syntax fix, specifying explicitly comparison mode for cmpi (newer toolchains complain, older ones took optional field of instruction which happened to be same value)
author Tassilo Philipp
date Tue, 25 Feb 2020 18:16:13 +0100
parents f5577f6bf97a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
116
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
1 /*
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
2
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
3 Package: dyncall
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
4 Library: dyncallback
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
5 File: dyncallback/dyncall_thunk_mips64.h
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
6 Description: Thunk - Header for MIPS64
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
7 License:
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
8
281
f5577f6bf97a - file header cleanups for release
Tassilo Philipp
parents: 155
diff changeset
9 Copyright (c) 2016-2018 Tassilo Philipp <tphilipp@potion-studios.com>
116
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
10
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
11 Permission to use, copy, modify, and distribute this software for any
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
12 purpose with or without fee is hereby granted, provided that the above
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
13 copyright notice and this permission notice appear in all copies.
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
14
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
15 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
16 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
17 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
18 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
19 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
20 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
21 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
22
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
23 */
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
24
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
25
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
26 #ifndef DYNCALL_THUNK_MIPS64_H
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
27 #define DYNCALL_THUNK_MIPS64_H
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
28
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
29 struct DCThunk_
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
30 {
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
31 union {
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
32 unsigned short s[26];
118
f0437f85091b - cleanups in comments, etc.
cslag
parents: 116
diff changeset
33 unsigned int i[13]; /* don't change from 'int', must be 32bit wide */
116
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
34 } text;
121
f00b1f3da52e - added padding to mips64 thunk
cslag
parents: 118
diff changeset
35 unsigned int padding; /* 4 bytes, to get struct size to multiple of 8 */
116
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
36 };
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
37
155
bbefb8b8e74c - sparc32 thunk code
cslag
parents: 121
diff changeset
38 #define DCTHUNK_MIPS64_SIZE 56
116
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
39
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
40 #endif /* DYNCALL_THUNK_MIPS64_H */
c5cb02203df4 - mips n64 working thunks
cslag
parents:
diff changeset
41