1// Copyright 2017 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5#include "../../../../../runtime/textflag.h"
6
7TEXT	foo(SB), DUPOK|NOSPLIT, $0
8
9	ADDF	F0, F1, F2    // 002a31ee
10	ADDD.EQ	F3, F4, F5    // 035b340e
11	ADDF.NE	F0, F2        // 002a321e
12	ADDD	F3, F5        // 035b35ee
13	SUBF	F0, F1, F2    // 402a31ee
14	SUBD.EQ	F3, F4, F5    // 435b340e
15	SUBF.NE	F0, F2        // 402a321e
16	SUBD	F3, F5        // 435b35ee
17	MULF	F0, F1, F2    // 002a21ee
18	MULD.EQ	F3, F4, F5    // 035b240e
19	MULF.NE	F0, F2        // 002a221e
20	MULD	F3, F5        // 035b25ee
21	NMULF	F0, F1, F2    // 402a21ee
22	NMULF	F3, F7        // 437a27ee
23	NMULD	F0, F1, F2    // 402b21ee
24	NMULD	F3, F7        // 437b27ee
25	MULAF	F5, F6, F7    // 057a06ee
26	MULAD	F5, F6, F7    // 057b06ee
27	MULSF	F5, F6, F7    // 457a06ee
28	MULSD	F5, F6, F7    // 457b06ee
29	NMULAF	F5, F6, F7    // 457a16ee
30	NMULAD	F5, F6, F7    // 457b16ee
31	NMULSF	F5, F6, F7    // 057a16ee
32	NMULSD	F5, F6, F7    // 057b16ee
33	FMULAF  F5, F6, F7    // 057aa6ee
34	FMULAD  F5, F6, F7    // 057ba6ee
35	FMULSF  F5, F6, F7    // 457aa6ee
36	FMULSD  F5, F6, F7    // 457ba6ee
37	FNMULAF F5, F6, F7    // 457a96ee
38	FNMULAD F5, F6, F7    // 457b96ee
39	FNMULSF F5, F6, F7    // 057a96ee
40	FNMULSD F5, F6, F7    // 057b96ee
41	DIVF	F0, F1, F2    // 002a81ee
42	DIVD.EQ	F3, F4, F5    // 035b840e
43	DIVF.NE	F0, F2        // 002a821e
44	DIVD	F3, F5        // 035b85ee
45	NEGF	F0, F1        // 401ab1ee
46	NEGD	F4, F5        // 445bb1ee
47	ABSF	F0, F1        // c01ab0ee
48	ABSD	F4, F5        // c45bb0ee
49	SQRTF	F0, F1        // c01ab1ee
50	SQRTD	F4, F5        // c45bb1ee
51	MOVFD	F0, F1        // c01ab7ee
52	MOVDF	F4, F5        // c45bb7ee
53
54	LDREX	(R8), R9      // 9f9f98e1
55	LDREXD	(R11), R12    // 9fcfbbe1
56	STREX	R3, (R4), R5  // STREX  (R4), R3, R5 // 935f84e1
57	STREXD	R8, (R9), g   // STREXD (R9), R8, g  // 98afa9e1
58
59	CMPF    F8, F9        // c89ab4ee10faf1ee
60	CMPD.CS F4, F5        // c45bb42e10faf12e
61	CMPF.VS F7            // c07ab56e10faf16e
62	CMPD    F6            // c06bb5ee10faf1ee
63
64	MOVW	R4, F8        // 104b08ee
65	MOVW	F4, R8        // 108b14ee
66
67	MOVF	(R4), F9                                  // 009a94ed
68	MOVD.EQ	(R4), F9                                  // 009b940d
69	MOVF.NE	(g), F3                                   // 003a9a1d
70	MOVD	(g), F3                                   // 003b9aed
71	MOVF	0x20(R3), F9       // MOVF 32(R3), F9     // 089a93ed
72	MOVD.EQ	0x20(R4), F9       // MOVD.EQ 32(R4), F9  // 089b940d
73	MOVF.NE	-0x20(g), F3       // MOVF.NE -32(g), F3  // 083a1a1d
74	MOVD	-0x20(g), F3       // MOVD -32(g), F3     // 083b1aed
75	MOVF	F9, (R4)                                  // 009a84ed
76	MOVD.EQ	F9, (R4)                                  // 009b840d
77	MOVF.NE	F3, (g)                                   // 003a8a1d
78	MOVD	F3, (g)                                   // 003b8aed
79	MOVF	F9, 0x20(R3)       // MOVF F9, 32(R3)     // 089a83ed
80	MOVD.EQ	F9, 0x20(R4)       // MOVD.EQ F9, 32(R4)  // 089b840d
81	MOVF.NE	F3, -0x20(g)       // MOVF.NE F3, -32(g)  // 083a0a1d
82	MOVD	F3, -0x20(g)       // MOVD F3, -32(g)     // 083b0aed
83	MOVF	0x00ffffff(R2), F1 // MOVF 16777215(R2), F1
84	MOVD	0x00ffffff(R2), F1 // MOVD 16777215(R2), F1
85	MOVF	F2, 0x00ffffff(R2) // MOVF F2, 16777215(R2)
86	MOVD	F2, 0x00ffffff(R2) // MOVD F2, 16777215(R2)
87	MOVF	F0, math·Exp(SB)   // MOVF F0, math.Exp(SB)
88	MOVF	math·Exp(SB), F0   // MOVF math.Exp(SB), F0
89	MOVD	F0, math·Exp(SB)   // MOVD F0, math.Exp(SB)
90	MOVD	math·Exp(SB), F0   // MOVD math.Exp(SB), F0
91	MOVF	F4, F5                                    // 445ab0ee
92	MOVD	F6, F7                                    // 467bb0ee
93	MOVFW	F6, F8                                    // c68abdee
94	MOVFW	F6, R8                                    // c6fabdee108b1fee
95	MOVFW.U	F6, F8                                    // c68abcee
96	MOVFW.U	F6, R8                                    // c6fabcee108b1fee
97	MOVDW	F6, F8                                    // c68bbdee
98	MOVDW	F6, R8                                    // c6fbbdee108b1fee
99	MOVDW.U	F6, F8                                    // c68bbcee
100	MOVDW.U	F6, R8                                    // c6fbbcee108b1fee
101	MOVWF	F6, F8                                    // c68ab8ee
102	MOVWF	R6, F8                                    // 106b0feecf8ab8ee
103	MOVWF.U	F6, F8                                    // 468ab8ee
104	MOVWF.U	R6, F8                                    // 106b0fee4f8ab8ee
105	MOVWD	F6, F8                                    // c68bb8ee
106	MOVWD	R6, F8                                    // 106b0feecf8bb8ee
107	MOVWD.U	F6, F8                                    // 468bb8ee
108	MOVWD.U	R6, F8                                    // 106b0fee4f8bb8ee
109
110	END
111