]> Cypherpunks repositories - gostls13.git/commitdiff
reflect: call ABI0 callReflect/callMethod
authorCherry Zhang <cherryyz@google.com>
Sun, 4 Apr 2021 16:10:32 +0000 (12:10 -0400)
committerCherry Zhang <cherryyz@google.com>
Mon, 5 Apr 2021 22:43:42 +0000 (22:43 +0000)
Currently the assembly code marshals arguments in ABI0 layout.
Call the ABI0 functions. We may want to move to ABIInternal at
some point (maybe when register args is always enabled).

Updates #40724.

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

index 29693042b6473e4c0d3b580a3dd3443660eba8d2..22d95f2a7e1ada44adcf9623138a2713d1026dc0 100644 (file)
@@ -43,7 +43,7 @@ TEXT ·makeFuncStub<ABIInternal>(SB),(NOSPLIT|WRAPPER),$312
        MOVQ    AX, 16(SP)
        LEAQ    LOCAL_REGARGS(SP), AX
        MOVQ    AX, 24(SP)
-       CALL    ·callReflect<ABIInternal>(SB)
+       CALL    ·callReflect(SB)
        LEAQ    LOCAL_REGARGS(SP), R12
        CALL    runtime·unspillArgs<ABIInternal>(SB)
        RET
@@ -71,7 +71,7 @@ TEXT ·methodValueCall<ABIInternal>(SB),(NOSPLIT|WRAPPER),$312
        MOVQ    AX, 16(SP)
        LEAQ    LOCAL_REGARGS(SP), AX
        MOVQ    AX, 24(SP)
-       CALL    ·callMethod<ABIInternal>(SB)
+       CALL    ·callMethod(SB)
        LEAQ    LOCAL_REGARGS(SP), R12
        CALL    runtime·unspillArgs<ABIInternal>(SB)
        RET