overflow <- 1 # signals SO only when OE = 1
vxcvi_flag <- 1
xx_flag <- 0
- else if ¬bfp_COMPARE_EQ(src, result_bfp) then
- xx_flag <- 1
+ inc_flag <- 0
+ else
+ xx_flag <- ¬bfp_COMPARE_EQ(src, result_bfp)
+ inc_flag <- bfp_COMPARE_GT(bfp_ABSOLUTE(result_bfp), bfp_ABSOLUTE(src))
if vxsnan_flag = 1 then SetFX(FPSCR.VXSNAN)
if vxcvi_flag = 1 then SetFX(FPSCR.VXCVI)
overflow <- 1 # signals SO only when OE = 1
vxcvi_flag <- 1
xx_flag <- 0
- else if ¬bfp_COMPARE_EQ(src, result_bfp) then
- xx_flag <- 1
+ inc_flag <- 0
+ else
+ xx_flag <- ¬bfp_COMPARE_EQ(src, result_bfp)
+ inc_flag <- bfp_COMPARE_GT(bfp_ABSOLUTE(result_bfp), bfp_ABSOLUTE(src))
if vxsnan_flag = 1 then SetFX(FPSCR.VXSNAN)
if vxcvi_flag = 1 then SetFX(FPSCR.VXCVI)