golang.org/x/sys@v0.20.1-0.20240517151509-673e0f94c16d/cpu/cpu_arm64.s (about)

     1  // Copyright 2019 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  
     7  #include "textflag.h"
     8  
     9  // func getisar0() uint64
    10  TEXT ·getisar0(SB),NOSPLIT,$0-8
    11  	// get Instruction Set Attributes 0 into x0
    12  	// mrs x0, ID_AA64ISAR0_EL1 = d5380600
    13  	WORD	$0xd5380600
    14  	MOVD	R0, ret+0(FP)
    15  	RET
    16  
    17  // func getisar1() uint64
    18  TEXT ·getisar1(SB),NOSPLIT,$0-8
    19  	// get Instruction Set Attributes 1 into x0
    20  	// mrs x0, ID_AA64ISAR1_EL1 = d5380620
    21  	WORD	$0xd5380620
    22  	MOVD	R0, ret+0(FP)
    23  	RET
    24  
    25  // func getpfr0() uint64
    26  TEXT ·getpfr0(SB),NOSPLIT,$0-8
    27  	// get Processor Feature Register 0 into x0
    28  	// mrs x0, ID_AA64PFR0_EL1 = d5380400
    29  	WORD	$0xd5380400
    30  	MOVD	R0, ret+0(FP)
    31  	RET
    32  
    33  // func getzfr0() uint64
    34  TEXT ·getzfr0(SB),NOSPLIT,$0-8
    35  	// get SVE Feature Register 0 into x0
    36  	// mrs	x0, ID_AA64ZFR0_EL1 = d5380480
    37  	WORD $0xd5380480
    38  	MOVD	R0, ret+0(FP)
    39  	RET