/
/
opt
/
golang
/
1.22.0
/
src
/
cmd
/
vendor
/
golang.org
/
x
/
arch
/
arm64
/
arm64asm
Server: in-mum-web1112.main-hosting.eu (62.72.28.111)
You: 216.73.216.60
PHP 8.3.16
Dir:
/opt/golang/1.22.0/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm
Edit:
/opt/golang/1.22.0/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/gnu.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 import ( "strings" ) // GNUSyntax returns the GNU assembler syntax for the instruction, as defined by GNU binutils. // This form typically matches the syntax defined in the ARM Reference Manual. func GNUSyntax(inst Inst) string { switch inst.Op { case RET: if r, ok := inst.Args[0].(Reg); ok && r == X30 { return "ret" } case B: if _, ok := inst.Args[0].(Cond); ok { return strings.ToLower("b." + inst.Args[0].String() + " " + inst.Args[1].String()) } case SYSL: result := strings.ToLower(inst.String()) return strings.Replace(result, "c", "C", -1) case DCPS1, DCPS2, DCPS3, CLREX: return strings.ToLower(strings.TrimSpace(inst.String())) case ISB: if strings.Contains(inst.String(), "SY") { result := strings.TrimSuffix(inst.String(), " SY") return strings.ToLower(result) } } return strings.ToLower(inst.String()) }
Ukuran: 1.0 KB