mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-09 12:48:43 +00:00
Cleanup changes
This commit is contained in:
parent
b1a597e0c3
commit
c60cdd8c39
@ -49,11 +49,6 @@
|
||||
* final node (if it is not in the trie) and we came to node that
|
||||
* is either extension of our prefix, or completely out of path
|
||||
* In the first case, we also have to check M2.
|
||||
|
||||
* There also might be
|
||||
* a problem that interval of acceptance (on path from root to the
|
||||
* final node) might be completely missing (for example if we have
|
||||
* prefix patterns 192.168.128.0/24{8,10} and 192.168.1.0/24
|
||||
*
|
||||
* Second, we really need not to maintain two separate bitmasks.
|
||||
* Checks for mask M1 are always larger than &applen and we need
|
||||
|
@ -52,12 +52,13 @@ u32_masklen(u32 x)
|
||||
*
|
||||
* This function computes a integral part of binary logarithm of given
|
||||
* integer @v and returns it. The computed value is also an index of the
|
||||
* first non-zero bit position.
|
||||
* most significant non-zero bit position.
|
||||
*/
|
||||
|
||||
u32
|
||||
u32_log2(u32 v)
|
||||
{
|
||||
/* The code from http://www-graphics.stanford.edu/~seander/bithacks.html */
|
||||
u32 r, shift;
|
||||
r = (v > 0xFFFF) << 4; v >>= r;
|
||||
shift = (v > 0xFF ) << 3; v >>= shift; r |= shift;
|
||||
@ -66,3 +67,4 @@ u32_log2(u32 v)
|
||||
r |= (v >> 1);
|
||||
return r;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user