]>
Commit | Line | Data |
---|---|---|
6d2010ae | 1 | .text |
fe8ab488 A |
2 | .align 2 |
3 | .globl _main | |
4 | _main: | |
6d2010ae A |
5 | #if defined(__x86_64__) |
6 | pushq $0 | |
7 | mov %rsp, %rbp | |
8 | andq $0xfffffffffffffff0, %rsp | |
9 | movl $42, %edi | |
10 | movl $0x2000001, %eax | |
11 | movl $0, %ecx | |
12 | movq %rcx, %r10 | |
13 | syscall | |
14 | jmp 1f | |
15 | 1: | |
16 | hlt | |
17 | nop | |
18 | nop | |
19 | nop | |
20 | nop | |
21 | #elif defined(__i386__) | |
22 | pushl $0 | |
23 | mov %esp, %ebp | |
24 | andl $0xfffffff0, %esp | |
25 | subl $12, %esp | |
26 | pushl $42 | |
27 | mov $0x40001, %eax | |
28 | call _sysenter_trap | |
29 | jmp 1f | |
30 | 1: | |
31 | hlt | |
32 | nop | |
33 | nop | |
34 | nop | |
35 | nop | |
36 | _sysenter_trap: | |
37 | pop %edx | |
38 | mov %esp, %ecx | |
39 | sysenter | |
40 | nop | |
41 | #else | |
42 | #error Unsupported architecture | |
43 | #endif |