OSDN Git Service

61b66e1490a9fddb76b87f569235802b9572671f
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / x86_64 / abi / asm-support.S
1         .file   "snapshot.S"
2 #ifdef __AVX__
3         .sse_check none
4 #endif
5         .text
6         .p2align 4,,15
7 .globl snapshot
8         .type   snapshot, @function
9 snapshot:
10 .LFB3:
11         movq    %rax, rax(%rip)
12         movq    %rbx, rbx(%rip)
13         movq    %rcx, rcx(%rip)
14         movq    %rdx, rdx(%rip)
15         movq    %rdi, rdi(%rip)
16         movq    %rsi, rsi(%rip)
17         movq    %rbp, rbp(%rip)
18         movq    %rsp, rsp(%rip)
19         movq    %r8, r8(%rip)
20         movq    %r9, r9(%rip)
21         movq    %r10, r10(%rip)
22         movq    %r11, r11(%rip)
23         movq    %r12, r12(%rip)
24         movq    %r13, r13(%rip)
25         movq    %r14, r14(%rip)
26         movq    %r15, r15(%rip)
27         movdqu  %xmm0, xmm_regs+0(%rip)
28         movdqu  %xmm1, xmm_regs+16(%rip)
29         movdqu  %xmm2, xmm_regs+16*2(%rip)
30         movdqu  %xmm3, xmm_regs+16*3(%rip)
31         movdqu  %xmm4, xmm_regs+16*4(%rip)
32         movdqu  %xmm5, xmm_regs+16*5(%rip)
33         movdqu  %xmm6, xmm_regs+16*6(%rip)
34         movdqu  %xmm7, xmm_regs+16*7(%rip)
35         movdqu  %xmm8, xmm_regs+16*8(%rip)
36         movdqu  %xmm9, xmm_regs+16*9(%rip)
37         movdqu  %xmm10, xmm_regs+16*10(%rip)
38         movdqu  %xmm11, xmm_regs+16*11(%rip)
39         movdqu  %xmm12, xmm_regs+16*12(%rip)
40         movdqu  %xmm13, xmm_regs+16*13(%rip)
41         movdqu  %xmm14, xmm_regs+16*14(%rip)
42         movdqu  %xmm15, xmm_regs+16*15(%rip)
43         jmp     *callthis(%rip)
44 .LFE3:
45         .size   snapshot, .-snapshot
46
47         .p2align 4,,15
48 .globl snapshot_ret
49         .type   snapshot_ret, @function
50 snapshot_ret:
51         movq    %rdi, rdi(%rip)
52         call    *callthis(%rip)
53         movq    %rax, rax(%rip)
54         movq    %rdx, rdx(%rip)
55         movdqu  %xmm0, xmm_regs+0(%rip)
56         movdqu  %xmm1, xmm_regs+16(%rip)
57         fstpt   x87_regs(%rip)
58         fstpt   x87_regs+16(%rip)
59         fldt    x87_regs+16(%rip)
60         fldt    x87_regs(%rip)
61         ret
62         .size   snapshot_ret, .-snapshot_ret
63
64         .comm   callthis,8,8
65         .comm   rax,8,8
66         .comm   rbx,8,8
67         .comm   rcx,8,8
68         .comm   rdx,8,8
69         .comm   rsi,8,8
70         .comm   rdi,8,8
71         .comm   rsp,8,8
72         .comm   rbp,8,8
73         .comm   r8,8,8
74         .comm   r9,8,8
75         .comm   r10,8,8
76         .comm   r11,8,8
77         .comm   r12,8,8
78         .comm   r13,8,8
79         .comm   r14,8,8
80         .comm   r15,8,8
81         .comm   xmm_regs,256,32
82         .comm   x87_regs,128,32
83         .comm   volatile_var,8,8