.toc .macro defabs,type,name,value \type \name \name = \value .endm .macro deffun,type,name,fn \type \name .csect \name\()[DS] \name\(): .if size == 32 .long .\name\()[PR],TOC[TC0],0 .else .llong .\name\()[PR],TOC[TC0],0 .endif .globl .\name .csect .\name\()[PR] .\name\(): nop .endm .macro defdata,type,name,contents \type \name .csect \name\()[RW] \name\(): .long \contents .endm defabs .globl,a1,0xf100 deffun .globl,a2 defdata .globl,a3,0x1100 defabs .globl,b1,0xf200 deffun .globl,b2 defdata .globl,b3,0x2200 defabs .weak,c1,0xf300 deffun .weak,c2 defdata .weak,c3,0x3300