• Russ Cox's avatar
    runtime: ,s/[a-zA-Z0-9_]+/runtime·&/g, almost · 68b4255a
    Russ Cox authored
    Prefix all external symbols in runtime by runtime·,
    to avoid conflicts with possible symbols of the same
    name in linked-in C libraries.  The obvious conflicts
    are printf, malloc, and free, but hide everything to
    avoid future pain.
    
    The symbols left alone are:
    
    	** known to cgo **
    	_cgo_free
    	_cgo_malloc
    	libcgo_thread_start
    	initcgo
    	ncgocall
    
    	** known to linker **
    	_rt0_$GOARCH
    	_rt0_$GOARCH_$GOOS
    	text
    	etext
    	data
    	end
    	pclntab
    	epclntab
    	symtab
    	esymtab
    
    	** known to C compiler **
    	_divv
    	_modv
    	_div64by32
    	etc (arch specific)
    
    Tested on darwin/386, darwin/amd64, linux/386, linux/amd64.
    
    Built (but not tested) for freebsd/386, freebsd/amd64, linux/arm, windows/386.
    
    R=r, PeterGo
    CC=golang-dev
    https://golang.org/cl/2899041
    68b4255a
rt0.s 205 Bytes