]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile: remove special handling for OpRISCV64SUBW in markUnsafePoints
authorJoel Sing <joel@sing.id.au>
Mon, 9 Mar 2020 16:27:44 +0000 (03:27 +1100)
committerJoel Sing <joel@sing.id.au>
Tue, 10 Mar 2020 16:25:09 +0000 (16:25 +0000)
Due to improved optimisation, we no longer emit SUBW for the write barrier
checks on riscv64, hence remove special handling in markUnsafePoints.

Change-Id: Ia1150c3e11f25e183735e58f8716a511d9e90fb3
Reviewed-on: https://go-review.googlesource.com/c/go/+/222638
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/compile/internal/gc/plive.go

index f8f7de0a9511cd22780a8703ed838f6c2f662ea4..845b2bd724f772ae8c17138bbab5bd5d1f3b800e 100644 (file)
@@ -705,12 +705,6 @@ func (lv *Liveness) markUnsafePoints() {
                                        v = v.Args[0]
                                        continue
                                }
-                       case ssa.OpRISCV64SUBW:
-                               // RISCV64 lowers Neq32 to include a SUBW with multiple arguments.
-                               // TODO(jsing): it would be preferable not to use Neq32 for
-                               // writeBuffer.enabled checks on this platform.
-                               v = v.Args[0]
-                               continue
                        case ssa.Op386MOVLload, ssa.OpARM64MOVWUload, ssa.OpPPC64MOVWZload, ssa.OpWasmI64Load32U:
                                // Args[0] is the address of the write
                                // barrier control. Ignore Args[1],