mirror of https://github.com/gogits/gogs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
88 lines
1.5 KiB
88 lines
1.5 KiB
// 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. |
|
|
|
// This code was translated into a form compatible with 6a from the public |
|
// domain sources in SUPERCOP: http://bench.cr.yp.to/supercop.html |
|
|
|
// +build amd64,!gccgo,!appengine |
|
|
|
// func cswap(inout *[5]uint64, v uint64) |
|
TEXT ยทcswap(SB),7,$0 |
|
MOVQ inout+0(FP),DI |
|
MOVQ v+8(FP),SI |
|
|
|
CMPQ SI,$1 |
|
MOVQ 0(DI),SI |
|
MOVQ 80(DI),DX |
|
MOVQ 8(DI),CX |
|
MOVQ 88(DI),R8 |
|
MOVQ SI,R9 |
|
CMOVQEQ DX,SI |
|
CMOVQEQ R9,DX |
|
MOVQ CX,R9 |
|
CMOVQEQ R8,CX |
|
CMOVQEQ R9,R8 |
|
MOVQ SI,0(DI) |
|
MOVQ DX,80(DI) |
|
MOVQ CX,8(DI) |
|
MOVQ R8,88(DI) |
|
MOVQ 16(DI),SI |
|
MOVQ 96(DI),DX |
|
MOVQ 24(DI),CX |
|
MOVQ 104(DI),R8 |
|
MOVQ SI,R9 |
|
CMOVQEQ DX,SI |
|
CMOVQEQ R9,DX |
|
MOVQ CX,R9 |
|
CMOVQEQ R8,CX |
|
CMOVQEQ R9,R8 |
|
MOVQ SI,16(DI) |
|
MOVQ DX,96(DI) |
|
MOVQ CX,24(DI) |
|
MOVQ R8,104(DI) |
|
MOVQ 32(DI),SI |
|
MOVQ 112(DI),DX |
|
MOVQ 40(DI),CX |
|
MOVQ 120(DI),R8 |
|
MOVQ SI,R9 |
|
CMOVQEQ DX,SI |
|
CMOVQEQ R9,DX |
|
MOVQ CX,R9 |
|
CMOVQEQ R8,CX |
|
CMOVQEQ R9,R8 |
|
MOVQ SI,32(DI) |
|
MOVQ DX,112(DI) |
|
MOVQ CX,40(DI) |
|
MOVQ R8,120(DI) |
|
MOVQ 48(DI),SI |
|
MOVQ 128(DI),DX |
|
MOVQ 56(DI),CX |
|
MOVQ 136(DI),R8 |
|
MOVQ SI,R9 |
|
CMOVQEQ DX,SI |
|
CMOVQEQ R9,DX |
|
MOVQ CX,R9 |
|
CMOVQEQ R8,CX |
|
CMOVQEQ R9,R8 |
|
MOVQ SI,48(DI) |
|
MOVQ DX,128(DI) |
|
MOVQ CX,56(DI) |
|
MOVQ R8,136(DI) |
|
MOVQ 64(DI),SI |
|
MOVQ 144(DI),DX |
|
MOVQ 72(DI),CX |
|
MOVQ 152(DI),R8 |
|
MOVQ SI,R9 |
|
CMOVQEQ DX,SI |
|
CMOVQEQ R9,DX |
|
MOVQ CX,R9 |
|
CMOVQEQ R8,CX |
|
CMOVQEQ R9,R8 |
|
MOVQ SI,64(DI) |
|
MOVQ DX,144(DI) |
|
MOVQ CX,72(DI) |
|
MOVQ R8,152(DI) |
|
MOVQ DI,AX |
|
MOVQ SI,DX |
|
RET
|
|
|