Change information
Commit message:
cmd/internal/sys,internal/goarch,runtime: enable the use of compressed instructions on riscv64
Enable the use of compressed instructions on riscv64 by reducing
the PC quantum to two bytes and reducing the minimum instruction
length to two bytes. Change gostartcall on riscv64 to land at
two times the PC quantum into goexit, so that we retain four byte
alignment and revise the NOP instructions in goexit to ensure that
they are never compressed. Additionally, adjust PCALIGN so that it
correctly handles two byte offsets.
Fixes #47560
Updates #71105
Cq-Include-Trybots: luci.golang.try:gotip-linux-riscv64
Change-Id: I4329a8fbfcb4de636aadaeadabb826bc22698640
Files:
- M src/cmd/internal/obj/riscv/obj.go
- M src/cmd/internal/sys/arch.go
- M src/internal/goarch/goarch_riscv64.go
- M src/runtime/asm_riscv64.s
- M src/runtime/sys_riscv64.go
Change size: S
Delta: 5 files changed, 25 insertions(+), 11 deletions(-)
Branch: refs/heads/master
Submit Requirements:
Code-Review: +1 by Mark Freeman, +2 by Mark Ryan, +1 by Junyang Shao
TryBots-Pass: LUCI-TryBot-Result+1 by Go LUCI