Mercurial > pub > dyncall > dyncall
diff dyncallback/dyncall_thunk_ppc64.h @ 7:7ca57dbefed4
- ppc64 update from Masanori
author | cslag |
---|---|
date | Sun, 19 Jul 2015 13:05:34 +0200 |
parents | 3e629dc19168 |
children |
line wrap: on
line diff
--- a/dyncallback/dyncall_thunk_ppc64.h Thu Jul 09 20:51:11 2015 +0200 +++ b/dyncallback/dyncall_thunk_ppc64.h Sun Jul 19 13:05:34 2015 +0200 @@ -25,8 +25,20 @@ #ifndef DYNCALL_THUNK_PPC64_H #define DYNCALL_THUNK_PPC64_H -#if DC__ABI_PPC64_ELF_V == 2 -struct DCThunk_ +#if DC__ABI_PPC64_ELF_V != 2 +struct DCThunk_ /* v1 */ +{ + void (*thunk_entry)(); /* offset: 0 */ + long toc_thunk; /* offset: 8 */ + unsigned short code_load_hi, addr_self_hi; /* offset: 16 */ + unsigned short code_load_lo, addr_self_lo; /* offset: 20 */ + unsigned int code_jump[6]; /* offset: 24 */ + void (*addr_entry)(); /* offset: 48 */ + long toc_entry; /* offset: 56 */ +}; +#define DCTHUNK_SIZE_PPC64 64 +#else +struct DCThunk_ /* v2 */ { unsigned short addr_self_hist, code_load_hist; /* offset: 0 */ unsigned short addr_self_hier, code_load_hier; /* offset: 4 */ @@ -37,18 +49,6 @@ void (*addr_entry)(); /* offset: 40 */ }; #define DCTHUNK_SIZE_PPC64 48 -#else -struct DCThunk_ -{ - void (*thunk_entry)(); /* offset: 0 */ - long toc_thunk; /* offset: 8 */ - unsigned short code_load_hi, addr_self_hi; /* offset: 16 */ - unsigned short code_load_lo, addr_self_lo; /* offset: 20 */ - unsigned int code_jump[6]; /* offset: 24 */ - void (*addr_entry)(); /* offset: 48 */ - long toc_entry; /* offset: 56 */ -}; -#define DCTHUNK_SIZE_PPC64 64 #endif #endif /* DYNCALL_THUNK_PPC64_H */