github.com/primecitizens/pcz/std@v0.2.1/core/debug/asm_arm64.s (about)

     1  // SPDX-License-Identifier: Apache-2.0
     2  // Copyright 2023 The Prime Citizens
     3  //
     4  // Copyright 2009 The Go Authors. All rights reserved.
     5  // Use of this source code is governed by a BSD-style
     6  // license that can be found in the LICENSE file.
     7  
     8  //go:build pcz && arm64
     9  
    10  #include "textflag.h"
    11  
    12  TEXT ·Breakpoint(SB),NOSPLIT|NOFRAME,$0-0
    13  // Windows ARM64 needs an immediate 0xf000 argument.
    14  // See go.dev/issues/53837.
    15  #ifdef GOOS_windows
    16  	BRK $0xf000
    17  #else
    18  	BRK
    19  #endif
    20  	RET
    21  
    22  TEXT ·Abort(SB),NOSPLIT|NOFRAME,$0-0
    23  	MOVD ZR, R0
    24  	MOVD (R0), R0
    25  	UNDEF
    26  
    27  TEXT ·Return0(SB), NOSPLIT, $0
    28  	MOVW $0, R0
    29  	RET
    30  
    31  TEXT ·GetCallerPC<ABIInternal>(SB),NOSPLIT|NOFRAME,$-8-0
    32  	MOVD 0(RSP), R0 // LR saved by caller
    33  	RET
    34  
    35  TEXT ·GetCallerSP<ABIInternal>(SB), NOSPLIT|NOFRAME, $0-0
    36  	MOVD $callersp-8(FP), R0
    37  	RET (R30)
    38  	
    39  TEXT ·GetClosurePtr<ABIInternal>(SB), NOSPLIT|NOFRAME, $0-0
    40  	MOVD R26, R0
    41  	RET (R30)