arm: move to C trampoline

master
Ariadne Conill 2020-12-12 06:40:27 +00:00
parent a6a64b0711
commit afcca79d7b
3 changed files with 5 additions and 23 deletions

View File

@ -5,6 +5,9 @@
#define TYPE(__proc)
#define FETCH_LINKPTR(dest) \
asm("movs r0, %0" : "=rm" ((dest)))
#include "common-defs.h"
#endif

View File

@ -1,23 +0,0 @@
/*
* Copyright (c) 2018 Ariadne Conill <ariadne@dereferenced.org>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* This software is provided 'as is' and without any warranty, express or
* implied. In no event shall the authors be liable for any damages arising
* from the use of this software.
*/
.globl libucontext_trampoline;
.fnstart
.cantunwind
nop
libucontext_trampoline:
/* get the proper context into position and test for NULL */
movs r0, r4
bne libucontext_setcontext@plt
/* we are returning into a null context, it seems, so maybe we should exit */
b exit@plt

2
arch/arm/trampoline.c Normal file
View File

@ -0,0 +1,2 @@
#include "defs.h"
#include "common-trampoline.c"