.explicit .global esym .altmacro .macro begin n, attr .section .&n, attr, @progbits .align 16 _&n: .endm .macro end n .align 16 _e&n: .endm .macro m1 op, opnd1 .align 16 op opnd1 _e&op - _&op .endm .macro m2 op, opnd1 .align 16 op opnd1 @pcrel(esym) .endm .macro m3 op, opnd1 .align 16 op opnd1 esym - _&op .endm .macro m4 op, opnd1 .align 16 op opnd1 esym - . .endm .macro m5 op, opnd1 .align 16 op opnd1 esym - _e&op .endm .macro m6 op, opnd1 .align 16 op opnd1 0 .endm begin mov, "ax" m1 mov, r2 = ;; m2 mov, r2 = ;; m3 mov, r2 = ;; m4 mov, r2 = ;; m5 mov, r2 = ;; m6 mov, r2 = ;; end mov begin movl, "ax" m1 movl, r2 = ;; m2 movl, r2 = ;; m3 movl, r2 = ;; m4 movl, r2 = ;; m5 movl, r2 = ;; m6 movl, r2 = ;; end movl begin data8, "a" m1 data8 m2 data8 m3 data8 m4 data8 m5 data8 m6 data8 end data8 begin data4, "a" m1 data4 m2 data4 m3 data4 m4 data4 m5 data4 m6 data4 end data4