mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
// Copyright 2012 The Go Authors. All rights reserved.
 | 
						|
// Use of this source code is governed by a BSD-style
 | 
						|
// license that can be found in the LICENSE file.
 | 
						|
 | 
						|
// +build amd64,!gccgo,!appengine
 | 
						|
 | 
						|
// func cswap(inout *[4][5]uint64, v uint64)
 | 
						|
TEXT ·cswap(SB),7,$0
 | 
						|
	MOVQ inout+0(FP),DI
 | 
						|
	MOVQ v+8(FP),SI
 | 
						|
 | 
						|
	SUBQ $1, SI
 | 
						|
	NOTQ SI
 | 
						|
	MOVQ SI, X15
 | 
						|
	PSHUFD $0x44, X15, X15
 | 
						|
 | 
						|
	MOVOU 0(DI), X0
 | 
						|
	MOVOU 16(DI), X2
 | 
						|
	MOVOU 32(DI), X4
 | 
						|
	MOVOU 48(DI), X6
 | 
						|
	MOVOU 64(DI), X8
 | 
						|
	MOVOU 80(DI), X1
 | 
						|
	MOVOU 96(DI), X3
 | 
						|
	MOVOU 112(DI), X5
 | 
						|
	MOVOU 128(DI), X7
 | 
						|
	MOVOU 144(DI), X9
 | 
						|
 | 
						|
	MOVO X1, X10
 | 
						|
	MOVO X3, X11
 | 
						|
	MOVO X5, X12
 | 
						|
	MOVO X7, X13
 | 
						|
	MOVO X9, X14
 | 
						|
 | 
						|
	PXOR X0, X10
 | 
						|
	PXOR X2, X11
 | 
						|
	PXOR X4, X12
 | 
						|
	PXOR X6, X13
 | 
						|
	PXOR X8, X14
 | 
						|
	PAND X15, X10
 | 
						|
	PAND X15, X11
 | 
						|
	PAND X15, X12
 | 
						|
	PAND X15, X13
 | 
						|
	PAND X15, X14
 | 
						|
	PXOR X10, X0
 | 
						|
	PXOR X10, X1
 | 
						|
	PXOR X11, X2
 | 
						|
	PXOR X11, X3
 | 
						|
	PXOR X12, X4
 | 
						|
	PXOR X12, X5
 | 
						|
	PXOR X13, X6
 | 
						|
	PXOR X13, X7
 | 
						|
	PXOR X14, X8
 | 
						|
	PXOR X14, X9
 | 
						|
 | 
						|
	MOVOU X0, 0(DI)
 | 
						|
	MOVOU X2, 16(DI)
 | 
						|
	MOVOU X4, 32(DI)
 | 
						|
	MOVOU X6, 48(DI)
 | 
						|
	MOVOU X8, 64(DI)
 | 
						|
	MOVOU X1, 80(DI)
 | 
						|
	MOVOU X3, 96(DI)
 | 
						|
	MOVOU X5, 112(DI)
 | 
						|
	MOVOU X7, 128(DI)
 | 
						|
	MOVOU X9, 144(DI)
 | 
						|
	RET
 |