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

Commit 6d88f827 authored by Martin Schwidefsky's avatar Martin Schwidefsky
Browse files

[S390] Fix __ffs_word_loop/__ffz_word_loop inlnie assembly.



The black art of inline assemblies.. The new __ffs_word_loop/
__ffz_word_loop inline assemblies need an early clobber for the
two input/output variables.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 1ee92a1c
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -472,7 +472,7 @@ static inline unsigned long __ffz_word_loop(const unsigned long *addr,
		"	brct	%1,0b\n"
		"1:\n"
#endif
		: "+a" (bytes), "+d" (size)
		: "+&a" (bytes), "+&d" (size)
		: "d" (-1UL), "a" (addr), "m" (*(addrtype *) addr)
		: "cc" );
	return bytes;
@@ -507,7 +507,7 @@ static inline unsigned long __ffs_word_loop(const unsigned long *addr,
		"	brct	%1,0b\n"
		"1:\n"
#endif
		: "+a" (bytes), "+a" (size)
		: "+&a" (bytes), "+&a" (size)
		: "d" (0UL), "a" (addr), "m" (*(addrtype *) addr)
		: "cc" );
	return bytes;