mirror of https://github.com/golang/go.git
cmd/compile/internal/pkginit: use typecheck.LookupRuntime for asan
Change-Id: Ie9c90aa4560c982902738659737ae125cfcb6ba9 Reviewed-on: https://go-review.googlesource.com/c/go/+/520397 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com> Auto-Submit: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
This commit is contained in:
parent
c8adb3004f
commit
48e05ee749
|
|
@ -123,14 +123,7 @@ func MakeTask() {
|
|||
|
||||
// Call runtime.asanregisterglobals function to poison redzones.
|
||||
// runtime.asanregisterglobals(unsafe.Pointer(&globals[0]), ni)
|
||||
//
|
||||
// TODO(mdempsky): Move into typecheck builtins.
|
||||
asanf := ir.NewFunc(src.NoXPos, src.NoXPos, ir.Pkgs.Runtime.Lookup("asanregisterglobals"),
|
||||
types.NewSignature(nil, []*types.Field{
|
||||
types.NewField(base.Pos, nil, types.Types[types.TUNSAFEPTR]),
|
||||
types.NewField(base.Pos, nil, types.Types[types.TUINTPTR]),
|
||||
}, nil))
|
||||
asancall := ir.NewCallExpr(base.Pos, ir.OCALL, asanf.Nname, nil)
|
||||
asancall := ir.NewCallExpr(base.Pos, ir.OCALL, typecheck.LookupRuntime("asanregisterglobals"), nil)
|
||||
asancall.Args.Append(typecheck.ConvNop(typecheck.NodAddr(
|
||||
ir.NewIndexExpr(base.Pos, globals, ir.NewInt(base.Pos, 0))), types.Types[types.TUNSAFEPTR]))
|
||||
asancall.Args.Append(typecheck.DefaultLit(ir.NewInt(base.Pos, int64(ni)), types.Types[types.TUINTPTR]))
|
||||
|
|
|
|||
|
|
@ -280,3 +280,5 @@ var x86HasSSE41 bool
|
|||
var x86HasFMA bool
|
||||
var armHasVFPv4 bool
|
||||
var arm64HasATOMICS bool
|
||||
|
||||
func asanregisterglobals(unsafe.Pointer, uintptr)
|
||||
|
|
|
|||
|
|
@ -231,6 +231,7 @@ var runtimeDecls = [...]struct {
|
|||
{"x86HasFMA", varTag, 6},
|
||||
{"armHasVFPv4", varTag, 6},
|
||||
{"arm64HasATOMICS", varTag, 6},
|
||||
{"asanregisterglobals", funcTag, 122},
|
||||
}
|
||||
|
||||
func runtimeTypes() []*types.Type {
|
||||
|
|
|
|||
Loading…
Reference in New Issue