mirror of
				https://github.com/golang/go.git
				synced 2025-10-31 16:50:58 +00:00 
			
		
		
		
	runtime: remove thunk.s
Replace with uses of //go:linkname in Go files, direct use of name in .s files. The only one that really truly needs a jump is reflect.call; the jump is now next to the runtime.reflectcall assembly implementations. Change-Id: Ie7ff3020a8f60a8e4c8645fe236e7883a3f23f46 Reviewed-on: https://go-review.googlesource.com/1962 Reviewed-by: Austin Clements <austin@google.com>
This commit is contained in:
		
							parent
							
								
									200e7bf6b1
								
							
						
					
					
						commit
						7a524a1036
					
				
					 28 changed files with 177 additions and 238 deletions
				
			
		|  | @ -387,6 +387,11 @@ func newobject(typ *_type) unsafe.Pointer { | |||
| 	return mallocgc(uintptr(typ.size), typ, flags) | ||||
| } | ||||
| 
 | ||||
| //go:linkname reflect_unsafe_New reflect.unsafe_New | ||||
| func reflect_unsafe_New(typ *_type) unsafe.Pointer { | ||||
| 	return newobject(typ) | ||||
| } | ||||
| 
 | ||||
| // implementation of make builtin for slices | ||||
| func newarray(typ *_type, n uintptr) unsafe.Pointer { | ||||
| 	flags := uint32(0) | ||||
|  | @ -399,6 +404,11 @@ func newarray(typ *_type, n uintptr) unsafe.Pointer { | |||
| 	return mallocgc(uintptr(typ.size)*n, typ, flags) | ||||
| } | ||||
| 
 | ||||
| //go:linkname reflect_unsafe_NewArray reflect.unsafe_NewArray | ||||
| func reflect_unsafe_NewArray(typ *_type, n uintptr) unsafe.Pointer { | ||||
| 	return newarray(typ, n) | ||||
| } | ||||
| 
 | ||||
| // rawmem returns a chunk of pointerless memory.  It is | ||||
| // not zeroed. | ||||
| func rawmem(size uintptr) unsafe.Pointer { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Russ Cox
						Russ Cox