]> git.hungrycats.org Git - linux/commitdiff
[SPARC64]: Fix syscall table base loading assembler.
authorDavid S. Miller <davem@nuts.ninka.net>
Sun, 17 Aug 2003 18:09:25 +0000 (11:09 -0700)
committerDavid S. Miller <davem@nuts.ninka.net>
Sun, 17 Aug 2003 18:09:25 +0000 (11:09 -0700)
arch/sparc64/solaris/entry64.S
arch/sparc64/solaris/systbl.S
include/asm-sparc64/ttable.h

index f710edf1d6cdc150c21b0d970c71444c603b4132..ba045302373ca99579bd79d2e8ed289787e7d5a3 100644 (file)
@@ -63,6 +63,8 @@ solaris_reg:
         mov            %i4, %o4
 
 linux_syscall_for_solaris:
+       sethi           %hi(sys_call_table32), %l6
+       or              %l6, %lo(sys_call_table32), %l6
        sll             %l3, 2, %l4
        ba,pt           %xcc, 10f
         lduw           [%l6 + %l4], %l3
@@ -77,6 +79,7 @@ entry64_personality_patch:
        bg,pn           %icc, solaris_unimplemented
         srl            %g1, 0, %g1
        sethi           %hi(solaris_sys_table), %l7
+       or              %l7, %lo(solaris_sys_table), %l7
        brz,pn          %g1, solaris_sucks
         mov            %i4, %o4
        sll             %g1, 2, %l4
@@ -88,7 +91,7 @@ entry64_personality_patch:
        ldx             [%g6 + TI_FLAGS], %l5
        cmp             %l3, NR_SYSCALLS
        bleu,a,pn       %xcc, linux_syscall_for_solaris
-        sethi          %hi(sys_call_table32), %l6
+        nop
        andcc           %l3, 1, %g0
        bne,a,pn        %icc, 10f
         add            %sp, PTREGS_OFF, %o0
index 39ba2770b1a7b70bc551f1417aef5607c779255f..3822937768938c9ef0d5cae5a9ca5f9bfe742c98 100644 (file)
@@ -21,7 +21,6 @@
 #define solaris_semsys         solaris_unimplemented
 
         .data
-        .align  1024
        .globl          solaris_sys_table
 solaris_sys_table:
        .word solaris_unimplemented     /* nosys                0       */
index 828d1e145e6f749133b321061d697b8bc346dc9d..6771343442333301675ff27f8910ea3536f4f508 100644 (file)
        sethi   %hi(109f), %g7;                         \
        ba,pt   %xcc, scetrap;                          \
 109:    or     %g7, %lo(109b), %g7;                    \
+       sethi   %hi(systbl), %l7;                       \
        ba,pt   %xcc, routine;                          \
-        sethi  %hi(systbl), %l7;                       \
-       nop; nop; nop;
+        or     %l7, %lo(systbl), %l7;                  \
+       nop; nop;
        
 #define INDIRECT_SOLARIS_SYSCALL(num)                  \
        sethi   %hi(109f), %g7;                         \