summaryrefslogtreecommitdiff
path: root/src/cmd
diff options
context:
space:
mode:
authorFannie Zhang <Fannie.Zhang@arm.com>2022-03-16 12:08:54 +0000
committerFannie Zhang <Fannie.Zhang@arm.com>2022-03-17 08:43:15 +0000
commit599d5395ebb41eb17bbe77e75d12ed0d13294767 (patch)
tree79ed22f7612417f4af6538a7f527d187f7fd1cdf /src/cmd
parent9956a5423e40bab92c572489eae26ba80ed803ab (diff)
downloadgo-git-599d5395ebb41eb17bbe77e75d12ed0d13294767.tar.gz
Revert "cmd/compile: set conversions to unsafe.Pointer as an escaping operation when -asan is enabled"
This reverts commit 5fd0ed7aaf39f783ea6f505a3f2ac7d9da7cb03b. Reason for revert: <The internal information in commit message is not removed.> Change-Id: Id6845a9c8114ac71c56a1007a4d133a560a37fbc Reviewed-on: https://go-review.googlesource.com/c/go/+/393314 Trust: Fannie Zhang <Fannie.Zhang@arm.com> Reviewed-by: Eric Fang <eric.fang@arm.com>
Diffstat (limited to 'src/cmd')
-rw-r--r--src/cmd/compile/internal/escape/expr.go6
-rw-r--r--src/cmd/compile/internal/ir/expr.go6
2 files changed, 3 insertions, 9 deletions
diff --git a/src/cmd/compile/internal/escape/expr.go b/src/cmd/compile/internal/escape/expr.go
index 9c3e09d10d..ced90a47bc 100644
--- a/src/cmd/compile/internal/escape/expr.go
+++ b/src/cmd/compile/internal/escape/expr.go
@@ -100,9 +100,9 @@ func (e *escape) exprSkipInit(k hole, n ir.Node) {
case ir.OCONV, ir.OCONVNOP:
n := n.(*ir.ConvExpr)
- if (ir.ShouldCheckPtr(e.curfn, 2) || ir.ShouldAsanCheckPtr(e.curfn)) && n.Type().IsUnsafePtr() && n.X.Type().IsPtr() {
- // When -d=checkptr=2 or -asan is enabled,
- // treat conversions to unsafe.Pointer as an
+ if ir.ShouldCheckPtr(e.curfn, 2) && n.Type().IsUnsafePtr() && n.X.Type().IsPtr() {
+ // When -d=checkptr=2 is enabled, treat
+ // conversions to unsafe.Pointer as an
// escaping operation. This allows better
// runtime instrumentation, since we can more
// easily detect object boundaries on the heap
diff --git a/src/cmd/compile/internal/ir/expr.go b/src/cmd/compile/internal/ir/expr.go
index ff3cc8ed6e..8823115612 100644
--- a/src/cmd/compile/internal/ir/expr.go
+++ b/src/cmd/compile/internal/ir/expr.go
@@ -1036,12 +1036,6 @@ func ShouldCheckPtr(fn *Func, level int) bool {
return base.Debug.Checkptr >= level && fn.Pragma&NoCheckPtr == 0
}
-// ShouldAsanCheckPtr reports whether pointer checking should be enabled for
-// function fn when -asan is enabled.
-func ShouldAsanCheckPtr(fn *Func) bool {
- return base.Flag.ASan && fn.Pragma&NoCheckPtr == 0
-}
-
// IsReflectHeaderDataField reports whether l is an expression p.Data
// where p has type reflect.SliceHeader or reflect.StringHeader.
func IsReflectHeaderDataField(l Node) bool {