static inline target_ulong bitswap(target_ulong v)
{
- v = ((v >> 1) & (target_ulong)0x5555555555555555) |
- ((v & (target_ulong)0x5555555555555555) << 1);
- v = ((v >> 2) & (target_ulong)0x3333333333333333) |
- ((v & (target_ulong)0x3333333333333333) << 2);
- v = ((v >> 4) & (target_ulong)0x0F0F0F0F0F0F0F0F) |
- ((v & (target_ulong)0x0F0F0F0F0F0F0F0F) << 4);
+ v = ((v >> 1) & (target_ulong)0x5555555555555555ULL) |
+ ((v & (target_ulong)0x5555555555555555ULL) << 1);
+ v = ((v >> 2) & (target_ulong)0x3333333333333333ULL) |
+ ((v & (target_ulong)0x3333333333333333ULL) << 2);
+ v = ((v >> 4) & (target_ulong)0x0F0F0F0F0F0F0F0FULL) |
+ ((v & (target_ulong)0x0F0F0F0F0F0F0F0FULL) << 4);
return v;
}