bug-binutils
[Top][All Lists]
Advanced

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

[Bug gas/12848] ARM: Thumb-2: Range check on b.w is off by a factor of 2


From: dave.martin at linaro dot org
Subject: [Bug gas/12848] ARM: Thumb-2: Range check on b.w is off by a factor of 2
Date: Wed, 8 Jun 2011 14:14:25 +0000

http://sourceware.org/bugzilla/show_bug.cgi?id=12848

--- Comment #1 from Dave Martin <dave.martin at linaro dot org> 2011-06-08 
14:14:07 UTC ---
On Mon, Jun 6, 2011 at 12:18 PM, dave.martin at linaro dot org
<address@hidden> wrote:
> http://sourceware.org/bugzilla/show_bug.cgi?id=12848
>
>           Summary: ARM: Thumb-2: Range check on b.w is off by a factor of
>                    2
>           Product: binutils
>           Version: 2.22 (HEAD)
>            Status: NEW
>          Severity: normal
>          Priority: P2
>         Component: gas
>        AssignedTo: address@hidden
>        ReportedBy: address@hidden
>
>
> The 32-bit Thumb long branch encoding has a range of +/-16MiB, but gas checks
> +/-32MiB instead (which is, perhaps coincidentally, the range of the B
> instruction in ARM state).

Having played with this a bit more, it appears that all the 32-bit
Thumb branch encodings are affected.  In each case, the range checked
for is double what it should be:

    b.w, bl and blx seem to be range-checked as +/- 32 MiB (should be
+/- 16 MiB)
    b<cc>.w seems to be range-checked as +/- 2 MiB (should be +/- 1 MiB)

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]