]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: make reflectcall ABI0 on amd64
authorMichael Anthony Knyszek <mknyszek@google.com>
Fri, 2 Apr 2021 20:46:35 +0000 (20:46 +0000)
committerMichael Knyszek <mknyszek@google.com>
Tue, 6 Apr 2021 03:31:38 +0000 (03:31 +0000)
reflectcall expects the ABI0 calling convention, but it's marked as
ABIInternal. When it gets called this way, naturally it doesn't work
very well.

For #40724.

Change-Id: Ic76237420cd8c72f5df1c1ac7972ad6f989f8402
Reviewed-on: https://go-review.googlesource.com/c/go/+/306931
Trust: Michael Knyszek <mknyszek@google.com>
Run-TryBot: Michael Knyszek <mknyszek@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/runtime/asm_amd64.s

index dbe7f7f38185fa23bd40810ea83a973006bb4336..c245fce7ef4b9de7c8f4344f10be18144475e4c9 100644 (file)
@@ -550,7 +550,7 @@ TEXT ·unspillArgs<ABIInternal>(SB),NOSPLIT,$0-0
        JMP     AX
 // Note: can't just "JMP NAME(SB)" - bad inlining results.
 
-TEXT ·reflectcall<ABIInternal>(SB), NOSPLIT, $0-48
+TEXT ·reflectcall(SB), NOSPLIT, $0-48
        MOVLQZX frameSize+32(FP), CX
        DISPATCH(runtime·call16, 16)
        DISPATCH(runtime·call32, 32)