Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / arch / x86_64 / core / linux / linuxprefix.S
1 #include <linux/unistd.h>
2
3         .section ".text"
4         .code64
5         .globl _linux_start
6         .type _linux_start, @function
7
8 _linux_start:
9         xorq    %rbp, %rbp
10
11         popq    %rdi       // argc -> C arg1
12         movq    %rsp, %rsi // argv -> C arg2
13
14         andq    $~15, %rsp // 16-byte align the stack
15
16         call    save_args
17
18         /* Our main doesn't use any arguments */
19         call    main
20
21         movq    %rax, %rdi // rc -> syscall arg1
22         movq    $__NR_exit, %rax
23         syscall
24
25         .size _linux_start, . - _linux_start