Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -46,9 +46,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
				"lra	3,0(%4)\n"
				"lr	5,%5\n"
				"diag	2,4,0x8\n"
				"brc	8, .Litfits\n"
				"brc	8, 1f\n"
				"ar	5, %5\n"
				".Litfits: \n"
				"1: \n"
				"lr	%0,4\n"
				"lr	%1,5\n"
				: "=d" (return_code), "=d" (return_len)
@@ -64,9 +64,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
				"sam31\n"
				"diag	2,4,0x8\n"
				"sam64\n"
				"brc	8, .Litfits\n"
				"brc	8, 1f\n"
				"agr	5, %5\n"
				".Litfits: \n"
				"1: \n"
				"lgr	%0,4\n"
				"lgr	%1,5\n"
				: "=d" (return_code), "=d" (return_len)