Text file
src/cmd/dist/vfp_arm.s
1 // Copyright 2015 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 //go:build gc
6 // +build gc
7
8 #include "textflag.h"
9
10 // try to run "vmov.f64 d0, d0" instruction
11 TEXT ·useVFPv1(SB),NOSPLIT,$0
12 WORD $0xeeb00b40 // vmov.f64 d0, d0
13 RET
14
15 // try to run VFPv3-only "vmov.f64 d0, #112" instruction
16 TEXT ·useVFPv3(SB),NOSPLIT,$0
17 WORD $0xeeb70b00 // vmov.f64 d0, #112
18 RET
19
20 // try to run ARMv6K (or above) "ldrexd" instruction
21 TEXT ·useARMv6K(SB),NOSPLIT,$32
22 MOVW R13, R2
23 BIC $15, R13
24 WORD $0xe1bd0f9f // ldrexd r0, r1, [sp]
25 WORD $0xf57ff01f // clrex
26 MOVW R2, R13
27 RET
28
View as plain text