projects
/
dragonfly.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
blame
|
history
|
raw
|
HEAD
Merge from vendor branch TCPDUMP:
[dragonfly.git]
/
contrib
/
libf2c
/
libF77
/
pow_ii.c
1
#include "f2c.h"
2
3
#ifdef KR_headers
4
integer pow_ii(ap, bp) integer *ap, *bp;
5
#else
6
integer pow_ii(integer *ap, integer *bp)
7
#endif
8
{
9
integer pow, x, n;
10
unsigned long u;
11
12
x = *ap;
13
n = *bp;
14
15
if (n <= 0) {
16
if (n == 0 || x == 1)
17
return 1;
18
if (x != -1)
19
return x == 0 ? 1/x : 0;
20
n = -n;
21
}
22
u = n;
23
for(pow = 1; ; )
24
{
25
if(u & 01)
26
pow *= x;
27
if(u >>= 1)
28
x *= x;
29
else
30
break;
31
}
32
return(pow);
33
}