diff options
| author | Lynn Boger <laboger@linux.vnet.ibm.com> | 2018-10-22 16:02:43 -0400 |
|---|---|---|
| committer | Lynn Boger <laboger@linux.vnet.ibm.com> | 2018-10-23 20:25:29 +0000 |
| commit | e41fbc79ccfedc5bf4d07356c20de0731bd9cfd9 (patch) | |
| tree | 13b417879ccf5bbd3a0197f56dac447b383aacad /src/runtime/asm_ppc64x.s | |
| parent | 6994731ec2babb6a4f2bbbb08dbe649767a25942 (diff) | |
| download | go-e41fbc79ccfedc5bf4d07356c20de0731bd9cfd9.tar.xz | |
runtime: use unsigned load for iscgo variable in ppc64x runtime asm
This changes the runtime asm code that loads iscgo to use MOVBZ
instead of MOVB, avoiding an unnecessary sign extension. This is most
significant in runtime.save_g, reducing the size from 8 to 7
instructions.
Change-Id: Iaa2121464b5309e1f27fd91b19b5603c7aaf619d
Reviewed-on: https://go-review.googlesource.com/c/144217
Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: David Chase <drchase@google.com>
Diffstat (limited to 'src/runtime/asm_ppc64x.s')
| -rw-r--r-- | src/runtime/asm_ppc64x.s | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/asm_ppc64x.s b/src/runtime/asm_ppc64x.s index e77c717935..87076817f9 100644 --- a/src/runtime/asm_ppc64x.s +++ b/src/runtime/asm_ppc64x.s @@ -648,7 +648,7 @@ TEXT ·cgocallback_gofunc(SB),NOSPLIT,$16-32 NO_LOCAL_POINTERS // Load m and g from thread-local storage. - MOVB runtime·iscgo(SB), R3 + MOVBZ runtime·iscgo(SB), R3 CMP R3, $0 BEQ nocgo BL runtime·load_g(SB) |
