diff options
| author | Keith Randall <khr@golang.org> | 2022-11-01 14:18:09 -0700 |
|---|---|---|
| committer | Keith Randall <khr@golang.org> | 2023-02-17 22:21:22 +0000 |
| commit | d49719b1f75ea745937bdbc09ae5927c5378780b (patch) | |
| tree | 1e68379c42183f99f70986129d2a75c6adcfb6f2 /src/runtime/asm_arm.s | |
| parent | d3daeb5267b626db36adf2f39c36f6caf94447e3 (diff) | |
| download | go-d49719b1f75ea745937bdbc09ae5927c5378780b.tar.xz | |
cmd/compile: move raw writes out of write barrier code
Previously, the write barrier calls themselves did the actual
writes to memory. Instead, move those writes out to a common location
that both the wb-enabled and wb-disabled code paths share.
This enables us to optimize the write barrier path without having
to worry about performing the actual writes.
Change-Id: Ia71ab651908ec124cc33141afb52e4ca19733ac6
Reviewed-on: https://go-review.googlesource.com/c/go/+/447780
Reviewed-by: Michael Knyszek <mknyszek@google.com>
TryBot-Bypass: Keith Randall <khr@golang.org>
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Diffstat (limited to 'src/runtime/asm_arm.s')
| -rw-r--r-- | src/runtime/asm_arm.s | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/runtime/asm_arm.s b/src/runtime/asm_arm.s index 40a6e47792..3cabe748cd 100644 --- a/src/runtime/asm_arm.s +++ b/src/runtime/asm_arm.s @@ -899,8 +899,6 @@ retry: MOVW (R2), R0 // TODO: This turns bad writes into bad reads. MOVW R0, -4(R1) // Record *slot MOVM.IA.W (R13), [R0,R1] - // Do the write. - MOVW R3, (R2) RET flush: |
