github.com/afumu/libc@v0.0.6/musl/src/signal/powerpc64/sigsetjmp.s (about)

     1  	.global sigsetjmp
     2  	.global __sigsetjmp
     3  	.type sigsetjmp,%function
     4  	.type __sigsetjmp,%function
     5  	.hidden __setjmp_toc
     6  sigsetjmp:
     7  __sigsetjmp:
     8  	addis 2, 12, .TOC.-__sigsetjmp@ha
     9  	addi  2,  2, .TOC.-__sigsetjmp@l
    10  	ld    5, 24(1)   # load from the TOC slot in the caller's stack frame
    11  	b     1f
    12  
    13  	.localentry sigsetjmp,.-sigsetjmp
    14  	.localentry __sigsetjmp,.-__sigsetjmp
    15  	mr    5,  2
    16  
    17  1:
    18  	cmpwi cr7, 4, 0
    19  	beq-  cr7, __setjmp_toc
    20  
    21  	mflr  6
    22  	std   6, 512(3)
    23  	std   2, 512+16(3)
    24  	std  16, 512+24(3)
    25  	mr   16, 3
    26  
    27  	bl __setjmp_toc
    28  
    29  	mr   4,  3
    30  	mr   3, 16
    31  	ld   5, 512(3)
    32  	mtlr 5
    33  	ld   2, 512+16(3)
    34  	ld  16, 512+24(3)
    35  
    36  .hidden __sigsetjmp_tail
    37  	b __sigsetjmp_tail