From bdb03c0200bdd224cec9bd1343a011d5150fa4c1 Mon Sep 17 00:00:00 2001 From: Debian Common Lisp Team Date: Sun, 26 Nov 2017 17:23:10 +0000 Subject: [PATCH] trampoline-mips64el Gbp-Pq: Name trampoline-mips64el.patch --- trampoline/trampoline.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/trampoline/trampoline.c b/trampoline/trampoline.c index a53f170..07e82b2 100644 --- a/trampoline/trampoline.c +++ b/trampoline/trampoline.c @@ -760,17 +760,30 @@ trampoline_function_t alloc_trampoline (trampoline_function_t address, void** va * .dword * .dword
*/ +#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ *(long *) (function + 0) = 0xDF220018DF230020L; *(long *) (function + 8) = 0xFC430000DF390028L; *(long *) (function +16) = 0x0320000800000000L; +#else + *(long *) (function + 0) = 0xDF230020DF220018L; + *(long *) (function + 8) = 0xDF390028FC430000L; + *(long *) (function +16) = 0x0000000003200008L; +#endif *(unsigned long *) (function +24) = (unsigned long) variable; *(unsigned long *) (function +32) = (unsigned long) data; *(unsigned long *) (function +40) = (unsigned long) address; #define TRAMP_CODE_LENGTH 24 -#define is_tramp(function) \ +#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ +# define is_tramp(function) \ *(long *) (function + 0) == 0xDF220018DF230020L && \ *(long *) (function + 8) == 0xFC430000DF390028L && \ *(long *) (function +16) == 0x0320000800000000L +#else +# define is_tramp(function) \ + *(long *) (function + 0) == 0xDF230020DF220018L && \ + *(long *) (function + 8) == 0xDF390028FC430000L && \ + *(long *) (function +16) == 0x0000000003200008L +#endif #define tramp_address(function) \ *(unsigned long *) (function +40) #define tramp_variable(function) \ -- 2.30.2