CACAO
Macros
md-asm.hpp File Reference

Go to the source code of this file.

Macros

#define res1   r0 /* result registers */
 
#define res2   r1
 
#define a0   r0 /* argument registers */
 
#define a1   r1
 
#define a2   r2
 
#define a3   r3
 
#define v1   r4 /* variable registers */
 
#define v2   r5
 
#define v3   r6
 
#define v4   r7
 
#define v5   r8
 
#define v6   r9
 
#define v7   r10
 
#define v8   r11
 
#define pc   r15 /* program counter */
 
#define lr   r14 /* return address */
 
#define sp   r13 /* stack pointer */
 
#define ip   r12 /* something like pv */
 
#define fp   r11 /* frame pointer (not used) */
 
#define itmp1   v7 /* temporary scratch regs */
 
#define itmp2   v8
 
#define itmp3   v6
 
#define mptr   v8
 
#define xptr   itmp1 /* exception registers */
 
#define xpc   itmp2
 
#define SAVE_ARGUMENT_REGISTERS   stmfd sp!, {a0,a1,a2,a3,lr}
 
#define SAVE_ARGUMENT_REGISTERS_IP   stmfd sp!, {a0,a1,a2,a3,ip,lr}
 
#define SAVE_FLOAT_REGISTERS
 
#define SAVE_SCRATCH_REGISTERS   stmfd sp!, {itmp3,itmp1,itmp2,lr}
 
#define RESTORE_ARGUMENT_REGISTERS   ldmfd sp!, {a0,a1,a2,a3,lr}
 
#define RESTORE_ARGUMENT_REGISTERS_IP   ldmfd sp!, {a0,a1,a2,a3,ip,lr}
 
#define RESTORE_FLOAT_REGISTERS
 
#define RESTORE_SCRATCH_REGS_AND_RETURN   ldmfd sp!, {itmp3,itmp1,itmp2,pc}
 

Macro Definition Documentation

#define a0   r0 /* argument registers */

Definition at line 42 of file md-asm.hpp.

#define a1   r1

Definition at line 43 of file md-asm.hpp.

#define a2   r2

Definition at line 44 of file md-asm.hpp.

#define a3   r3

Definition at line 45 of file md-asm.hpp.

#define fp   r11 /* frame pointer (not used) */

Definition at line 60 of file md-asm.hpp.

#define ip   r12 /* something like pv */

Definition at line 59 of file md-asm.hpp.

#define itmp1   v7 /* temporary scratch regs */

Definition at line 62 of file md-asm.hpp.

#define itmp2   v8

Definition at line 63 of file md-asm.hpp.

#define itmp3   v6

Definition at line 64 of file md-asm.hpp.

#define lr   r14 /* return address */

Definition at line 57 of file md-asm.hpp.

#define mptr   v8

Definition at line 66 of file md-asm.hpp.

#define pc   r15 /* program counter */

Definition at line 56 of file md-asm.hpp.

#define res1   r0 /* result registers */

Definition at line 39 of file md-asm.hpp.

#define res2   r1

Definition at line 40 of file md-asm.hpp.

#define RESTORE_ARGUMENT_REGISTERS   ldmfd sp!, {a0,a1,a2,a3,lr}

Definition at line 92 of file md-asm.hpp.

#define RESTORE_ARGUMENT_REGISTERS_IP   ldmfd sp!, {a0,a1,a2,a3,ip,lr}

Definition at line 95 of file md-asm.hpp.

#define RESTORE_FLOAT_REGISTERS
Value:
lfmfd f4, 4, [sp]!; \
lfmfd f0, 4, [sp]!
#define sp
Definition: md-asm.hpp:58

Definition at line 101 of file md-asm.hpp.

#define RESTORE_SCRATCH_REGS_AND_RETURN   ldmfd sp!, {itmp3,itmp1,itmp2,pc}

Definition at line 106 of file md-asm.hpp.

#define SAVE_ARGUMENT_REGISTERS   stmfd sp!, {a0,a1,a2,a3,lr}

Definition at line 74 of file md-asm.hpp.

#define SAVE_ARGUMENT_REGISTERS_IP   stmfd sp!, {a0,a1,a2,a3,ip,lr}

Definition at line 77 of file md-asm.hpp.

#define SAVE_FLOAT_REGISTERS
Value:
sfmfd f0, 4, [sp]!; \
sfmfd f4, 4, [sp]!
#define sp
Definition: md-asm.hpp:58

Definition at line 83 of file md-asm.hpp.

#define SAVE_SCRATCH_REGISTERS   stmfd sp!, {itmp3,itmp1,itmp2,lr}

Definition at line 88 of file md-asm.hpp.

#define sp   r13 /* stack pointer */

Definition at line 58 of file md-asm.hpp.

#define v1   r4 /* variable registers */

Definition at line 47 of file md-asm.hpp.

#define v2   r5

Definition at line 48 of file md-asm.hpp.

#define v3   r6

Definition at line 49 of file md-asm.hpp.

#define v4   r7

Definition at line 50 of file md-asm.hpp.

#define v5   r8

Definition at line 51 of file md-asm.hpp.

#define v6   r9

Definition at line 52 of file md-asm.hpp.

#define v7   r10

Definition at line 53 of file md-asm.hpp.

#define v8   r11

Definition at line 54 of file md-asm.hpp.

#define xpc   itmp2

Definition at line 69 of file md-asm.hpp.

#define xptr   itmp1 /* exception registers */

Definition at line 68 of file md-asm.hpp.