aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/asm-offsets.c
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2010-02-26 16:37:31 -0500
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>2010-02-26 16:37:30 -0500
commit987bcdacb18a3adc2a48d85c9b005069c2f4dd7b (patch)
tree65da88589e2c95a4677090b570f49402e870e573 /arch/s390/kernel/asm-offsets.c
parentd1bf85902c28dd990c08f1703ea94109223549a7 (diff)
[S390] use inline assembly contraints available with gcc 3.3.3
Drop support to compile the kernel with gcc versions older than 3.3.3. This allows us to use the "Q" inline assembly contraint on some more inline assemblies without duplicating a lot of complex code (e.g. __xchg and __cmpxchg). The distinction for older gcc versions can be removed which saves a few lines and simplifies the code. Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/asm-offsets.c')
-rw-r--r--arch/s390/kernel/asm-offsets.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/s390/kernel/asm-offsets.c b/arch/s390/kernel/asm-offsets.c
index 63e46433e81d..a5850a0cfe80 100644
--- a/arch/s390/kernel/asm-offsets.c
+++ b/arch/s390/kernel/asm-offsets.c
@@ -9,6 +9,14 @@
9#include <asm/vdso.h> 9#include <asm/vdso.h>
10#include <asm/sigp.h> 10#include <asm/sigp.h>
11 11
12/*
13 * Make sure that the compiler is new enough. We want a compiler that
14 * is known to work with the "Q" assembler constraint.
15 */
16#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 3)
17#error Your compiler is too old; please use version 3.3.3 or newer
18#endif
19
12int main(void) 20int main(void)
13{ 21{
14 DEFINE(__THREAD_info, offsetof(struct task_struct, stack)); 22 DEFINE(__THREAD_info, offsetof(struct task_struct, stack));