OSDN Git Service
(root)
/
coroid
/
libav_saccubus.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
fd735e4
)
reduce number of shifts
author
Michael Niedermayer
<michaelni@gmx.at>
Fri, 4 May 2007 22:35:56 +0000
(22:35 +0000)
committer
Michael Niedermayer
<michaelni@gmx.at>
Fri, 4 May 2007 22:35:56 +0000
(22:35 +0000)
Originally committed as revision 8891 to svn://svn.ffmpeg.org/ffmpeg/trunk
libavutil/internal.h
patch
|
blob
|
history
diff --git
a/libavutil/internal.h
b/libavutil/internal.h
index
244e3c0
..
ce168dd
100644
(file)
--- a/
libavutil/internal.h
+++ b/
libavutil/internal.h
@@
-189,15
+189,16
@@
extern const uint8_t ff_sqrt_tab[128];
static inline int ff_sqrt(int a)
{
int ret=0;
- int s;
+ int s
, b
;
if(a<128) return ff_sqrt_tab[a];
- for(s=15; s>=0; s--){
- int b= (1<<(s*2)) + (ret<<s)*2;
+ for(s=30; s>=0; s-=2){
+ ret+=ret;
+ b= (1+2*ret)<<s;
if(b<=a){
a-=b;
- ret+
= 1<<s
;
+ ret+
+
;
}
}
return ret;