Merge tag 'riscv-for-linus-6.3-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux
Pull RISC-V updates from Palmer Dabbelt: "There's a bunch of fixes/cleanups throughout the tree as usual, but we also have a handful of new features: - Various improvements to the extension detection and alternative patching infrastructure - Zbb-optimized string routines - Support for cpu-capacity in the RISC-V DT bindings - Zicbom no longer depends on toolchain support - Some performance and code size improvements to ftrace - Support for ARCH_WANT_LD_ORPHAN_WARN - Oops now contain the faulting instruction" * tag 'riscv-for-linus-6.3-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (67 commits) RISC-V: add a spin_shadow_stack declaration riscv: mm: hugetlb: Enable ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP riscv: Add header include guards to insn.h riscv: alternative: proceed one more instruction for auipc/jalr pair riscv: Avoid enabling interrupts in die() riscv, mm: Perform BPF exhandler fixup on page fault RISC-V: take text_mutex during alternative patching riscv: hwcap: Don't alphabetize ISA extension IDs RISC-V: fix ordering of Zbb extension riscv: jump_label: Fixup unaligned arch_static_branch function RISC-V: Only provide the single-letter extensions in HWCAP riscv: mm: fix regression due to update_mmu_cache change scripts/decodecode: Add support for RISC-V riscv: Add instruction dump to RISC-V splats riscv: select ARCH_WANT_LD_ORPHAN_WARN for !XIP_KERNEL riscv: vmlinux.lds.S: explicitly catch .init.bss sections from EFI stub riscv: vmlinux.lds.S: explicitly catch .riscv.attributes sections riscv: vmlinux.lds.S: explicitly catch .rela.dyn symbols riscv: lds: define RUNTIME_DISCARD_EXIT RISC-V: move some stray __RISCV_INSN_FUNCS definitions from kprobes ...
This commit is contained in:
@@ -93,6 +93,11 @@ disas() {
|
||||
${CROSS_COMPILE}strip $t.o
|
||||
fi
|
||||
|
||||
if [ "$ARCH" = "riscv" ]; then
|
||||
OBJDUMPFLAGS="-M no-aliases --section=.text -D"
|
||||
${CROSS_COMPILE}strip $t.o
|
||||
fi
|
||||
|
||||
if [ $pc_sub -ne 0 ]; then
|
||||
if [ $PC ]; then
|
||||
adj_vma=$(( $PC - $pc_sub ))
|
||||
@@ -126,8 +131,13 @@ get_substr_opcode_bytes_num()
|
||||
do
|
||||
substr+="$opc"
|
||||
|
||||
opcode="$substr"
|
||||
if [ "$ARCH" = "riscv" ]; then
|
||||
opcode=$(echo $opcode | tr ' ' '\n' | tac | tr -d '\n')
|
||||
fi
|
||||
|
||||
# return if opcode bytes do not match @opline anymore
|
||||
if ! echo $opline | grep -q "$substr";
|
||||
if ! echo $opline | grep -q "$opcode";
|
||||
then
|
||||
break
|
||||
fi
|
||||
|
Reference in New Issue
Block a user