From: Austin Clements Date: Thu, 12 Oct 2017 01:51:30 +0000 (-0400) Subject: runtime: fix dragonfly/amd64 X-Git-Tag: go1.10beta1~751 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=58c7b1d160d87a86623b59237888e4ff1efb9a0f;p=gostls13.git runtime: fix dragonfly/amd64 CL 69292 unified the amd64 entry-points, but Dragonfly doesn't follow the same entry-point argument conventions as most other amd64 platforms. Fix the Dragonfly entry point. Change-Id: I0f84e2e4101ce68217af185ee9baaf455b8b6dad Reviewed-on: https://go-review.googlesource.com/70212 Run-TryBot: Austin Clements Reviewed-by: Ian Lance Taylor --- diff --git a/src/runtime/rt0_dragonfly_amd64.s b/src/runtime/rt0_dragonfly_amd64.s index 9f7a427d4d..e76f9b9b52 100644 --- a/src/runtime/rt0_dragonfly_amd64.s +++ b/src/runtime/rt0_dragonfly_amd64.s @@ -4,8 +4,11 @@ #include "textflag.h" +// On Dragonfly argc/argv are passed in DI, not SP, so we can't use _rt0_amd64. TEXT _rt0_amd64_dragonfly(SB),NOSPLIT,$-8 - JMP _rt0_amd64(SB) + LEAQ 8(DI), SI // argv + MOVQ 0(DI), DI // argc + JMP runtime·rt0_go(SB) TEXT _rt0_amd64_dragonfly_lib(SB),NOSPLIT,$0 JMP _rt0_amd64_lib(SB)