bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/24709] [arm] linker crash and assertion failure with CMSE


From: clyon at gcc dot gnu.org
Subject: [Bug ld/24709] [arm] linker crash and assertion failure with CMSE
Date: Wed, 26 Jun 2019 14:51:06 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=24709

Christophe Lyon <clyon at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at sourceware dot org   |clyon at gcc dot gnu.org

--- Comment #2 from Christophe Lyon <clyon at gcc dot gnu.org> ---

> Alternatively, we could add a new type of stub "far-CMSE-stub" to deal with
> the case where the CMSE stub is too far from its destination.

I'm trying this approach, because it seems simpler, but there is a
complication: the section containing the CMSE stub is created just before the
first CMSE stub is created, in cmse_scan() while calling:

      stub_entry
        = elf32_arm_create_stub (htab, arm_stub_cmse_branch_thumb_only,
                                 NULL, NULL, section, hash, sym_name,
                                 sym_value, branch_type, &new_stub);

So, in cmse_scan(), we can compute the address of the target (via sym_value and
section offset/vma), but we don't know the address of the instruction in the
stub that will cause an out-of-range branch.
Replacing the stub with one of "far-CMSE-stub" type seems at least awkward....

-- 
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]