LEFT | RIGHT |
(no file at all) | |
1 // Copyright 2012 The Go Authors. All rights reserved. | 1 // Copyright 2012 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 // func hasAsm() bool | 7 // func hasAsm() bool |
8 // returns whether AES-NI is supported | 8 // returns whether AES-NI is supported |
9 TEXT ·hasAsm(SB),NOSPLIT,$0 | 9 TEXT ·hasAsm(SB),NOSPLIT,$0 |
10 XORQ AX, AX | 10 XORQ AX, AX |
11 INCL AX | 11 INCL AX |
12 CPUID | 12 CPUID |
13 SHRQ $25, CX | 13 SHRQ $25, CX |
14 ANDQ $1, CX | 14 ANDQ $1, CX |
15 MOVB CX, ret+0(FP) | 15 MOVB CX, ret+0(FP) |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 PSHUFD $0xaa, X1, X1 | 280 PSHUFD $0xaa, X1, X1 |
281 SHUFPS $0x10, X2, X4 | 281 SHUFPS $0x10, X2, X4 |
282 PXOR X4, X2 | 282 PXOR X4, X2 |
283 SHUFPS $0x8c, X2, X4 | 283 SHUFPS $0x8c, X2, X4 |
284 PXOR X4, X2 | 284 PXOR X4, X2 |
285 PXOR X1, X2 | 285 PXOR X1, X2 |
286 | 286 |
287 MOVUPS X2, (BX) | 287 MOVUPS X2, (BX) |
288 ADDQ $16, BX | 288 ADDQ $16, BX |
289 RET | 289 RET |
LEFT | RIGHT |