In article <[EMAIL PROTECTED]>,
 Helge Hess <[EMAIL PROTECTED]> wrote:

> Why do I expect this? Because in Objective-C programs plenty of objects 
> are used and objects in ObjC are always accessed by pointers. Just take 
> using a simple NSString like @"hello", the isa pointer will be larger 
> than the payload. Every reference to the string will be larger than the 
> payload.

 Sounds logical, until you realise that a 64-bit CPU's native integer 
size is actually 64 bit. So, every time it does a 32-bit instruction, it 
has to perform an additional step to mask out the high word or so. It's 
probably similar to the speed hit you got on the 68000 when accessing 
unaligned bytes.

 I'd expect a 64-bit CPU to be slower than a 32-bit CPU, no matter 
whether it's executing 64-bit or 32-bit instructions. Since they 
wouldn't sell much of 'em that way, the hardware engineers probably made 
sure the CPU packed enough power to beat a 32-bit machine when running 
in 32-bit mode. And that means the CPU will be even faster in 64-bit 
mode.

 Just a guess, though... you never know what crazy optimisations those 
weird hardware designers build into their chips ;-)

-- Uli
http://www.zathras.de
_______________________________________________
Discuss-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to