X7ROOT File Manager
Current Path:
/opt/golang/1.22.0/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm
opt
/
golang
/
1.22.0
/
src
/
cmd
/
vendor
/
golang.org
/
x
/
arch
/
arm64
/
arm64asm
/
📁
..
📄
arg.go
(19.96 KB)
📄
condition.go
(9.62 KB)
📄
condition_util.go
(1.42 KB)
📄
decode.go
(76.85 KB)
📄
gnu.go
(1.01 KB)
📄
inst.go
(21.46 KB)
📄
inst.json
(234.71 KB)
📄
plan9x.go
(17.01 KB)
📄
tables.go
(211.77 KB)
Editing: condition_util.go
// Copyright 2017 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. package arm64asm func extract_bit(value, bit uint32) uint32 { return (value >> bit) & 1 } func bfxpreferred_4(sf, opc1, imms, immr uint32) bool { if imms < immr { return false } if (imms>>5 == sf) && (imms&0x1f == 0x1f) { return false } if immr == 0 { if sf == 0 && (imms == 7 || imms == 15) { return false } if sf == 1 && opc1 == 0 && (imms == 7 || imms == 15 || imms == 31) { return false } } return true } func move_wide_preferred_4(sf, N, imms, immr uint32) bool { if sf == 1 && N != 1 { return false } if sf == 0 && !(N == 0 && ((imms>>5)&1) == 0) { return false } if imms < 16 { return (-immr)%16 <= (15 - imms) } width := uint32(32) if sf == 1 { width = uint32(64) } if imms >= (width - 15) { return (immr % 16) <= (imms - (width - 15)) } return false } type sys uint8 const ( sys_AT sys = iota sys_DC sys_IC sys_TLBI sys_SYS ) func sys_op_4(op1, crn, crm, op2 uint32) sys { sysInst := sysInstFields{uint8(op1), uint8(crn), uint8(crm), uint8(op2)} return sysInst.getType() } func is_zero(x uint32) bool { return x == 0 } func is_ones_n16(x uint32) bool { return x == 0xffff } func bit_count(x uint32) uint8 { var count uint8 for count = 0; x > 0; x >>= 1 { if (x & 1) == 1 { count++ } } return count }
Upload File
Create Folder