#include "textflag.h"
TEXT runtime·res_init_trampoline(SB),NOSPLIT,$0
- PUSHL BP
- MOVL SP, BP
- SUBL $8, SP
- CALL libc_res_init(SB)
- CMPL AX, $-1
- JNE ok
- CALL libc_error(SB)
+ PUSHL BP
+ MOVL SP, BP
+ SUBL $8, SP
+ CALL libc_res_init(SB)
+ CMPL AX, $-1
+ JNE ok
+ CALL libc_error(SB)
ok:
- MOVL BP, SP
- POPL BP
- RET
+ MOVL BP, SP
+ POPL BP
+ RET
TEXT runtime·res_search_trampoline(SB),NOSPLIT,$0
- PUSHL BP
- MOVL SP, BP
- SUBL $24, SP
- MOVL 32(SP), CX
- MOVL 16(CX), AX // arg 5 anslen
- MOVL AX, 16(SP)
- MOVL 12(CX), AX // arg 4 answer
- MOVL AX, 12(SP)
- MOVL 8(CX), AX // arg 3 type
- MOVL AX, 8(SP)
- MOVL 4(CX), AX // arg 2 class
- MOVL AX, 4(SP)
- MOVL 0(CX), AX // arg 1 name
- MOVL AX, 0(SP)
- CALL libc_res_search(SB)
- XORL DX, DX
- CMPL AX, $-1
- JNE ok
- CALL libc_error(SB)
- MOVL (AX), DX
- XORL AX, AX
+ PUSHL BP
+ MOVL SP, BP
+ SUBL $24, SP
+ MOVL 32(SP), CX
+ MOVL 16(CX), AX // arg 5 anslen
+ MOVL AX, 16(SP)
+ MOVL 12(CX), AX // arg 4 answer
+ MOVL AX, 12(SP)
+ MOVL 8(CX), AX // arg 3 type
+ MOVL AX, 8(SP)
+ MOVL 4(CX), AX // arg 2 class
+ MOVL AX, 4(SP)
+ MOVL 0(CX), AX // arg 1 name
+ MOVL AX, 0(SP)
+ CALL libc_res_search(SB)
+ XORL DX, DX
+ CMPL AX, $-1
+ JNE ok
+ CALL libc_error(SB)
+ MOVL (AX), DX
+ XORL AX, AX
ok:
- MOVL 32(SP), CX
- MOVL AX, 20(CX)
- MOVL DX, 24(CX)
- MOVL BP, SP
- POPL BP
- RET
+ MOVL 32(SP), CX
+ MOVL AX, 20(CX)
+ MOVL DX, 24(CX)
+ MOVL BP, SP
+ POPL BP
+ RET
#include "textflag.h"
TEXT runtime·res_init_trampoline(SB),NOSPLIT,$0
- PUSHQ BP
- MOVQ SP, BP
- CALL libc_res_init(SB)
- CMPQ AX, $-1
- JNE ok
- CALL libc_error(SB)
+ PUSHQ BP
+ MOVQ SP, BP
+ CALL libc_res_init(SB)
+ CMPQ AX, $-1
+ JNE ok
+ CALL libc_error(SB)
ok:
- POPQ BP
- RET
+ POPQ BP
+ RET
TEXT runtime·res_search_trampoline(SB),NOSPLIT,$0
- PUSHQ BP
- MOVQ SP, BP
- MOVQ DI, BX // move DI into BX to preserve struct addr
- MOVL 24(BX), R8 // arg 5 anslen
- MOVQ 16(BX), CX // arg 4 answer
- MOVL 12(BX), DX // arg 3 type
- MOVL 8(BX), SI // arg 2 class
- MOVQ 0(BX), DI // arg 1 name
- CALL libc_res_search(SB)
- XORL DX, DX
- CMPQ AX, $-1
- JNE ok
- CALL libc_error(SB)
- MOVLQSX (AX), DX // move return from libc_error into DX
- XORL AX, AX // size on error is 0
+ PUSHQ BP
+ MOVQ SP, BP
+ MOVQ DI, BX // move DI into BX to preserve struct addr
+ MOVL 24(BX), R8 // arg 5 anslen
+ MOVQ 16(BX), CX // arg 4 answer
+ MOVL 12(BX), DX // arg 3 type
+ MOVL 8(BX), SI // arg 2 class
+ MOVQ 0(BX), DI // arg 1 name
+ CALL libc_res_search(SB)
+ XORL DX, DX
+ CMPQ AX, $-1
+ JNE ok
+ CALL libc_error(SB)
+ MOVLQSX (AX), DX // move return from libc_error into DX
+ XORL AX, AX // size on error is 0
ok:
- MOVL AX, 28(BX) // size
- MOVL DX, 32(BX) // error code
- POPQ BP
- RET
+ MOVL AX, 28(BX) // size
+ MOVL DX, 32(BX) // error code
+ POPQ BP
+ RET