.pg .x mulq .x mulq3 .lt ------------------------------------------------------------------------ MULQ mutliplier,product MULQ3 multiplier,multipland,product ------------------------------------------------------------------------ .el .b 3 These macros perform quadword multiplication. .b These macros will produce inline code to perform quadword multiplication. After the multiplication is performed, r0 will contain the following values: .b .lt -1 if product < 0 0 if product = 0 1 if product > 0 .el .b The MULQ macro is equivalent to the expression: .b .lt product = multiplier * product .el .b and the MULQ3 macro is equivalent to the expression: .b .lt product = multiplier * multipland .el .b For example: .b .lt mulq3 multiplier,multipland,product .el .b will produce the following code: .b .lt emul multiplier,multipland,#0,product mull3 4+multiplier,multipland,r0 mull3 multiplier,4+multipland,r1 mull r1,r0 tstl multiplier bgeq 30001$ mull multipland,r0 30001$: tstl multipland bgeq 30002$ mull multiplier,r0 30002$: mull r0,4+product tstl 4+product blss 30003$ bgtr 30004$ tstl product bnequ 30004$ clrl r0 brb 30005$ 30003$: movl #-1,r0 brb 30005$ 30004$: movl #1,r0 30005$: .el .b See also ADDQ, ADDQ3, CMPQ, DIVQ4, SUBQ, SUBQ3 and TSTQ.