Asm veneers examples
====================


1. no args on stack (a1-a3 used)
--------------------------------

function

; push link register and a4 (r3) because we need to shuffle the registers
; to slot the method code into a3 (r2)

	STMFD	sp!,{lr,a3}
	
; shuffle registers

	MOV	a4,a4
	MOV	a3,#Method_ReasonCode
	SWI	Toolbox_ObjectMiscOp
	BVS	%FT99
	.
	.
	.

; pull registers from stack

99	LDMFD	sp!,{lr,a3}



2. no args on stack (a1-a4 used)
--------------------------------

function

; push link register onto stack and v1 (r4) because we need to shuffle
; the registers to slot the method code into a3 (r2)

	STMFD	sp!,{lr,v1}
	
; shuffle registers

	MOV	v1,a4
	MOV	a4,a3
	MOV	a3,#Method_ReasonCode
	SWI	Toolbox_ObjectMiscOp
	BVS	%FT99
	.
	.
	.

; pull registers from stack

99	LDMFD	sp!,{lr,v1}
				
	