aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc/kernel/entry.S
diff options
context:
space:
mode:
authorRandolph Chung <tausq@parisc-linux.org>2005-10-21 22:42:57 -0400
committerKyle McMartin <kyle@parisc-linux.org>2005-10-21 22:42:57 -0400
commit99ac79479928bae42d694b7cb53644be5d3b6dd2 (patch)
treef7f8793f2d5df8d3179f86c1eb75c93a2c94749b /arch/parisc/kernel/entry.S
parent3a165680168758733b7a9f7fb835954fbe6b91a8 (diff)
[PARISC] Replace some calls to bl with b,l or bv to use longer offsets
convert some bl calls to b,l or bv to use longer offsets Signed-off-by: Randolph Chung <tausq@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Diffstat (limited to 'arch/parisc/kernel/entry.S')
-rw-r--r--arch/parisc/kernel/entry.S16
1 files changed, 13 insertions, 3 deletions
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S
index 65a82c2645a7..ec04e0ad77fa 100644
--- a/arch/parisc/kernel/entry.S
+++ b/arch/parisc/kernel/entry.S
@@ -821,7 +821,12 @@ ret_from_kernel_thread:
821 ldo -16(%r30),%r29 /* Reference param save area */ 821 ldo -16(%r30),%r29 /* Reference param save area */
822 loadgp /* Thread could have been in a module */ 822 loadgp /* Thread could have been in a module */
823#endif 823#endif
824#ifndef CONFIG_64BIT
824 b sys_exit 825 b sys_exit
826#else
827 load32 sys_exit, %r1
828 bv %r0(%r1)
829#endif
825 ldi 0, %r26 830 ldi 0, %r26
826 831
827 .import sys_execve, code 832 .import sys_execve, code
@@ -1012,7 +1017,7 @@ intr_restore:
1012 1017
1013 .import do_softirq,code 1018 .import do_softirq,code
1014intr_do_softirq: 1019intr_do_softirq:
1015 bl do_softirq,%r2 1020 BL do_softirq,%r2
1016#ifdef __LP64__ 1021#ifdef __LP64__
1017 ldo -16(%r30),%r29 /* Reference param save area */ 1022 ldo -16(%r30),%r29 /* Reference param save area */
1018#else 1023#else
@@ -1036,7 +1041,12 @@ intr_do_resched:
1036#endif 1041#endif
1037 1042
1038 ldil L%intr_check_sig, %r2 1043 ldil L%intr_check_sig, %r2
1044#ifndef CONFIG_64BIT
1039 b schedule 1045 b schedule
1046#else
1047 load32 schedule, %r20
1048 bv %r0(%r20)
1049#endif
1040 ldo R%intr_check_sig(%r2), %r2 1050 ldo R%intr_check_sig(%r2), %r2
1041 1051
1042 1052
@@ -1897,7 +1907,7 @@ sys_vfork_wrapper:
1897#ifdef __LP64__ 1907#ifdef __LP64__
1898 ldo -16(%r30),%r29 /* Reference param save area */ 1908 ldo -16(%r30),%r29 /* Reference param save area */
1899#endif 1909#endif
1900 bl \execve,%r2 1910 BL \execve,%r2
1901 copy %r1,%arg0 1911 copy %r1,%arg0
1902 1912
1903 ldo -FRAME_SIZE(%r30),%r30 1913 ldo -FRAME_SIZE(%r30),%r30
@@ -2226,7 +2236,7 @@ pt_regs_ok:
2226 2236
2227 .import do_softirq,code 2237 .import do_softirq,code
2228syscall_do_softirq: 2238syscall_do_softirq:
2229 bl do_softirq,%r2 2239 BL do_softirq,%r2
2230 nop 2240 nop
2231 /* NOTE: We enable I-bit incase we schedule later, 2241 /* NOTE: We enable I-bit incase we schedule later,
2232 * and we might be going back to userspace if we were 2242 * and we might be going back to userspace if we were