...

Text file src/runtime/rt0_linux_ppc64.s

     1	#include "textflag.h"
     2	
     3	// actually a function descriptor for _main<>(SB)
     4	TEXT _rt0_ppc64_linux(SB),NOSPLIT,$0
     5		DWORD $_main<>(SB)
     6		DWORD $0
     7		DWORD $0
     8	
     9	TEXT main(SB),NOSPLIT,$0
    10		DWORD $_main<>(SB)
    11		DWORD $0
    12		DWORD $0
    13	
    14	TEXT _main<>(SB),NOSPLIT,$-8
    15		// In a statically linked binary, the stack contains argc,
    16		// argv as argc string pointers followed by a NULL, envv as a
    17		// sequence of string pointers followed by a NULL, and auxv.
    18		// There is no TLS base pointer.
    19		//
    20		// TODO(austin): Support ABI v1 dynamic linking entry point
    21		MOVD	$runtime·rt0_go(SB), R12
    22		MOVD	R12, CTR
    23		MOVBZ	runtime·iscgo(SB), R5
    24		CMP	R5, $0
    25		BEQ	nocgo
    26		BR	(CTR)
    27	nocgo:
    28		MOVD	0(R1), R3 // argc
    29		ADD	$8, R1, R4 // argv
    30		BR	(CTR)

View as plain text