[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] tcg/arm: improve direct jump
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH] tcg/arm: improve direct jump |
Date: |
Thu, 10 Dec 2015 19:21:19 +0100 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On 2015-12-10 07:31, Richard Henderson wrote:
> On 12/10/2015 12:02 AM, Aurelien Jarno wrote:
> >Note: I don't really get the reason for the current 16MB limit. With the
> >standard branch instructions the offset is coded on 24 bits, but shifted
> >right by 2, which should give us a +/-32MB jumps, and therefore a 32MB
> >limit.
>
> That might be me with the off-by-one error on the bit counting...
While the way to store the value has been changed a few times recently,
the original value dates from this commit:
commit 1cb0661e009267a5d060c4686f0857784a8da228
Author: balrog <address@hidden>
Date: Mon Dec 1 02:10:17 2008 +0000
arm: Reserve code buffer in memory range reachable for pc-relative branch.
Unfortunately this range is so narrow that I'm not sure if it makes more
sense to always use memory load to pc kind of branch instead.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/address@hidden
c046a42c-6fe2-441c-8c8c-71466251a162
This doesn't fully explain the reason why 16MB and not 32MB.
Aurelien
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
address@hidden http://www.aurel32.net