diff options
author | Masami Hiramatsu <mhiramat@kernel.org> | 2021-09-14 17:41:52 +0300 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2021-10-01 04:24:07 +0300 |
commit | c1f76fe58f6983205ad14045dbc303416d5e990a (patch) | |
tree | 03e5e75920c0f726291f7aeb503e840e53857ecf | |
parent | bb6121b11c22912ae558f853036f8ac37eb45973 (diff) | |
download | linux-c1f76fe58f6983205ad14045dbc303416d5e990a.tar.xz |
ia64: Add instruction_pointer_set() API
Add instruction_pointer_set() API for ia64.
Link: https://lkml.kernel.org/r/163163051195.489837.1039597819838213481.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-rw-r--r-- | arch/ia64/include/asm/ptrace.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/ia64/include/asm/ptrace.h b/arch/ia64/include/asm/ptrace.h index 08179135905c..8a2d0f72b324 100644 --- a/arch/ia64/include/asm/ptrace.h +++ b/arch/ia64/include/asm/ptrace.h @@ -51,6 +51,11 @@ * the canonical representation by adding to instruction pointer. */ # define instruction_pointer(regs) ((regs)->cr_iip + ia64_psr(regs)->ri) +# define instruction_pointer_set(regs, val) \ +({ \ + ia64_psr(regs)->ri = (val & 0xf); \ + regs->cr_iip = (val & ~0xfULL); \ +}) static inline unsigned long user_stack_pointer(struct pt_regs *regs) { |