lkml.org 
[lkml]   [2004]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRE: Re: Intel vs AMD x86-64
Date
From
For near branches (CALL, RET, JCC, JCXZ, JMP, etc.), the operand size is
forced to 64 bits on both processors in 64-bit mode, basically meaning
RIP is updated.

Compilers would typically use a JMP short for "intraprocedural jumps",
which requires just an 8-bit displacement relative to RIP.

Jun
>-----Original Message-----
>From: linux-kernel-owner@vger.kernel.org [mailto:linux-kernel-
>owner@vger.kernel.org] On Behalf Of H. Peter Anvin
>Sent: Wednesday, February 25, 2004 8:17 AM
>To: linux-kernel@vger.kernel.org
>Subject: Re: Intel vs AMD x86-64
>
>Followup to: <403CCBE0.7050100@techsource.com>
>By author: Timothy Miller <miller@techsource.com>
>In newsgroup: linux.dev.kernel
>>
>>
>> Nakajima, Jun wrote:
>> > No, it's not a problem. Branches with 16-bit operand size are not
>useful
>> > for compilers.
>>
>> From AMD's documentation, I got the impression that 66H caused near
>> branches to be 32 bits in long mode (default is 64).
>>
>> So, Intel makes it 16 bits, and AMD makes it 32 bits?
>>
>> Either way, I don't see much use for either one.
>>
>
>Both claims are pretty bogus. Shorter branches are quite nice for
>intraprocedural jumps; it reduces the cache footprint.
>
> -hpa
>
>-
>To unsubscribe from this list: send the line "unsubscribe linux-kernel"
in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at http://www.tux.org/lkml/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:01    [W:0.036 / U:1.384 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site