// Code generated by command: go run asm.go -out bdoor_amd64.s -arch amd64. DO NOT EDIT.

// +build gc

#include "textflag.h"

// func bdoor_inout(ax uint64, bx uint64, cx uint64, dx uint64, si uint64, di uint64, bp uint64) (retax uint64, retbx uint64, retcx uint64, retdx uint64, retsi uint64, retdi uint64, retbp uint64)
TEXT ·bdoor_inout(SB), NOSPLIT|WRAPPER, $0-112
	MOVQ ax+0(FP), AX
	MOVQ bx+8(FP), BX
	MOVQ cx+16(FP), CX
	MOVQ dx+24(FP), DX
	MOVQ si+32(FP), SI
	MOVQ di+40(FP), DI
	MOVQ bp+48(FP), BP

	// IN to DX from AX
	INL
	MOVQ AX, retax+56(FP)
	MOVQ BX, retbx+64(FP)
	MOVQ CX, retcx+72(FP)
	MOVQ DX, retdx+80(FP)
	MOVQ SI, retsi+88(FP)
	MOVQ DI, retdi+96(FP)
	MOVQ BP, retbp+104(FP)
	RET

// func bdoor_hbout(ax uint64, bx uint64, cx uint64, dx uint64, si uint64, di uint64, bp uint64) (retax uint64, retbx uint64, retcx uint64, retdx uint64, retsi uint64, retdi uint64, retbp uint64)
TEXT ·bdoor_hbout(SB), NOSPLIT|WRAPPER, $0-112
	MOVQ ax+0(FP), AX
	MOVQ bx+8(FP), BX
	MOVQ cx+16(FP), CX
	MOVQ dx+24(FP), DX
	MOVQ si+32(FP), SI
	MOVQ di+40(FP), DI
	MOVQ bp+48(FP), BP
	CLD
	REP
	OUTSB
	MOVQ AX, retax+56(FP)
	MOVQ BX, retbx+64(FP)
	MOVQ CX, retcx+72(FP)
	MOVQ DX, retdx+80(FP)
	MOVQ SI, retsi+88(FP)
	MOVQ DI, retdi+96(FP)
	MOVQ BP, retbp+104(FP)
	RET

// func bdoor_hbin(ax uint64, bx uint64, cx uint64, dx uint64, si uint64, di uint64, bp uint64) (retax uint64, retbx uint64, retcx uint64, retdx uint64, retsi uint64, retdi uint64, retbp uint64)
TEXT ·bdoor_hbin(SB), NOSPLIT|WRAPPER, $0-112
	MOVQ ax+0(FP), AX
	MOVQ bx+8(FP), BX
	MOVQ cx+16(FP), CX
	MOVQ dx+24(FP), DX
	MOVQ si+32(FP), SI
	MOVQ di+40(FP), DI
	MOVQ bp+48(FP), BP
	CLD
	REP
	INSB
	MOVQ AX, retax+56(FP)
	MOVQ BX, retbx+64(FP)
	MOVQ CX, retcx+72(FP)
	MOVQ DX, retdx+80(FP)
	MOVQ SI, retsi+88(FP)
	MOVQ DI, retdi+96(FP)
	MOVQ BP, retbp+104(FP)
	RET

// func bdoor_inout_test(ax uint64, bx uint64, cx uint64, dx uint64, si uint64, di uint64, bp uint64) (retax uint64, retbx uint64, retcx uint64, retdx uint64, retsi uint64, retdi uint64, retbp uint64)
TEXT ·bdoor_inout_test(SB), NOSPLIT|WRAPPER, $0-112
	MOVQ ax+0(FP), AX
	MOVQ bx+8(FP), BX
	MOVQ cx+16(FP), CX
	MOVQ dx+24(FP), DX
	MOVQ si+32(FP), SI
	MOVQ di+40(FP), DI
	MOVQ bp+48(FP), BP
	MOVQ AX, retax+56(FP)
	MOVQ BX, retbx+64(FP)
	MOVQ CX, retcx+72(FP)
	MOVQ DX, retdx+80(FP)
	MOVQ SI, retsi+88(FP)
	MOVQ DI, retdi+96(FP)
	MOVQ BP, retbp+104(FP)
	RET
