1/* SPDX-License-Identifier: GPL-2.0+ */ 2 3#include <linux/linkage.h> 4#include <asm/ftrace.h> 5 6#define KPROBES_TARGET_START(name) \ 7 SYM_FUNC_START(name); \ 8 FTRACE_GEN_NOP_ASM(name) 9 10#define KPROBES_TARGET_END(name) \ 11 SYM_FUNC_END(name); \ 12 SYM_DATA(name##_offs, .quad 1b - name) 13 14KPROBES_TARGET_START(kprobes_target_in_insn4) 15 .word 0x4700 // bc 0,0 161: .word 0x0000 17 br %r14 18KPROBES_TARGET_END(kprobes_target_in_insn4) 19 20KPROBES_TARGET_START(kprobes_target_in_insn6_lo) 21 .word 0xe310 // ly 1,0 221: .word 0x0000 23 .word 0x0058 24 br %r14 25KPROBES_TARGET_END(kprobes_target_in_insn6_lo) 26 27KPROBES_TARGET_START(kprobes_target_in_insn6_hi) 28 .word 0xe310 // ly 1,0 29 .word 0x0000 301: .word 0x0058 31 br %r14 32KPROBES_TARGET_END(kprobes_target_in_insn6_hi) 33 34KPROBES_TARGET_START(kprobes_target_bp) 35 nop 36 .word 0x0000 37 nop 381: br %r14 39KPROBES_TARGET_END(kprobes_target_bp) 40 41KPROBES_TARGET_START(kprobes_target_odd) 42 .byte 0x07 431: .byte 0x07 44 br %r14 45KPROBES_TARGET_END(kprobes_target_odd) 46