TEXT mpdigdiv(SB),$0 MOVL dividend+0(FP),BX MOVL 0(BX),AX MOVL 4(BX),DX MOVL divisor+4(FP),BX MOVL quotient+8(FP),BP XORL CX,CX CMPL DX,BX /* dividend >= 2^32 * divisor */ JHS _divovfl CMPL BX,CX /* divisor == 0 */ JE _divovfl DIVL BX /* AX = DX:AX/BX */ MOVL AX,0(BP) RET /* return all 1's */ _divovfl: NOTL CX MOVL CX,0(BP) RET