1	.comm	callthis,4,4
2	.comm	eax,4,4
3	.comm	ebx,4,4
4	.comm	ecx,4,4
5	.comm	edx,4,4
6	.comm	esi,4,4
7	.comm	edi,4,4
8	.comm	esp,4,4
9	.comm	ebp,4,4
10	.comm	sret_eax,4,4
11	.comm   volatile_var,4,4
12
13	.text
14	.p2align 4,,15
15.globl snapshot
16	.type	snapshot, @function
17snapshot:
18	movl	%eax, eax
19	movl	%ebx, ebx
20	movl	%ecx, ecx
21	movl	%edx, edx
22	movl	%edi, edi
23	movl	%esi, esi
24	movl	%ebp, ebp
25	movl	%esp, esp
26	jmp	*callthis
27	.size	snapshot, .-snapshot
28
29	.p2align 4,,15
30.globl snapshot_ret
31	.type	snapshot_ret, @function
32snapshot_ret:
33	movl	%eax, sret_eax
34	call	*callthis
35	movl	%eax, eax
36	movl	%edx, edx
37	ret
38	.size	snapshot_ret, .-snapshot_ret
39
40	.p2align 4,,15
41	.globl	__nesf2
42	.type	__nesf2, @function
43__nesf2:
44	.cfi_startproc
45	subl	$4, %esp
46	.cfi_def_cfa_offset 8
47	movl	%eax, (%esp)
48	movl	$1, %eax
49	fildl	(%esp)
50	movl	%edx, (%esp)
51	xorl	%edx, %edx
52	fildl	(%esp)
53	fucomip	%st(1), %st
54	fstp	%st(0)
55	setp	%dl
56	cmove	%edx, %eax
57	addl	$4, %esp
58	.cfi_def_cfa_offset 4
59	ret
60	.cfi_endproc
61	.size	__nesf2, .-__nesf2
62
63	.p2align 4,,15
64	.globl	__nedf2
65	.type	__nedf2, @function
66__nedf2:
67	.cfi_startproc
68	pushl	%ebp
69	.cfi_def_cfa_offset 8
70	.cfi_offset 5, -8
71	movl	%esp, %ebp
72	.cfi_def_cfa_register 5
73	andl	$-8, %esp
74	subl	$8, %esp
75	movl	%eax, (%esp)
76	movl	$1, %eax
77	movl	%edx, 4(%esp)
78	xorl	%edx, %edx
79	fildq	(%esp)
80	fildq	8(%ebp)
81	fucomip	%st(1), %st
82	fstp	%st(0)
83	setp	%dl
84	cmove	%edx, %eax
85	leave
86	.cfi_restore 5
87	.cfi_def_cfa 4, 4
88	ret
89	.cfi_endproc
90	.size	__nedf2, .-__nedf2
91
92	.p2align 4,,15
93	.globl	__addsf3
94	.type	__addsf3, @function
95__addsf3:
96	.cfi_startproc
97	subl	$4, %esp
98	.cfi_def_cfa_offset 8
99	movl	%eax, (%esp)
100	flds	(%esp)
101	movl	%edx, (%esp)
102	flds	(%esp)
103	faddp	%st, %st(1)
104	fstps	(%esp)
105	movl	(%esp), %eax
106	addl	$4, %esp
107	.cfi_def_cfa_offset 4
108	ret
109	.cfi_endproc
110	.size	__addsf3, .-__addsf3
111
112	.p2align 4,,15
113	.globl	__adddf3
114	.type	__adddf3, @function
115__adddf3:
116	.cfi_startproc
117	pushl	%ebp
118	.cfi_def_cfa_offset 8
119	.cfi_offset 5, -8
120	movl	%esp, %ebp
121	.cfi_def_cfa_register 5
122	andl	$-8, %esp
123	subl	$8, %esp
124	movl	%eax, (%esp)
125	movl	%edx, 4(%esp)
126	fldl	(%esp)
127	faddl	8(%ebp)
128	fstpl	(%esp)
129	movl	(%esp), %eax
130	movl	4(%esp), %edx
131	leave
132	.cfi_restore 5
133	.cfi_def_cfa 4, 4
134	ret
135	.cfi_endproc
136	.size	__adddf3, .-__adddf3
137
138	.p2align 4,,15
139	.globl	__floatsisf
140	.type	__floatsisf, @function
141__floatsisf:
142	.cfi_startproc
143	subl	$4, %esp
144	.cfi_def_cfa_offset 8
145	movl	%eax, (%esp)
146	fildl	(%esp)
147	addl	$4, %esp
148	.cfi_def_cfa_offset 4
149	ret
150	.cfi_endproc
151	.size	__floatsisf, .-__floatsisf
152
153	.p2align 4,,15
154	.globl	__floatunsisf
155	.type	__floatunsisf, @function
156__floatunsisf:
157	.cfi_startproc
158	subl	$8, %esp
159	.cfi_def_cfa_offset 12
160	xorl	%edx, %edx
161	movl	%eax, (%esp)
162	movl	%edx, 4(%esp)
163	fildq	(%esp)
164	addl	$8, %esp
165	.cfi_def_cfa_offset 4
166	ret
167	.cfi_endproc
168	.size	__floatunsisf, .-__floatunsisf
169
170	.globl	__extendsfdf2
171	.type	__extendsfdf2, @function
172__extendsfdf2:
173	.cfi_startproc
174	pushl	%ebp
175	.cfi_def_cfa_offset 8
176	.cfi_offset 5, -8
177	movl	%esp, %ebp
178	.cfi_def_cfa_register 5
179	andl	$-8, %esp
180	subl	$8, %esp
181	movl	%eax, (%esp)
182	flds	(%esp)
183	fstpl	(%esp)
184	movl	(%esp), %eax
185	movl	4(%esp), %edx
186	leave
187	.cfi_restore 5
188	.cfi_def_cfa 4, 4
189	ret
190	.cfi_endproc
191	.size	__extendsfdf2, .-__extendsfdf2
192
193	.p2align 4,,15
194	.globl	__truncdfsf2
195	.type	__truncdfsf2, @function
196__truncdfsf2:
197	.cfi_startproc
198	pushl	%ebp
199	.cfi_def_cfa_offset 8
200	.cfi_offset 5, -8
201	movl	%esp, %ebp
202	.cfi_def_cfa_register 5
203	andl	$-8, %esp
204	subl	$12, %esp
205	movl	%eax, (%esp)
206	movl	%edx, 4(%esp)
207	fldl	(%esp)
208	fstps	(%esp)
209	movl	(%esp), %eax
210	leave
211	.cfi_restore 5
212	.cfi_def_cfa 4, 4
213	ret
214	.cfi_endproc
215	.size	__truncdfsf2, .-__truncdfsf2
216
217	.p2align 4,,15
218	.globl	iamcu_memset
219	.type	iamcu_memset, @function
220iamcu_memset:
221	.cfi_startproc
222	pushl	%edi
223	.cfi_adjust_cfa_offset 4
224	.cfi_rel_offset %edi, 0
225	movl	%eax, %edi
226	movzbl	%dl, %eax
227	movl	%edi, %edx
228	rep stosb
229	movl	%edx, %eax
230	popl	%edi
231	.cfi_adjust_cfa_offset -4
232	.cfi_restore %edi
233	ret
234	.cfi_endproc
235	.size	iamcu_memset, .-iamcu_memset
236
237	.p2align 4,,15
238	.globl	iamcu_noprintf
239	.type	iamcu_noprintf, @function
240iamcu_noprintf:
241	.cfi_startproc
242	pushl	%ebp
243	.cfi_def_cfa_offset 8
244	.cfi_offset 5, -8
245	movl	%esp, %ebp
246	.cfi_def_cfa_register 5
247	cmpl	$-1414676753, 8(%ebp)
248	fldl	16(%ebp)
249	fldl	28(%ebp)
250	jne	7f
251	cmpl	$256, 12(%ebp)
252	jne	8f
253	flds	.LCiamcu_noprintf0
254	movl	$1, %eax
255	fucomip	%st(2), %st
256	fstp	%st(1)
257	setp	%dl
258	cmovne	%eax, %edx
259	testb	%dl, %dl
260	jne	9f
261	cmpl	$-1146241297, 24(%ebp)
262	jne	10f
263	flds	.LCiamcu_noprintf1
264	fucomip	%st(1), %st
265	fstp	%st(0)
266	setp	%dl
267	cmove	%edx, %eax
268	testb	%al, %al
269	jne	2f
270	cmpl	$259, 36(%ebp)
271	jne	2f
272	popl	%ebp
273	.cfi_remember_state
274	.cfi_restore 5
275	.cfi_def_cfa 4, 4
276	ret
2777:
278	.cfi_restore_state
279	fstp	%st(0)
280	fstp	%st(0)
281	jmp	2f
2828:
283	fstp	%st(0)
284	fstp	%st(0)
285	.p2align 4,,3
286	jmp	2f
2879:
288	fstp	%st(0)
289	jmp	2f
29010:
291	fstp	%st(0)
2922:
293	call	abort
294	.cfi_endproc
295	.size	iamcu_noprintf, .-iamcu_noprintf
296	.section	.rodata.cst4,"aM",@progbits,4
297	.align 4
298.LCiamcu_noprintf0:
299	.long	1132494848
300	.align 4
301.LCiamcu_noprintf1:
302	.long	1132527616
303