[PATCH 5/14] i386 / Use early clobber to eliminate rotate in desc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Zachary Amsden wrote:
> 
> This one in particular is non-optimal looking from C because the 
> compiler misses the potential for rotation.  But, composing into 
> temporaries and then issuing two writes to memory instead of multiple 
> writes within the same word could actually get you a better cycle count, 
> and that is something GCC just might be able to do :)
> 

At least i386 and x86-64 gcc should recognize

	((foo << x) + (foo >> (32-x)))

... as a 32-bit rotate; similar for 8-, 16- and 64-bit rotates of 
appropriate sized items.  Also, it seems it could just be an inline 
function instead of a macro.

	-hpa


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux