/[avr-libc]/avr-libc/libm/fplib/ceil.S
ViewVC logotype

Diff of /avr-libc/libm/fplib/ceil.S

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.5 by joerg_wunsch, Thu Jun 30 22:31:07 2005 UTC revision 1.6 by aesok, Mon Dec 5 22:05:53 2005 UTC
# Line 66  Line 66 
66            FUNCTION(ceil)            FUNCTION(ceil)
67    
68  GLOBAL(ceil)  GLOBAL(ceil)
69      BST     rA3,7      RCALL   _U(__fp_split_a)    ; split up in sign : exp : fraction   : fraction extention
70      RCALL   _U(__fp_split1)   ; split up in sign : exp : fraction   : fraction extention                                  ;          x  T    : rA3 : rA2:rA1:rA0: rAE
                               ;          x  T      R19   R18:rSI0:R16: R1  
71      CPI     rA3,0x7F          ; Exp >= 0x7F -> arg >= 1.0      CPI     rA3,0x7F          ; Exp >= 0x7F -> arg >= 1.0
72      BRCC    100f      BRCC    100f
73      BRTS    1f                ; |arg| < 1.0 -> ceil  = / 1.0  for X >  0.0      BRTS    1f                ; |arg| < 1.0 -> ceil  = / 1.0  for X >  0.0
# Line 85  GLOBAL(ceil) Line 84  GLOBAL(ceil)
84      LSR     rA2        ;      LSR     rA2        ;
85      ROR     rA1        ; shift out fractional bits to the right      ROR     rA1        ; shift out fractional bits to the right
86      ROR     rA0        ; until mantissa is a normalized unsigned      ROR     rA0        ; until mantissa is a normalized unsigned
87      adc     rAE,rT1c   ; rAE cleard by fp_split1, rT1c = __zero_reg__      adc     rAE, __zero_reg__   ; rAE cleard by fp_split1
88      INC     rA3        ;      INC     rA3        ;
89      ; |arg| >= 1.0      ; |arg| >= 1.0
90  100:                   ; |arg| >= 1.0  100:                   ; |arg| >= 1.0

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26