if (((dividend = 0x8000_0000) &
(divisor = 0xffff_ffff)) |
(divisor = 0x0000_0000)) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT[32:63] <- DIVS(dividend, divisor)
- RT[0:31] <- undef([0]*32)
+ RT[0:31] <- undefined([0]*32)
overflow <- 0
Special Registers Altered:
divisor[0:31] <- (RB)[32:63]
if divisor != 0 then
RT[32:63] <- dividend / divisor
- RT[0:31] <- undef([0]*32)
+ RT[0:31] <- undefined([0]*32)
overflow <- 0
else
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
Special Registers Altered:
result32[0:63] <- EXTS64(result[32:63])
if (result32 = result) then
RT[32:63] <- result[32:63]
- RT[0:31] <- undef([0]*32)
+ RT[0:31] <- undefined([0]*32)
overflow <- 0
else
overflow <- 1
if overflow = 1 then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
Special Registers Altered:
result <- dividend / divisor
if RA[32:63] <u RB[32:63] then
RT[32:63] <- result[32:63]
- RT[0:31] <- undef([0]*32)
+ RT[0:31] <- undefined([0]*32)
overflow <- 0
else
overflow <- 1
if overflow = 1 then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
Special Registers Altered:
if (((dividend = 0x8000_0000) &
(divisor = 0xffff_ffff)) |
(divisor = 0x0000_0000)) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT[0:63] <- EXTS64(MODS(dividend, divisor))
- RT[0:31] <- undef(RT[0:31])
+ RT[0:31] <- undefined(RT[0:31])
overflow <- 0
Special Registers Altered:
dividend[0:31] <- (RA) [32:63]
divisor [0:31] <- (RB) [32:63]
if divisor = 0x0000_0000 then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT[32:63] <- dividend % divisor
- RT[0:31] <- undef([0]*32)
+ RT[0:31] <- undefined([0]*32)
overflow <- 0
Special Registers Altered:
if (((dividend = 0x8000_0000_0000_0000) &
(divisor = 0xffff_ffff_ffff_ffff)) |
(divisor = 0x0000_0000_0000_0000)) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT <- DIVS(dividend, divisor)
dividend[0:63] <- (RA)
divisor[0:63] <- (RB)
if (divisor = 0x0000_0000_0000_0000) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT <- dividend / divisor
else
overflow <- 1
if overflow = 1 then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
Special Registers Altered:
else
overflow <- 1
if overflow = 1 then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
Special Registers Altered:
if (((dividend = 0x8000_0000_0000_0000) &
(divisor = 0xffff_ffff_ffff_ffff)) |
(divisor = 0x0000_0000_0000_0000)) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT <- MODS(dividend, divisor)
dividend <- (RA)
divisor <- (RB)
if (divisor = 0x0000_0000_0000_0000) then
- RT[0:63] <- undef([0]*64)
+ RT[0:63] <- undefined([0]*64)
overflow <- 1
else
RT <- dividend % divisor