* Combines 32b inputs most significant set bits into the least * significant bits to construct a value with the same MSBs as x * but all 1's under it. * * @param x * The integer whose MSBs need to be combined with its LSBs * @return * The combined value. */
| 438 | * The combined value. |
| 439 | */ |
| 440 | static inline uint32_t |
| 441 | rte_combine32ms1b(uint32_t x) |
| 442 | { |
| 443 | x |= x >> 1; |
| 444 | x |= x >> 2; |
| 445 | x |= x >> 4; |
| 446 | x |= x >> 8; |
| 447 | x |= x >> 16; |
| 448 | |
| 449 | return x; |
| 450 | } |
| 451 | |
| 452 | /** |
| 453 | * Combines 64b inputs most significant set bits into the least |
no outgoing calls
no test coverage detected