github.com/xushiwei/go@v0.0.0-20130601165731-2b9d83f45bc9/src/pkg/runtime/rt0_plan9_386.s (about)

     1  // Copyright 2010 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  TEXT _rt0_386_plan9(SB),7, $0
     6  	MOVL	AX, _tos(SB)
     7  	
     8  	// move arguments down to make room for
     9  	// m and g at top of stack, right before Tos.
    10  	MOVL	SP, SI
    11  	SUBL	$8, SP
    12  	MOVL	SP, DI
    13  		
    14  	MOVL	AX, CX
    15  	SUBL	SI, CX
    16  	CLD
    17  	REP; MOVSB
    18  	
    19  	// adjust argv
    20  	SUBL	SI, DI
    21  	MOVL	newargc+0(SP), CX
    22  	LEAL	newargv+4(SP), BP
    23  argv_fix:
    24  	ADDL	DI, 0(BP)
    25  	ADDL	$4, BP
    26  	LOOP	argv_fix
    27  	
    28  	CALL	runtime·asminit(SB)
    29  
    30  	MOVL	0(SP), AX
    31  	LEAL	4(SP), BX
    32  	PUSHL	BX
    33  	PUSHL	AX
    34  	PUSHL	$-1
    35  
    36  	JMP	_rt0_386(SB)
    37  
    38  DATA  runtime·isplan9(SB)/4, $1
    39  GLOBL runtime·isplan9(SB), $4
    40  GLOBL _tos(SB), $4