LEFT | RIGHT |
(no file at all) | |
1 // Copyright 2010 The Go Authors. All rights reserved. | 1 // Copyright 2010 The Go Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style | 2 // Use of this source code is governed by a BSD-style |
3 // license that can be found in the LICENSE file. | 3 // license that can be found in the LICENSE file. |
4 | 4 |
5 #include "../../cmd/ld/textflag.h" | 5 #include "textflag.h" |
6 | 6 |
7 // The method is based on a paper by Naoki Shibata: "Efficient evaluation | 7 // The method is based on a paper by Naoki Shibata: "Efficient evaluation |
8 // methods of elementary functions suitable for SIMD computation", Proc. | 8 // methods of elementary functions suitable for SIMD computation", Proc. |
9 // of International Supercomputing Conference 2010 (ISC'10), pp. 25 -- 32 | 9 // of International Supercomputing Conference 2010 (ISC'10), pp. 25 -- 32 |
10 // (May 2010). The paper is available at | 10 // (May 2010). The paper is available at |
11 // http://www.springerlink.com/content/340228x165742104/ | 11 // http://www.springerlink.com/content/340228x165742104/ |
12 // | 12 // |
13 // The original code and the constants below are from the author's | 13 // The original code and the constants below are from the author's |
14 // implementation available at http://freshmeat.net/projects/sleef. | 14 // implementation available at http://freshmeat.net/projects/sleef. |
15 // The README file says, "The software is in public domain. | 15 // The README file says, "The software is in public domain. |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 isZero: // return (±0.0, 1.0) | 136 isZero: // return (±0.0, 1.0) |
137 MOVQ BX, sin+8(FP) | 137 MOVQ BX, sin+8(FP) |
138 MOVQ $PosOne, AX | 138 MOVQ $PosOne, AX |
139 MOVQ AX, cos+16(FP) | 139 MOVQ AX, cos+16(FP) |
140 RET | 140 RET |
141 isInfOrNaN: // return (NaN, NaN) | 141 isInfOrNaN: // return (NaN, NaN) |
142 MOVQ $NaN, AX | 142 MOVQ $NaN, AX |
143 MOVQ AX, sin+8(FP) | 143 MOVQ AX, sin+8(FP) |
144 MOVQ AX, cos+16(FP) | 144 MOVQ AX, cos+16(FP) |
145 RET | 145 RET |
LEFT | RIGHT |