Commit 0cbdff4f authored by Al Viro's avatar Al Viro Committed by Linus Torvalds

[PATCH] broken inline asm on s390 (misuse of labels)

use of explicit labels in inline asm is a Bad Idea(tm), since gcc can
decide to inline the function in several places.  Fixed by use of 1f/f:
instead of .Lfitsin/.Lfitsin:
Signed-off-by: default avatarAl Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent a828b8e4
...@@ -46,9 +46,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code) ...@@ -46,9 +46,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
"lra 3,0(%4)\n" "lra 3,0(%4)\n"
"lr 5,%5\n" "lr 5,%5\n"
"diag 2,4,0x8\n" "diag 2,4,0x8\n"
"brc 8, .Litfits\n" "brc 8, 1f\n"
"ar 5, %5\n" "ar 5, %5\n"
".Litfits: \n" "1: \n"
"lr %0,4\n" "lr %0,4\n"
"lr %1,5\n" "lr %1,5\n"
: "=d" (return_code), "=d" (return_len) : "=d" (return_code), "=d" (return_len)
...@@ -64,9 +64,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code) ...@@ -64,9 +64,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
"sam31\n" "sam31\n"
"diag 2,4,0x8\n" "diag 2,4,0x8\n"
"sam64\n" "sam64\n"
"brc 8, .Litfits\n" "brc 8, 1f\n"
"agr 5, %5\n" "agr 5, %5\n"
".Litfits: \n" "1: \n"
"lgr %0,4\n" "lgr %0,4\n"
"lgr %1,5\n" "lgr %1,5\n"
: "=d" (return_code), "=d" (return_len) : "=d" (return_code), "=d" (return_len)
......
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