[all-commits] [llvm/llvm-project] 48aebf: [ELF][ARM] Do not create .ARM.exidx sections for o...

Peter Smith via All-commits all-commits at lists.llvm.org
Tue May 5 02:02:34 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 48aebfc908ba7b9372aaa478a9c200789491096e
      https://github.com/llvm/llvm-project/commit/48aebfc908ba7b9372aaa478a9c200789491096e
  Author: Peter Smith <peter.smith at arm.com>
  Date:   2020-05-05 (Tue, 05 May 2020)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    A lld/test/ELF/arm-exidx-range.s

  Log Message:
  -----------
  [ELF][ARM] Do not create .ARM.exidx sections for out of range inputs

A linker will create .ARM.exidx sections for InputSections that don't
have them. This can cause a relocation out of range error If the
InputSection happens to be extremely far away from the other sections.
This is often the case for the vector table on older ARM CPUs as the only
two places that the table can be placed is 0 or 0xffff0000. We fix this
by removing InputSections that need a linker generated .ARM.exidx
section if that would cause an error.

Differential Revision: https://reviews.llvm.org/D79289




More information about the All-commits mailing list