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 <austin@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
#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)