1	.text
2	.p2align 4,,15
3.globl snapshot
4	.type	snapshot, @function
5snapshot:
6.LFB3:
7	movq	%rax, rax(%rip)
8	movq	%rbx, rbx(%rip)
9	movq	%rcx, rcx(%rip)
10	movq	%rdx, rdx(%rip)
11	movq	%rdi, rdi(%rip)
12	movq	%rsi, rsi(%rip)
13	movq	%rbp, rbp(%rip)
14	movq	%rsp, rsp(%rip)
15	movq	%r8, r8(%rip)
16	movq	%r9, r9(%rip)
17	movq	%r10, r10(%rip)
18	movq	%r11, r11(%rip)
19	movq	%r12, r12(%rip)
20	movq	%r13, r13(%rip)
21	movq	%r14, r14(%rip)
22	movq	%r15, r15(%rip)
23	vmovdqu32 %zmm0, zmm_regs+0(%rip)
24	vmovdqu32 %zmm1, zmm_regs+64(%rip)
25	vmovdqu32 %zmm2, zmm_regs+128(%rip)
26	vmovdqu32 %zmm3, zmm_regs+192(%rip)
27	vmovdqu32 %zmm4, zmm_regs+256(%rip)
28	vmovdqu32 %zmm5, zmm_regs+320(%rip)
29	vmovdqu32 %zmm6, zmm_regs+384(%rip)
30	vmovdqu32 %zmm7, zmm_regs+448(%rip)
31	vmovdqu32 %zmm8, zmm_regs+512(%rip)
32	vmovdqu32 %zmm9, zmm_regs+576(%rip)
33	vmovdqu32 %zmm10, zmm_regs+640(%rip)
34	vmovdqu32 %zmm11, zmm_regs+704(%rip)
35	vmovdqu32 %zmm12, zmm_regs+768(%rip)
36	vmovdqu32 %zmm13, zmm_regs+832(%rip)
37	vmovdqu32 %zmm14, zmm_regs+896(%rip)
38	vmovdqu32 %zmm15, zmm_regs+960(%rip)
39	vmovdqu32 %zmm16, zmm_regs+1024(%rip)
40	vmovdqu32 %zmm17, zmm_regs+1088(%rip)
41	vmovdqu32 %zmm18, zmm_regs+1152(%rip)
42	vmovdqu32 %zmm19, zmm_regs+1216(%rip)
43	vmovdqu32 %zmm20, zmm_regs+1280(%rip)
44	vmovdqu32 %zmm21, zmm_regs+1344(%rip)
45	vmovdqu32 %zmm22, zmm_regs+1408(%rip)
46	vmovdqu32 %zmm23, zmm_regs+1472(%rip)
47	vmovdqu32 %zmm24, zmm_regs+1536(%rip)
48	vmovdqu32 %zmm25, zmm_regs+1600(%rip)
49	vmovdqu32 %zmm26, zmm_regs+1664(%rip)
50	vmovdqu32 %zmm27, zmm_regs+1728(%rip)
51	vmovdqu32 %zmm28, zmm_regs+1792(%rip)
52	vmovdqu32 %zmm29, zmm_regs+1856(%rip)
53	vmovdqu32 %zmm30, zmm_regs+1920(%rip)
54	vmovdqu32 %zmm31, zmm_regs+1984(%rip)
55	jmp	*callthis(%rip)
56.LFE3:
57	.size	snapshot, .-snapshot
58
59	.p2align 4,,15
60.globl snapshot_ret
61	.type	snapshot_ret, @function
62snapshot_ret:
63	movq	%rdi, rdi(%rip)
64	subq	$8, %rsp
65	call	*callthis(%rip)
66	addq	$8, %rsp
67	movq	%rax, rax(%rip)
68	movq	%rdx, rdx(%rip)
69	vmovdqu32	%zmm0, zmm_regs+0(%rip)
70	vmovdqu32	%zmm1, zmm_regs+64(%rip)
71	fstpt	x87_regs(%rip)
72	fstpt	x87_regs+16(%rip)
73	fldt	x87_regs+16(%rip)
74	fldt	x87_regs(%rip)
75	ret
76	.size	snapshot_ret, .-snapshot_ret
77
78	.comm	callthis,8,8
79	.comm	rax,8,8
80	.comm	rbx,8,8
81	.comm	rcx,8,8
82	.comm	rdx,8,8
83	.comm	rsi,8,8
84	.comm	rdi,8,8
85	.comm	rsp,8,8
86	.comm	rbp,8,8
87	.comm	r8,8,8
88	.comm	r9,8,8
89	.comm	r10,8,8
90	.comm	r11,8,8
91	.comm	r12,8,8
92	.comm	r13,8,8
93	.comm	r14,8,8
94	.comm	r15,8,8
95	.comm	zmm_regs,2048,64
96	.comm	x87_regs,128,32
97	.comm   volatile_var,8,8
98