Merged revision 156805 into branch.
[official-gcc.git] / gcc / testsuite / gcc.target / x86_64 / abi / avx / asm-support.S
bloba4d002e19e4c1ac22f016ce783d88633e8a77bb0
1         .file   "snapshot.S"
2         .text
3         .p2align 4,,15
4 .globl snapshot
5         .type   snapshot, @function
6 snapshot:
7 .LFB3:
8         movq    %rax, rax(%rip)
9         movq    %rbx, rbx(%rip)
10         movq    %rcx, rcx(%rip)
11         movq    %rdx, rdx(%rip)
12         movq    %rdi, rdi(%rip)
13         movq    %rsi, rsi(%rip)
14         movq    %rbp, rbp(%rip)
15         movq    %rsp, rsp(%rip)
16         movq    %r8, r8(%rip)
17         movq    %r9, r9(%rip)
18         movq    %r10, r10(%rip)
19         movq    %r11, r11(%rip)
20         movq    %r12, r12(%rip)
21         movq    %r13, r13(%rip)
22         movq    %r14, r14(%rip)
23         movq    %r15, r15(%rip)
24         vmovdqu %ymm0, ymm_regs+0(%rip)
25         vmovdqu %ymm1, ymm_regs+32(%rip)
26         vmovdqu %ymm2, ymm_regs+32*2(%rip)
27         vmovdqu %ymm3, ymm_regs+32*3(%rip)
28         vmovdqu %ymm4, ymm_regs+32*4(%rip)
29         vmovdqu %ymm5, ymm_regs+32*5(%rip)
30         vmovdqu %ymm6, ymm_regs+32*6(%rip)
31         vmovdqu %ymm7, ymm_regs+32*7(%rip)
32         vmovdqu %ymm8, ymm_regs+32*8(%rip)
33         vmovdqu %ymm9, ymm_regs+32*9(%rip)
34         vmovdqu %ymm10, ymm_regs+32*10(%rip)
35         vmovdqu %ymm11, ymm_regs+32*11(%rip)
36         vmovdqu %ymm12, ymm_regs+32*12(%rip)
37         vmovdqu %ymm13, ymm_regs+32*13(%rip)
38         vmovdqu %ymm14, ymm_regs+32*14(%rip)
39         vmovdqu %ymm15, ymm_regs+32*15(%rip)
40         jmp     *callthis(%rip)
41 .LFE3:
42         .size   snapshot, .-snapshot
44         .p2align 4,,15
45 .globl snapshot_ret
46         .type   snapshot_ret, @function
47 snapshot_ret:
48         movq    %rdi, rdi(%rip)
49         subq    $8, %rsp
50         call    *callthis(%rip)
51         addq    $8, %rsp
52         movq    %rax, rax(%rip)
53         movq    %rdx, rdx(%rip)
54         vmovdqu %ymm0, ymm_regs+0(%rip)
55         vmovdqu %ymm1, ymm_regs+32(%rip)
56         fstpt   x87_regs(%rip)
57         fstpt   x87_regs+16(%rip)
58         fldt    x87_regs+16(%rip)
59         fldt    x87_regs(%rip)
60         ret
61         .size   snapshot_ret, .-snapshot_ret
63         .comm   callthis,8,8
64         .comm   rax,8,8
65         .comm   rbx,8,8
66         .comm   rcx,8,8
67         .comm   rdx,8,8
68         .comm   rsi,8,8
69         .comm   rdi,8,8
70         .comm   rsp,8,8
71         .comm   rbp,8,8
72         .comm   r8,8,8
73         .comm   r9,8,8
74         .comm   r10,8,8
75         .comm   r11,8,8
76         .comm   r12,8,8
77         .comm   r13,8,8
78         .comm   r14,8,8
79         .comm   r15,8,8
80         .comm   ymm_regs,512,32
81         .comm   x87_regs,128,32
82         .comm   volatile_var,8,8