forked from toolshed/abra
		
	
		
			
				
	
	
		
			2792 lines
		
	
	
		
			54 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			2792 lines
		
	
	
		
			54 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
| // Code generated by command: go run blamka_amd64.go -out ../blamka_amd64.s -pkg argon2. DO NOT EDIT.
 | |
| 
 | |
| //go:build amd64 && gc && !purego
 | |
| 
 | |
| #include "textflag.h"
 | |
| 
 | |
| // func blamkaSSE4(b *block)
 | |
| // Requires: SSE2, SSSE3
 | |
| TEXT ·blamkaSSE4(SB), NOSPLIT, $0-8
 | |
| 	MOVQ       b+0(FP), AX
 | |
| 	MOVOU      ·c40<>+0(SB), X10
 | |
| 	MOVOU      ·c48<>+0(SB), X11
 | |
| 	MOVOU      (AX), X0
 | |
| 	MOVOU      16(AX), X1
 | |
| 	MOVOU      32(AX), X2
 | |
| 	MOVOU      48(AX), X3
 | |
| 	MOVOU      64(AX), X4
 | |
| 	MOVOU      80(AX), X5
 | |
| 	MOVOU      96(AX), X6
 | |
| 	MOVOU      112(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, (AX)
 | |
| 	MOVOU      X1, 16(AX)
 | |
| 	MOVOU      X2, 32(AX)
 | |
| 	MOVOU      X3, 48(AX)
 | |
| 	MOVOU      X4, 64(AX)
 | |
| 	MOVOU      X5, 80(AX)
 | |
| 	MOVOU      X6, 96(AX)
 | |
| 	MOVOU      X7, 112(AX)
 | |
| 	MOVOU      128(AX), X0
 | |
| 	MOVOU      144(AX), X1
 | |
| 	MOVOU      160(AX), X2
 | |
| 	MOVOU      176(AX), X3
 | |
| 	MOVOU      192(AX), X4
 | |
| 	MOVOU      208(AX), X5
 | |
| 	MOVOU      224(AX), X6
 | |
| 	MOVOU      240(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 128(AX)
 | |
| 	MOVOU      X1, 144(AX)
 | |
| 	MOVOU      X2, 160(AX)
 | |
| 	MOVOU      X3, 176(AX)
 | |
| 	MOVOU      X4, 192(AX)
 | |
| 	MOVOU      X5, 208(AX)
 | |
| 	MOVOU      X6, 224(AX)
 | |
| 	MOVOU      X7, 240(AX)
 | |
| 	MOVOU      256(AX), X0
 | |
| 	MOVOU      272(AX), X1
 | |
| 	MOVOU      288(AX), X2
 | |
| 	MOVOU      304(AX), X3
 | |
| 	MOVOU      320(AX), X4
 | |
| 	MOVOU      336(AX), X5
 | |
| 	MOVOU      352(AX), X6
 | |
| 	MOVOU      368(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 256(AX)
 | |
| 	MOVOU      X1, 272(AX)
 | |
| 	MOVOU      X2, 288(AX)
 | |
| 	MOVOU      X3, 304(AX)
 | |
| 	MOVOU      X4, 320(AX)
 | |
| 	MOVOU      X5, 336(AX)
 | |
| 	MOVOU      X6, 352(AX)
 | |
| 	MOVOU      X7, 368(AX)
 | |
| 	MOVOU      384(AX), X0
 | |
| 	MOVOU      400(AX), X1
 | |
| 	MOVOU      416(AX), X2
 | |
| 	MOVOU      432(AX), X3
 | |
| 	MOVOU      448(AX), X4
 | |
| 	MOVOU      464(AX), X5
 | |
| 	MOVOU      480(AX), X6
 | |
| 	MOVOU      496(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 384(AX)
 | |
| 	MOVOU      X1, 400(AX)
 | |
| 	MOVOU      X2, 416(AX)
 | |
| 	MOVOU      X3, 432(AX)
 | |
| 	MOVOU      X4, 448(AX)
 | |
| 	MOVOU      X5, 464(AX)
 | |
| 	MOVOU      X6, 480(AX)
 | |
| 	MOVOU      X7, 496(AX)
 | |
| 	MOVOU      512(AX), X0
 | |
| 	MOVOU      528(AX), X1
 | |
| 	MOVOU      544(AX), X2
 | |
| 	MOVOU      560(AX), X3
 | |
| 	MOVOU      576(AX), X4
 | |
| 	MOVOU      592(AX), X5
 | |
| 	MOVOU      608(AX), X6
 | |
| 	MOVOU      624(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 512(AX)
 | |
| 	MOVOU      X1, 528(AX)
 | |
| 	MOVOU      X2, 544(AX)
 | |
| 	MOVOU      X3, 560(AX)
 | |
| 	MOVOU      X4, 576(AX)
 | |
| 	MOVOU      X5, 592(AX)
 | |
| 	MOVOU      X6, 608(AX)
 | |
| 	MOVOU      X7, 624(AX)
 | |
| 	MOVOU      640(AX), X0
 | |
| 	MOVOU      656(AX), X1
 | |
| 	MOVOU      672(AX), X2
 | |
| 	MOVOU      688(AX), X3
 | |
| 	MOVOU      704(AX), X4
 | |
| 	MOVOU      720(AX), X5
 | |
| 	MOVOU      736(AX), X6
 | |
| 	MOVOU      752(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 640(AX)
 | |
| 	MOVOU      X1, 656(AX)
 | |
| 	MOVOU      X2, 672(AX)
 | |
| 	MOVOU      X3, 688(AX)
 | |
| 	MOVOU      X4, 704(AX)
 | |
| 	MOVOU      X5, 720(AX)
 | |
| 	MOVOU      X6, 736(AX)
 | |
| 	MOVOU      X7, 752(AX)
 | |
| 	MOVOU      768(AX), X0
 | |
| 	MOVOU      784(AX), X1
 | |
| 	MOVOU      800(AX), X2
 | |
| 	MOVOU      816(AX), X3
 | |
| 	MOVOU      832(AX), X4
 | |
| 	MOVOU      848(AX), X5
 | |
| 	MOVOU      864(AX), X6
 | |
| 	MOVOU      880(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 768(AX)
 | |
| 	MOVOU      X1, 784(AX)
 | |
| 	MOVOU      X2, 800(AX)
 | |
| 	MOVOU      X3, 816(AX)
 | |
| 	MOVOU      X4, 832(AX)
 | |
| 	MOVOU      X5, 848(AX)
 | |
| 	MOVOU      X6, 864(AX)
 | |
| 	MOVOU      X7, 880(AX)
 | |
| 	MOVOU      896(AX), X0
 | |
| 	MOVOU      912(AX), X1
 | |
| 	MOVOU      928(AX), X2
 | |
| 	MOVOU      944(AX), X3
 | |
| 	MOVOU      960(AX), X4
 | |
| 	MOVOU      976(AX), X5
 | |
| 	MOVOU      992(AX), X6
 | |
| 	MOVOU      1008(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 896(AX)
 | |
| 	MOVOU      X1, 912(AX)
 | |
| 	MOVOU      X2, 928(AX)
 | |
| 	MOVOU      X3, 944(AX)
 | |
| 	MOVOU      X4, 960(AX)
 | |
| 	MOVOU      X5, 976(AX)
 | |
| 	MOVOU      X6, 992(AX)
 | |
| 	MOVOU      X7, 1008(AX)
 | |
| 	MOVOU      (AX), X0
 | |
| 	MOVOU      128(AX), X1
 | |
| 	MOVOU      256(AX), X2
 | |
| 	MOVOU      384(AX), X3
 | |
| 	MOVOU      512(AX), X4
 | |
| 	MOVOU      640(AX), X5
 | |
| 	MOVOU      768(AX), X6
 | |
| 	MOVOU      896(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, (AX)
 | |
| 	MOVOU      X1, 128(AX)
 | |
| 	MOVOU      X2, 256(AX)
 | |
| 	MOVOU      X3, 384(AX)
 | |
| 	MOVOU      X4, 512(AX)
 | |
| 	MOVOU      X5, 640(AX)
 | |
| 	MOVOU      X6, 768(AX)
 | |
| 	MOVOU      X7, 896(AX)
 | |
| 	MOVOU      16(AX), X0
 | |
| 	MOVOU      144(AX), X1
 | |
| 	MOVOU      272(AX), X2
 | |
| 	MOVOU      400(AX), X3
 | |
| 	MOVOU      528(AX), X4
 | |
| 	MOVOU      656(AX), X5
 | |
| 	MOVOU      784(AX), X6
 | |
| 	MOVOU      912(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 16(AX)
 | |
| 	MOVOU      X1, 144(AX)
 | |
| 	MOVOU      X2, 272(AX)
 | |
| 	MOVOU      X3, 400(AX)
 | |
| 	MOVOU      X4, 528(AX)
 | |
| 	MOVOU      X5, 656(AX)
 | |
| 	MOVOU      X6, 784(AX)
 | |
| 	MOVOU      X7, 912(AX)
 | |
| 	MOVOU      32(AX), X0
 | |
| 	MOVOU      160(AX), X1
 | |
| 	MOVOU      288(AX), X2
 | |
| 	MOVOU      416(AX), X3
 | |
| 	MOVOU      544(AX), X4
 | |
| 	MOVOU      672(AX), X5
 | |
| 	MOVOU      800(AX), X6
 | |
| 	MOVOU      928(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 32(AX)
 | |
| 	MOVOU      X1, 160(AX)
 | |
| 	MOVOU      X2, 288(AX)
 | |
| 	MOVOU      X3, 416(AX)
 | |
| 	MOVOU      X4, 544(AX)
 | |
| 	MOVOU      X5, 672(AX)
 | |
| 	MOVOU      X6, 800(AX)
 | |
| 	MOVOU      X7, 928(AX)
 | |
| 	MOVOU      48(AX), X0
 | |
| 	MOVOU      176(AX), X1
 | |
| 	MOVOU      304(AX), X2
 | |
| 	MOVOU      432(AX), X3
 | |
| 	MOVOU      560(AX), X4
 | |
| 	MOVOU      688(AX), X5
 | |
| 	MOVOU      816(AX), X6
 | |
| 	MOVOU      944(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 48(AX)
 | |
| 	MOVOU      X1, 176(AX)
 | |
| 	MOVOU      X2, 304(AX)
 | |
| 	MOVOU      X3, 432(AX)
 | |
| 	MOVOU      X4, 560(AX)
 | |
| 	MOVOU      X5, 688(AX)
 | |
| 	MOVOU      X6, 816(AX)
 | |
| 	MOVOU      X7, 944(AX)
 | |
| 	MOVOU      64(AX), X0
 | |
| 	MOVOU      192(AX), X1
 | |
| 	MOVOU      320(AX), X2
 | |
| 	MOVOU      448(AX), X3
 | |
| 	MOVOU      576(AX), X4
 | |
| 	MOVOU      704(AX), X5
 | |
| 	MOVOU      832(AX), X6
 | |
| 	MOVOU      960(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 64(AX)
 | |
| 	MOVOU      X1, 192(AX)
 | |
| 	MOVOU      X2, 320(AX)
 | |
| 	MOVOU      X3, 448(AX)
 | |
| 	MOVOU      X4, 576(AX)
 | |
| 	MOVOU      X5, 704(AX)
 | |
| 	MOVOU      X6, 832(AX)
 | |
| 	MOVOU      X7, 960(AX)
 | |
| 	MOVOU      80(AX), X0
 | |
| 	MOVOU      208(AX), X1
 | |
| 	MOVOU      336(AX), X2
 | |
| 	MOVOU      464(AX), X3
 | |
| 	MOVOU      592(AX), X4
 | |
| 	MOVOU      720(AX), X5
 | |
| 	MOVOU      848(AX), X6
 | |
| 	MOVOU      976(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 80(AX)
 | |
| 	MOVOU      X1, 208(AX)
 | |
| 	MOVOU      X2, 336(AX)
 | |
| 	MOVOU      X3, 464(AX)
 | |
| 	MOVOU      X4, 592(AX)
 | |
| 	MOVOU      X5, 720(AX)
 | |
| 	MOVOU      X6, 848(AX)
 | |
| 	MOVOU      X7, 976(AX)
 | |
| 	MOVOU      96(AX), X0
 | |
| 	MOVOU      224(AX), X1
 | |
| 	MOVOU      352(AX), X2
 | |
| 	MOVOU      480(AX), X3
 | |
| 	MOVOU      608(AX), X4
 | |
| 	MOVOU      736(AX), X5
 | |
| 	MOVOU      864(AX), X6
 | |
| 	MOVOU      992(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 96(AX)
 | |
| 	MOVOU      X1, 224(AX)
 | |
| 	MOVOU      X2, 352(AX)
 | |
| 	MOVOU      X3, 480(AX)
 | |
| 	MOVOU      X4, 608(AX)
 | |
| 	MOVOU      X5, 736(AX)
 | |
| 	MOVOU      X6, 864(AX)
 | |
| 	MOVOU      X7, 992(AX)
 | |
| 	MOVOU      112(AX), X0
 | |
| 	MOVOU      240(AX), X1
 | |
| 	MOVOU      368(AX), X2
 | |
| 	MOVOU      496(AX), X3
 | |
| 	MOVOU      624(AX), X4
 | |
| 	MOVOU      752(AX), X5
 | |
| 	MOVOU      880(AX), X6
 | |
| 	MOVOU      1008(AX), X7
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKLQDQ X6, X9
 | |
| 	PUNPCKHQDQ X7, X6
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	MOVO       X8, X7
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFD     $0xb1, X6, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	PSHUFB     X10, X2
 | |
| 	MOVO       X0, X8
 | |
| 	PMULULQ    X2, X8
 | |
| 	PADDQ      X2, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PADDQ      X8, X0
 | |
| 	PXOR       X0, X6
 | |
| 	PSHUFB     X11, X6
 | |
| 	MOVO       X4, X8
 | |
| 	PMULULQ    X6, X8
 | |
| 	PADDQ      X6, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PADDQ      X8, X4
 | |
| 	PXOR       X4, X2
 | |
| 	MOVO       X2, X8
 | |
| 	PADDQ      X2, X8
 | |
| 	PSRLQ      $0x3f, X2
 | |
| 	PXOR       X8, X2
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFD     $0xb1, X7, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	PSHUFB     X10, X3
 | |
| 	MOVO       X1, X8
 | |
| 	PMULULQ    X3, X8
 | |
| 	PADDQ      X3, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PADDQ      X8, X1
 | |
| 	PXOR       X1, X7
 | |
| 	PSHUFB     X11, X7
 | |
| 	MOVO       X5, X8
 | |
| 	PMULULQ    X7, X8
 | |
| 	PADDQ      X7, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PADDQ      X8, X5
 | |
| 	PXOR       X5, X3
 | |
| 	MOVO       X3, X8
 | |
| 	PADDQ      X3, X8
 | |
| 	PSRLQ      $0x3f, X3
 | |
| 	PXOR       X8, X3
 | |
| 	MOVO       X4, X8
 | |
| 	MOVO       X5, X4
 | |
| 	MOVO       X8, X5
 | |
| 	MOVO       X2, X8
 | |
| 	PUNPCKLQDQ X2, X9
 | |
| 	PUNPCKHQDQ X3, X2
 | |
| 	PUNPCKHQDQ X9, X2
 | |
| 	PUNPCKLQDQ X3, X9
 | |
| 	MOVO       X8, X3
 | |
| 	MOVO       X6, X8
 | |
| 	PUNPCKHQDQ X9, X3
 | |
| 	PUNPCKLQDQ X7, X9
 | |
| 	PUNPCKHQDQ X9, X6
 | |
| 	PUNPCKLQDQ X8, X9
 | |
| 	PUNPCKHQDQ X9, X7
 | |
| 	MOVOU      X0, 112(AX)
 | |
| 	MOVOU      X1, 240(AX)
 | |
| 	MOVOU      X2, 368(AX)
 | |
| 	MOVOU      X3, 496(AX)
 | |
| 	MOVOU      X4, 624(AX)
 | |
| 	MOVOU      X5, 752(AX)
 | |
| 	MOVOU      X6, 880(AX)
 | |
| 	MOVOU      X7, 1008(AX)
 | |
| 	RET
 | |
| 
 | |
| DATA ·c40<>+0(SB)/8, $0x0201000706050403
 | |
| DATA ·c40<>+8(SB)/8, $0x0a09080f0e0d0c0b
 | |
| GLOBL ·c40<>(SB), RODATA|NOPTR, $16
 | |
| 
 | |
| DATA ·c48<>+0(SB)/8, $0x0100070605040302
 | |
| DATA ·c48<>+8(SB)/8, $0x09080f0e0d0c0b0a
 | |
| GLOBL ·c48<>(SB), RODATA|NOPTR, $16
 | |
| 
 | |
| // func mixBlocksSSE2(out *block, a *block, b *block, c *block)
 | |
| // Requires: SSE2
 | |
| TEXT ·mixBlocksSSE2(SB), NOSPLIT, $0-32
 | |
| 	MOVQ out+0(FP), DX
 | |
| 	MOVQ a+8(FP), AX
 | |
| 	MOVQ b+16(FP), BX
 | |
| 	MOVQ c+24(FP), CX
 | |
| 	MOVQ $0x00000080, DI
 | |
| 
 | |
| loop:
 | |
| 	MOVOU (AX), X0
 | |
| 	MOVOU (BX), X1
 | |
| 	MOVOU (CX), X2
 | |
| 	PXOR  X1, X0
 | |
| 	PXOR  X2, X0
 | |
| 	MOVOU X0, (DX)
 | |
| 	ADDQ  $0x10, AX
 | |
| 	ADDQ  $0x10, BX
 | |
| 	ADDQ  $0x10, CX
 | |
| 	ADDQ  $0x10, DX
 | |
| 	SUBQ  $0x02, DI
 | |
| 	JA    loop
 | |
| 	RET
 | |
| 
 | |
| // func xorBlocksSSE2(out *block, a *block, b *block, c *block)
 | |
| // Requires: SSE2
 | |
| TEXT ·xorBlocksSSE2(SB), NOSPLIT, $0-32
 | |
| 	MOVQ out+0(FP), DX
 | |
| 	MOVQ a+8(FP), AX
 | |
| 	MOVQ b+16(FP), BX
 | |
| 	MOVQ c+24(FP), CX
 | |
| 	MOVQ $0x00000080, DI
 | |
| 
 | |
| loop:
 | |
| 	MOVOU (AX), X0
 | |
| 	MOVOU (BX), X1
 | |
| 	MOVOU (CX), X2
 | |
| 	MOVOU (DX), X3
 | |
| 	PXOR  X1, X0
 | |
| 	PXOR  X2, X0
 | |
| 	PXOR  X3, X0
 | |
| 	MOVOU X0, (DX)
 | |
| 	ADDQ  $0x10, AX
 | |
| 	ADDQ  $0x10, BX
 | |
| 	ADDQ  $0x10, CX
 | |
| 	ADDQ  $0x10, DX
 | |
| 	SUBQ  $0x02, DI
 | |
| 	JA    loop
 | |
| 	RET
 |