diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 12:22:41 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 12:22:41 -0500 |
| commit | e031d33efde817ce6b4f907f0fa1ff021301748f (patch) | |
| tree | 2e9ba300db601f61fdc32813f55114d363d3d4e2 /include/asm-mips/stackframe.h | |
| parent | 52aef8183fbedb0232b20127b089e85e7aa095e3 (diff) | |
| parent | 48e08101c0fa0e1767cdef13fdaea79cad3106a2 (diff) | |
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] Update defconfigs.
[MIPS] Separate CPU entries in /proc/cpuinfo with a blank line.
[MIPS] sys_mmap2 offset argument should always be shifted 12, not PAGE_SHIFT.
[MIPS] TX49XX has prefetch.
[MIPS] Kill tlb-andes.c.
[MIPS] War on whitespace: cleanup initial spaces followed by tabs.
[MIPS] Makefile crapectomy.
[MIPS] Reformat __xchg().
[MIPS] Mention Broadcom part number for BigSur board
[MIPS] Remove CONFIG_BUILD_ELF64.
[MIPS] Further sparsification for 32-bit compat code.
[MIPS] fix wrong __user usage in _sysn32_rt_sigsuspend
[MIPS] Signal cleanup
[MIPS] Reformat all of signal32.c with tabs instead of space for consistency
[MIPS] Delete unused sys32_waitpid.
[MIPS] Make I/O helpers more customizable
[MIPS] Symmetric Uniprocessor support for Qemu.
[MIPS] sc-rm7k.c cleanup
[MIPS] MIPS64 R2 optimizations for 64-bit endianess swapping.
[MIPS] Add early console for Cobalt.
Diffstat (limited to 'include/asm-mips/stackframe.h')
| -rw-r--r-- | include/asm-mips/stackframe.h | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/include/asm-mips/stackframe.h b/include/asm-mips/stackframe.h index a8919dcc93c8..2acf3e844f00 100644 --- a/include/asm-mips/stackframe.h +++ b/include/asm-mips/stackframe.h | |||
| @@ -63,17 +63,7 @@ | |||
| 63 | addu k1, k0 | 63 | addu k1, k0 |
| 64 | LONG_L k1, %lo(kernelsp)(k1) | 64 | LONG_L k1, %lo(kernelsp)(k1) |
| 65 | #endif | 65 | #endif |
| 66 | #if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64) | 66 | #ifdef CONFIG_64BIT |
| 67 | MFC0 k1, CP0_CONTEXT | ||
| 68 | dsra k1, 23 | ||
| 69 | lui k0, %hi(pgd_current) | ||
| 70 | addiu k0, %lo(pgd_current) | ||
| 71 | dsubu k1, k0 | ||
| 72 | lui k0, %hi(kernelsp) | ||
| 73 | daddu k1, k0 | ||
| 74 | LONG_L k1, %lo(kernelsp)(k1) | ||
| 75 | #endif | ||
| 76 | #if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64) | ||
| 77 | MFC0 k1, CP0_CONTEXT | 67 | MFC0 k1, CP0_CONTEXT |
| 78 | lui k0, %highest(kernelsp) | 68 | lui k0, %highest(kernelsp) |
| 79 | dsrl k1, 23 | 69 | dsrl k1, 23 |
| @@ -91,11 +81,7 @@ | |||
| 91 | mfc0 \temp, CP0_CONTEXT | 81 | mfc0 \temp, CP0_CONTEXT |
| 92 | srl \temp, 23 | 82 | srl \temp, 23 |
| 93 | #endif | 83 | #endif |
| 94 | #if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64) | 84 | #ifdef CONFIG_64BIT |
| 95 | lw \temp, TI_CPU(gp) | ||
| 96 | dsll \temp, 3 | ||
| 97 | #endif | ||
| 98 | #if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64) | ||
| 99 | MFC0 \temp, CP0_CONTEXT | 85 | MFC0 \temp, CP0_CONTEXT |
| 100 | dsrl \temp, 23 | 86 | dsrl \temp, 23 |
| 101 | #endif | 87 | #endif |
| @@ -103,7 +89,7 @@ | |||
| 103 | .endm | 89 | .endm |
| 104 | #else | 90 | #else |
| 105 | .macro get_saved_sp /* Uniprocessor variation */ | 91 | .macro get_saved_sp /* Uniprocessor variation */ |
| 106 | #if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64) | 92 | #ifdef CONFIG_64BIT |
| 107 | lui k1, %highest(kernelsp) | 93 | lui k1, %highest(kernelsp) |
| 108 | daddiu k1, %higher(kernelsp) | 94 | daddiu k1, %higher(kernelsp) |
| 109 | dsll k1, k1, 16 | 95 | dsll k1, k1, 16 |
