File: //usr/lib/bcc/rules.net
# Rules for optimizing BCC assembler output
# Rules for converting short number from host to network order
push word %[#|*]0%1
call __htons
inc sp
inc sp
=
mov ax,#((%1 & $00FF) << 8) + ((%1 & $FF00) >> 8)
mov ax,%[#|*]0%1
push ax
call __htons
inc sp
inc sp
=
mov ax,#((%1 & $00FF) << 8) + ((%1 & $FF00) >> 8)
push %0[%1]
call __htons
inc sp
inc sp
=
mov ax,%0[%1]
xchg al,ah
push ax
call __htons
inc sp
inc sp
=
xchg al,ah
push %[bx|cx|dx]1
call __htons
inc sp
inc sp
=
mov ax,%1
xchg al,ah