From 531f1d50cc15c95822d189d039a9bfe47ff70099 Mon Sep 17 00:00:00 2001 From: Maya Rashish Date: Sun, 21 Apr 2019 14:48:28 +0000 Subject: [PATCH] syscall: avoid zeroing unused syscall arguments Zeroing unused registers is not required. Removing it makes the code very slightly smaller and very slightly faster. Change-Id: I1ec17b497db971ca8a3641e3e94c063571419f27 GitHub-Last-Rev: f721bb263637717e8ff9fd2c34148b5b2762e8c4 GitHub-Pull-Request: golang/go#31596 Reviewed-on: https://go-review.googlesource.com/c/go/+/173160 Reviewed-by: Ian Lance Taylor --- src/syscall/asm_darwin_amd64.s | 6 ------ src/syscall/asm_linux_amd64.s | 9 --------- src/syscall/asm_unix_amd64.s | 6 ------ 3 files changed, 21 deletions(-) diff --git a/src/syscall/asm_darwin_amd64.s b/src/syscall/asm_darwin_amd64.s index eab4fcdc06..c863889a71 100644 --- a/src/syscall/asm_darwin_amd64.s +++ b/src/syscall/asm_darwin_amd64.s @@ -17,9 +17,6 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry ADDQ $0x2000000, AX SYSCALL @@ -100,9 +97,6 @@ TEXT ·RawSyscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry ADDQ $0x2000000, AX SYSCALL diff --git a/src/syscall/asm_linux_amd64.s b/src/syscall/asm_linux_amd64.s index 364815df18..2c3374338f 100644 --- a/src/syscall/asm_linux_amd64.s +++ b/src/syscall/asm_linux_amd64.s @@ -19,9 +19,6 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry SYSCALL CMPQ AX, $0xfffffffffffff001 @@ -70,9 +67,6 @@ TEXT ·RawSyscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry SYSCALL CMPQ AX, $0xfffffffffffff001 @@ -139,9 +133,6 @@ TEXT ·rawSyscallNoError(SB),NOSPLIT,$0-48 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry SYSCALL MOVQ AX, r1+32(FP) diff --git a/src/syscall/asm_unix_amd64.s b/src/syscall/asm_unix_amd64.s index 025408f9e1..9cf3fe0d35 100644 --- a/src/syscall/asm_unix_amd64.s +++ b/src/syscall/asm_unix_amd64.s @@ -21,9 +21,6 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 SYSCALL JCC ok MOVQ $-1, r1+32(FP) // r1 @@ -65,9 +62,6 @@ TEXT ·RawSyscall(SB),NOSPLIT,$0-56 MOVQ a1+8(FP), DI MOVQ a2+16(FP), SI MOVQ a3+24(FP), DX - MOVQ $0, R10 - MOVQ $0, R8 - MOVQ $0, R9 MOVQ trap+0(FP), AX // syscall entry SYSCALL JCC ok1 -- 2.48.1