summaryrefslogtreecommitdiff
path: root/arch/microblaze
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@amd.com>2022-06-24 15:15:00 +0300
committerMichal Simek <michal.simek@amd.com>2022-06-24 15:15:00 +0300
commit1918c4166eea9f0dfe135c4cb9fcd794825522c1 (patch)
tree507fbf66177a9307712bf42d0f5038cd031dca3a /arch/microblaze
parent10fd6d64c747a0267a3735cc64d108cdbde6aeb4 (diff)
downloadu-boot-1918c4166eea9f0dfe135c4cb9fcd794825522c1.tar.xz
microblaze: Separate code end substraction
Follow up patch will convert symbol handling that's why it is necessary to separate logic around symbols to special instruction. It adds 4B for new instruction but it is worth to do it to have code ready for for full relocation. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/030863fa9a9c1ca0a9b082fe498522da09189fbc.1655299267.git.michal.simek@amd.com
Diffstat (limited to 'arch/microblaze')
-rw-r--r--arch/microblaze/cpu/start.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
index 205d5f384c..a35d8d8ea2 100644
--- a/arch/microblaze/cpu/start.S
+++ b/arch/microblaze/cpu/start.S
@@ -273,7 +273,8 @@ relocate_code:
add r23, r0, r7 /* Move reloc addr to r23 */
/* Relocate text and data - r12 temp value */
addi r21, r0, _start
- addi r22, r0, _end - 4 /* Include BSS too */
+ addi r22, r0, _end /* Include BSS too */
+ addi r22, r22, -4
rsub r6, r21, r22
or r5, r0, r0