github.com/primecitizens/pcz/std@v0.2.1/core/yield/asm_arm.s (about)

     1  // SPDX-License-Identifier: Apache-2.0
     2  // Copyright 2023 The Prime Citizens
     3  //
     4  // Copyright 2018 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 arm
     9  
    10  #include "textflag.h"
    11  
    12  TEXT ·Proc(SB),NOSPLIT|NOFRAME,$0
    13  	MOVW cycles+0(FP), R1
    14  	MOVW $0, R0
    15  LOOP:
    16  	WORD $0xe320f001 // YIELD (NOP pre-ARMv6K)
    17  	CMP R0, R1
    18  	B.NE 2(PC)
    19  	RET
    20  	SUB $1, R1
    21  	B LOOP