|
|
Log in / Subscribe / Register

Add jump table support for objtool on LoongArch

From:  Tiezhu Yang <yangtiezhu-AT-loongson.cn>
To:  Huacai Chen <chenhuacai-AT-kernel.org>, Josh Poimboeuf <jpoimboe-AT-kernel.org>, Peter Zijlstra <peterz-AT-infradead.org>
Subject:  [PATCH v4 00/10] Add jump table support for objtool on LoongArch
Date:  Fri, 22 Nov 2024 12:49:55 +0800
Message-ID:  <20241122045005.14617-1-yangtiezhu@loongson.cn>
Cc:  loongarch-AT-lists.linux.dev, linux-kernel-AT-vger.kernel.org
Archive-link:  Article

This series is based on 6.12-rc7, tested with the latest upstream
mainline Binutils, GCC and Clang, most of the patches are aim to
handle the special cases compiled with Clang on LoongArch.

v4:
  -- Avoid EM_LOONGARCH and R_LARCH_32_PCREL undeclared error
     for various compiling environments.

  -- Remove the check condition "dest_insn->type == INSN_NOP"
     for unreachable entry of rodata.

Tiezhu Yang (10):
  objtool: Handle various symbol types of rodata
  objtool: Handle special cases of dead end insn
  objtool: Handle different entry size of rodata
  objtool: Handle PC relative relocation type
  objtool: Handle unreachable entry of rodata
  objtool: Handle unsorted table offset of rodata
  objtool/LoongArch: Get each table size of rodata
  objtool/LoongArch: Add support for switch table
  objtool/LoongArch: Add support for goto table
  LoongArch: Enable jump table for objtool

 arch/loongarch/Kconfig                 |   3 +
 arch/loongarch/Makefile                |   4 +
 tools/objtool/arch/loongarch/special.c | 156 ++++++++++++++++++++++++-
 tools/objtool/check.c                  |  75 +++++++++++-
 tools/objtool/include/objtool/check.h  |   1 +
 5 files changed, 233 insertions(+), 6 deletions(-)

-- 
2.42.0




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds