[PATCH] ARM: 2663/1: straightify TLS register emulation a bit more
[deliverable/linux.git] / arch / arm / kernel / entry-armv.S
index 080df907f24286c31416a70072f6933a5fd6a699..c6af1a03e08110e51d93437dac3a49d537c7ffd4 100644 (file)
@@ -505,9 +505,9 @@ ENTRY(__switch_to)
        mra     r4, r5, acc0
        stmia   ip, {r4, r5}
 #endif
-#ifdef CONFIG_HAS_TLS_REG
+#if defined(CONFIG_HAS_TLS_REG)
        mcr     p15, 0, r3, c13, c0, 3          @ set TLS register
-#else
+#elif !defined(CONFIG_TLS_REG_EMUL)
        mov     r4, #0xffff0fff
        str     r3, [r4, #-15]                  @ TLS val at 0xffff0ff0
 #endif
@@ -690,11 +690,7 @@ __kuser_cmpxchg:                           @ 0xffff0fc0
 
 __kuser_get_tls:                               @ 0xffff0fe0
 
-#ifndef CONFIG_HAS_TLS_REG
-
-#ifdef CONFIG_SMP  /* sanity check */
-#error "CONFIG_SMP without CONFIG_HAS_TLS_REG is wrong"
-#endif
+#if !defined(CONFIG_HAS_TLS_REG) && !defined(CONFIG_TLS_REG_EMUL)
 
        ldr     r0, [pc, #(16 - 8)]             @ TLS stored at 0xffff0ff0
        mov     pc, lr
This page took 0.023737 seconds and 5 git commands to generate.