diff options
Diffstat (limited to 'arch/um/sys-x86_64/stub.S')
-rw-r--r-- | arch/um/sys-x86_64/stub.S | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/um/sys-x86_64/stub.S b/arch/um/sys-x86_64/stub.S new file mode 100644 index 000000000000..31c14925716b --- /dev/null +++ b/arch/um/sys-x86_64/stub.S | |||
@@ -0,0 +1,15 @@ | |||
1 | #include "uml-config.h" | ||
2 | |||
3 | .globl syscall_stub | ||
4 | .section .__syscall_stub, "x" | ||
5 | syscall_stub: | ||
6 | syscall | ||
7 | /* We don't have 64-bit constants, so this constructs the address | ||
8 | * we need. | ||
9 | */ | ||
10 | movq $(UML_CONFIG_STUB_DATA >> 32), %rbx | ||
11 | salq $32, %rbx | ||
12 | movq $(UML_CONFIG_STUB_DATA & 0xffffffff), %rcx | ||
13 | or %rcx, %rbx | ||
14 | movq %rax, (%rbx) | ||
15 | int3 | ||