Commit 0d260ed9 authored by Martin Schwidefsky's avatar Martin Schwidefsky Committed by Linus Torvalds

[PATCH] s390: gcc 3.2 fixes.

Make the kernel compile with gcc 3.2.
parent d3b904a2
......@@ -29,7 +29,7 @@ typedef struct
} sigp_info;
extern volatile unsigned long cpu_online_map;
extern unsigned long cpu_possible_map;
extern volatile unsigned long cpu_possible_map;
#define NO_PROC_ID 0xFF /* No processor magic marker */
......
......@@ -258,11 +258,11 @@ do { \
return (type) (res); \
} while (0)
#define _svc_clobber "2", "cc", "memory"
#define _svc_clobber "cc", "memory"
#define _syscall0(type,name) \
type name(void) { \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
......@@ -275,13 +275,13 @@ type name(void) { \
#define _syscall1(type,name,type1,arg1) \
type name(type1 arg1) { \
register type1 __arg1 asm("2") = arg1; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1) \
"0" (__arg1) \
: _svc_clobber ); \
__syscall_return(type,__res); \
}
......@@ -290,13 +290,13 @@ type name(type1 arg1) { \
type name(type1 arg1, type2 arg2) { \
register type1 __arg1 asm("2") = arg1; \
register type2 __arg2 asm("3") = arg2; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2) \
: _svc_clobber ); \
__syscall_return(type,__res); \
......@@ -307,13 +307,13 @@ type name(type1 arg1, type2 arg2, type3 arg3) { \
register type1 __arg1 asm("2") = arg1; \
register type2 __arg2 asm("3") = arg2; \
register type3 __arg3 asm("4") = arg3; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3) \
: _svc_clobber ); \
......@@ -327,13 +327,13 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4) { \
register type2 __arg2 asm("3") = arg2; \
register type3 __arg3 asm("4") = arg3; \
register type4 __arg4 asm("5") = arg4; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3), \
"d" (__arg4) \
......@@ -350,13 +350,13 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, \
register type3 __arg3 asm("4") = arg3; \
register type4 __arg4 asm("5") = arg4; \
register type5 __arg5 asm("6") = arg5; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3), \
"d" (__arg4), \
......
......@@ -225,11 +225,11 @@ do { \
return (type) (res); \
} while (0)
#define _svc_clobber "2", "cc", "memory"
#define _svc_clobber "cc", "memory"
#define _syscall0(type,name) \
type name(void) { \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
......@@ -242,13 +242,13 @@ type name(void) { \
#define _syscall1(type,name,type1,arg1) \
type name(type1 arg1) { \
register type1 __arg1 asm("2") = arg1; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1) \
"0" (__arg1) \
: _svc_clobber ); \
__syscall_return(type,__res); \
}
......@@ -257,13 +257,13 @@ type name(type1 arg1) { \
type name(type1 arg1, type2 arg2) { \
register type1 __arg1 asm("2") = arg1; \
register type2 __arg2 asm("3") = arg2; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2) \
: _svc_clobber ); \
__syscall_return(type,__res); \
......@@ -274,13 +274,13 @@ type name(type1 arg1, type2 arg2, type3 arg3) { \
register type1 __arg1 asm("2") = arg1; \
register type2 __arg2 asm("3") = arg2; \
register type3 __arg3 asm("4") = arg3; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3) \
: _svc_clobber ); \
......@@ -294,13 +294,13 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4) { \
register type2 __arg2 asm("3") = arg2; \
register type3 __arg3 asm("4") = arg3; \
register type4 __arg4 asm("5") = arg4; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3), \
"d" (__arg4) \
......@@ -317,13 +317,13 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, \
register type3 __arg3 asm("4") = arg3; \
register type4 __arg4 asm("5") = arg4; \
register type5 __arg5 asm("6") = arg5; \
long __res; \
register long __res asm("2"); \
__asm__ __volatile__ ( \
" svc %b1\n" \
" lgr %0,2" \
: "=d" (__res) \
: "i" (__NR_##name), \
"d" (__arg1), \
"0" (__arg1), \
"d" (__arg2), \
"d" (__arg3), \
"d" (__arg4), \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment