mirror of
https://github.com/golang/go
synced 2024-11-17 12:44:49 -07:00
runtime: mark race functions as ABIInternal
This adds ABIInternal to the race function declarations. Change-Id: I99f8a310972ff09b4d56eedbcc6e9609bab0f224 Reviewed-on: https://go-review.googlesource.com/c/go/+/352369 Trust: Lynn Boger <laboger@linux.vnet.ibm.com> Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com>
This commit is contained in:
parent
ecac3512e5
commit
40fce515f9
@ -43,8 +43,12 @@
|
||||
|
||||
// func runtime·RaceRead(addr uintptr)
|
||||
// Called from instrumented Go code
|
||||
TEXT runtime·raceread(SB), NOSPLIT, $0-8
|
||||
TEXT runtime·raceread<ABIInternal>(SB), NOSPLIT, $0-8
|
||||
#ifndef GOEXPERIMENT_regabiargs
|
||||
MOVD addr+0(FP), R4
|
||||
#else
|
||||
MOVD R3, R4
|
||||
#endif
|
||||
MOVD LR, R5 // caller of this?
|
||||
// void __tsan_read(ThreadState *thr, void *addr, void *pc);
|
||||
MOVD $__tsan_read(SB), R8
|
||||
@ -64,8 +68,12 @@ TEXT runtime·racereadpc(SB), NOSPLIT, $0-24
|
||||
|
||||
// func runtime·RaceWrite(addr uintptr)
|
||||
// Called from instrumented Go code
|
||||
TEXT runtime·racewrite(SB), NOSPLIT, $0-8
|
||||
TEXT runtime·racewrite<ABIInternal>(SB), NOSPLIT, $0-8
|
||||
#ifndef GOEXPERIMENT_regabiargs
|
||||
MOVD addr+0(FP), R4
|
||||
#else
|
||||
MOVD R3, R4
|
||||
#endif
|
||||
MOVD LR, R5 // caller has set LR via BL inst
|
||||
// void __tsan_write(ThreadState *thr, void *addr, void *pc);
|
||||
MOVD $__tsan_write(SB), R8
|
||||
@ -85,9 +93,14 @@ TEXT runtime·racewritepc(SB), NOSPLIT, $0-24
|
||||
|
||||
// func runtime·RaceReadRange(addr, size uintptr)
|
||||
// Called from instrumented Go code.
|
||||
TEXT runtime·racereadrange(SB), NOSPLIT, $0-16
|
||||
TEXT runtime·racereadrange<ABIInternal>(SB), NOSPLIT, $0-16
|
||||
#ifndef GOEXPERIMENT_regabiargs
|
||||
MOVD addr+0(FP), R4
|
||||
MOVD size+8(FP), R5
|
||||
#else
|
||||
MOVD R4, R5
|
||||
MOVD R3, R4
|
||||
#endif
|
||||
MOVD LR, R6
|
||||
// void __tsan_read_range(ThreadState *thr, void *addr, uintptr size, void *pc);
|
||||
MOVD $__tsan_read_range(SB), R8
|
||||
@ -108,9 +121,14 @@ TEXT runtime·RaceReadRange(SB), NOSPLIT, $0-16
|
||||
|
||||
// func runtime·RaceWriteRange(addr, size uintptr)
|
||||
// Called from instrumented Go code.
|
||||
TEXT runtime·racewriterange(SB), NOSPLIT, $0-16
|
||||
TEXT runtime·racewriterange<ABIInternal>(SB), NOSPLIT, $0-16
|
||||
#ifndef GOEXPERIMENT_regabiargs
|
||||
MOVD addr+0(FP), R4
|
||||
MOVD size+8(FP), R5
|
||||
#else
|
||||
MOVD R4, R5
|
||||
MOVD R3, R4
|
||||
#endif
|
||||
MOVD LR, R6
|
||||
// void __tsan_write_range(ThreadState *thr, void *addr, uintptr size, void *pc);
|
||||
MOVD $__tsan_write_range(SB), R8
|
||||
|
Loading…
Reference in New Issue
Block a user