Rev 4448 | Rev 4450 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 4448 | Rev 4449 | ||
|---|---|---|---|
| Line 84... | Line 84... | ||
| 84 | #define STRING_ARG(arg) #arg |
84 | #define STRING_ARG(arg) #arg |
| 85 | 85 | ||
| 86 | #define LOWER32(arg) ((arg) & 0xffffffff) |
86 | #define LOWER32(arg) ((arg) & 0xffffffff) |
| 87 | #define UPPER32(arg) (((arg) >> 32) & 0xffffffff) |
87 | #define UPPER32(arg) (((arg) >> 32) & 0xffffffff) |
| 88 | 88 | ||
| 89 | #define MERGE_LOHI32(lo, hi) ((lo & 0xffffffff) | ((hi & 0xffffffff) < 32)) |
89 | #define MERGE_LOHI32(lo, hi) ((lo & 0xffffffff) | ((hi & 0xffffffff) << 32)) |
| 90 | 90 | ||
| 91 | /** Pseudorandom generator |
91 | /** Pseudorandom generator |
| 92 | * |
92 | * |
| 93 | * A pretty standard linear congruential pseudorandom |
93 | * A pretty standard linear congruential pseudorandom |
| 94 | * number generator (m = 2^32 or 2^64 depending on architecture). |
94 | * number generator (m = 2^32 or 2^64 depending on architecture). |