On Dec 4, 2014, at 1:50 PM, Peter Corlett <abuse at
cabal.org.uk> wrote:
 On Tue, Dec 02, 2014 at 03:32:38PM -0800, Fred Cisin wrote:
  . . .
>>> long long int A;
>>> int B;
>>> A = B << 32; 
 [...]
  So, should the compiler optimize that to
 MOV X,0
 or
 NOP
 ? 
 So on systems where sizeof(int) <= sizeof(int32_t) -- which is everything that
 matters  
Really?  Where have you been?  OS X the default has been to compile for 64-bits
in which case sizeof(int) == sizeof(int64_t) since Leopard (10.5) in 2009.  The kernel
went default 64-bits in Snow Leopard (10.6) in 2010.  OS X on x86 has always
supported mixed 32/64 bit applications (as long as the CPU did) regardless of what
the kernel was (a 32-bit kernel could run 64-bit applications).
TTFN - Guy