twx-linux/tools
Josh Poimboeuf ef753d6605 objtool: Fix detection of consecutive jump tables on Clang 20
The jump table detection code assumes jump tables are in the same order
as their corresponding indirect branches.  That's apparently not always
true with Clang 20.

Fix that by changing how multiple jump tables are detected.  In the
first detection pass, mark the beginning of each jump table so the
second pass can tell where one ends and the next one begins.

Fixes the following warnings:

  vmlinux.o: warning: objtool: SiS_GetCRT2Ptr+0x1ad: stack state mismatch: cfa1=4+8 cfa2=5+16
  sound/core/seq/snd-seq.o: warning: objtool: cc_ev_to_ump_midi2+0x589: return with modified stack frame

Fixes: be2f0b1e1264 ("objtool: Get rid of reloc->jump_table_start")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/141752fff614eab962dba6bdfaa54aa67ff03bba.1742852846.git.jpoimboe@kernel.org
Closes: https://lore.kernel.org/oe-kbuild-all/202503171547.LlCTJLQL-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202503200535.J3hAvcjw-lkp@intel.com/
2025-03-25 09:20:25 +01:00
..
accounting getdelays: fix error format characters 2025-02-17 22:40:02 -08:00
arch [ Merge note: this pull request depends on you having merged 2025-03-24 22:06:11 -07:00
bootconfig tools/bootconfig: Fix the wrong format specifier 2025-01-28 23:27:01 +09:00
bpf perf tools fixes for v6.14: 2nd batch 2025-02-25 13:32:32 -08:00
build tools: Unify top-level quiet infrastructure 2025-02-18 15:31:45 -03:00
certs
cgroup
counter
crypto
debugging
firewire
firmware
gpio
hv
iio
include bitmap changes for 6.15 2025-03-24 19:11:58 -07:00
kvm/kvm_stat
laptop
leds
lib perf tools fixes for v6.14: 2nd batch 2025-02-25 13:32:32 -08:00
memory-model tools/memory-model: glossary.txt: Fix indents 2025-02-25 10:22:34 -08:00
mm tools/mm: fix build warnings with musl-libc 2025-02-17 22:40:02 -08:00
net tools: ynl: c: correct reverse decode of empty attrs 2025-01-27 14:30:23 -08:00
objtool objtool: Fix detection of consecutive jump tables on Clang 20 2025-03-25 09:20:25 +01:00
pcmcia
perf x86/cpufeatures: Remove {disabled,required}-features.h 2025-03-19 11:15:12 +01:00
power x86/cpu: Fix #define name for Intel CPU model 0x5A 2025-02-04 10:05:53 -08:00
rcu
sched_ext sched_ext: Change the event type from u64 to s64 2025-03-04 08:05:23 -10:00
scripts tools: Unify top-level quiet infrastructure 2025-02-18 15:31:45 -03:00
sound ASoC: dapm-graph: set fill colour of turned on nodes 2025-02-24 18:35:54 +00:00
spi
testing Miscellaneous x86 cleanups by Arnd Bergmann, Charles Han, 2025-03-24 22:39:53 -07:00
thermal tools: Remove redundant quiet setup 2025-02-18 16:27:43 -03:00
time
tracing perf tools fixes for v6.14: 2nd batch 2025-02-25 13:32:32 -08:00
usb
verification perf tools fixes for v6.14: 2nd batch 2025-02-25 13:32:32 -08:00
virtio
wmi
workqueue
writeback
Makefile