projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git]
/
arch
/
arm
/
kernel
/
insn.c
diff --git
a/arch/arm/kernel/insn.c
b/arch/arm/kernel/insn.c
index
2e844b7
..
db0acbb
100644
(file)
--- a/
arch/arm/kernel/insn.c
+++ b/
arch/arm/kernel/insn.c
@@
-3,8
+3,9
@@
#include <linux/kernel.h>
#include <asm/opcodes.h>
#include <linux/kernel.h>
#include <asm/opcodes.h>
-static unsigned long
-__arm_gen_branch_thumb2(unsigned long pc, unsigned long addr, bool link)
+static unsigned long __arm_gen_branch_thumb2(unsigned long pc,
+ unsigned long addr, bool link,
+ bool warn)
{
unsigned long s, j1, j2, i1, i2, imm10, imm11;
unsigned long first, second;
{
unsigned long s, j1, j2, i1, i2, imm10, imm11;
unsigned long first, second;
@@
-12,7
+13,7
@@
__arm_gen_branch_thumb2(unsigned long pc, unsigned long addr, bool link)
offset = (long)addr - (long)(pc + 4);
if (offset < -16777216 || offset > 16777214) {
offset = (long)addr - (long)(pc + 4);
if (offset < -16777216 || offset > 16777214) {
- WARN_ON_ONCE(
1
);
+ WARN_ON_ONCE(
warn
);
return 0;
}
return 0;
}
@@
-33,8
+34,8
@@
__arm_gen_branch_thumb2(unsigned long pc, unsigned long addr, bool link)
return __opcode_thumb32_compose(first, second);
}
return __opcode_thumb32_compose(first, second);
}
-static unsigned long
-
__arm_gen_branch_arm(unsigned long pc, unsigned long addr, bool link
)
+static unsigned long
__arm_gen_branch_arm(unsigned long pc, unsigned long addr,
+
bool link, bool warn
)
{
unsigned long opcode = 0xea000000;
long offset;
{
unsigned long opcode = 0xea000000;
long offset;
@@
-44,7
+45,7
@@
__arm_gen_branch_arm(unsigned long pc, unsigned long addr, bool link)
offset = (long)addr - (long)(pc + 8);
if (unlikely(offset < -33554432 || offset > 33554428)) {
offset = (long)addr - (long)(pc + 8);
if (unlikely(offset < -33554432 || offset > 33554428)) {
- WARN_ON_ONCE(
1
);
+ WARN_ON_ONCE(
warn
);
return 0;
}
return 0;
}
@@
-54,10
+55,10
@@
__arm_gen_branch_arm(unsigned long pc, unsigned long addr, bool link)
}
unsigned long
}
unsigned long
-__arm_gen_branch(unsigned long pc, unsigned long addr, bool link)
+__arm_gen_branch(unsigned long pc, unsigned long addr, bool link
, bool warn
)
{
if (IS_ENABLED(CONFIG_THUMB2_KERNEL))
{
if (IS_ENABLED(CONFIG_THUMB2_KERNEL))
- return __arm_gen_branch_thumb2(pc, addr, link);
+ return __arm_gen_branch_thumb2(pc, addr, link
, warn
);
else
else
- return __arm_gen_branch_arm(pc, addr, link);
+ return __arm_gen_branch_arm(pc, addr, link
, warn
);
}
}