[ARM] remove pc_pointer()
pc_pointer() was a function to mask the PC for 26-bit ARMs, which we no longer support. Remove it. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
committed by
Russell King
parent
09d9bae064
commit
1de765c1e9
@@ -54,7 +54,6 @@
|
|||||||
#define PSR_C_BIT 0x20000000
|
#define PSR_C_BIT 0x20000000
|
||||||
#define PSR_Z_BIT 0x40000000
|
#define PSR_Z_BIT 0x40000000
|
||||||
#define PSR_N_BIT 0x80000000
|
#define PSR_N_BIT 0x80000000
|
||||||
#define PCMASK 0
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Groups of PSR bits
|
* Groups of PSR bits
|
||||||
@@ -139,11 +138,7 @@ static inline int valid_user_regs(struct pt_regs *regs)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define pc_pointer(v) \
|
#define instruction_pointer(regs) (regs)->ARM_pc
|
||||||
((v) & ~PCMASK)
|
|
||||||
|
|
||||||
#define instruction_pointer(regs) \
|
|
||||||
(pc_pointer((regs)->ARM_pc))
|
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
#ifdef CONFIG_SMP
|
||||||
extern unsigned long profile_pc(struct pt_regs *regs);
|
extern unsigned long profile_pc(struct pt_regs *regs);
|
||||||
|
@@ -98,7 +98,7 @@ static inline struct thread_info *current_thread_info(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define thread_saved_pc(tsk) \
|
#define thread_saved_pc(tsk) \
|
||||||
((unsigned long)(pc_pointer(task_thread_info(tsk)->cpu_context.pc)))
|
((unsigned long)(task_thread_info(tsk)->cpu_context.pc))
|
||||||
#define thread_saved_fp(tsk) \
|
#define thread_saved_fp(tsk) \
|
||||||
((unsigned long)(task_thread_info(tsk)->cpu_context.fp))
|
((unsigned long)(task_thread_info(tsk)->cpu_context.fp))
|
||||||
|
|
||||||
|
@@ -385,7 +385,7 @@ unsigned long get_wchan(struct task_struct *p)
|
|||||||
do {
|
do {
|
||||||
if (fp < stack_start || fp > stack_end)
|
if (fp < stack_start || fp > stack_end)
|
||||||
return 0;
|
return 0;
|
||||||
lr = pc_pointer (((unsigned long *)fp)[-1]);
|
lr = ((unsigned long *)fp)[-1];
|
||||||
if (!in_sched_functions(lr))
|
if (!in_sched_functions(lr))
|
||||||
return lr;
|
return lr;
|
||||||
fp = *(unsigned long *) (fp - 12);
|
fp = *(unsigned long *) (fp - 12);
|
||||||
|
@@ -126,7 +126,7 @@ ptrace_getrn(struct task_struct *child, unsigned long insn)
|
|||||||
|
|
||||||
val = get_user_reg(child, reg);
|
val = get_user_reg(child, reg);
|
||||||
if (reg == 15)
|
if (reg == 15)
|
||||||
val = pc_pointer(val + 8);
|
val += 8;
|
||||||
|
|
||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
@@ -278,8 +278,7 @@ get_branch_address(struct task_struct *child, unsigned long pc, unsigned long in
|
|||||||
else
|
else
|
||||||
base -= aluop2;
|
base -= aluop2;
|
||||||
}
|
}
|
||||||
if (read_u32(child, base, &alt) == 0)
|
read_u32(child, base, &alt);
|
||||||
alt = pc_pointer(alt);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -305,8 +304,7 @@ get_branch_address(struct task_struct *child, unsigned long pc, unsigned long in
|
|||||||
|
|
||||||
base = ptrace_getrn(child, insn);
|
base = ptrace_getrn(child, insn);
|
||||||
|
|
||||||
if (read_u32(child, base + nr_regs, &alt) == 0)
|
read_u32(child, base + nr_regs, &alt);
|
||||||
alt = pc_pointer(alt);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@@ -59,7 +59,7 @@ unsigned long profile_pc(struct pt_regs *regs)
|
|||||||
|
|
||||||
if (in_lock_functions(pc)) {
|
if (in_lock_functions(pc)) {
|
||||||
fp = regs->ARM_fp;
|
fp = regs->ARM_fp;
|
||||||
pc = pc_pointer(((unsigned long *)fp)[-1]);
|
pc = ((unsigned long *)fp)[-1];
|
||||||
}
|
}
|
||||||
|
|
||||||
return pc;
|
return pc;
|
||||||
|
Reference in New Issue
Block a user