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

Commit 5075baca authored by Heiko Carstens's avatar Heiko Carstens Committed by Martin Schwidefsky
Browse files

[S390] add __ucmpdi2() helper function



Provide __ucmpdi2() helper function on 31 bit so we don't run
again and again in compile errors like this one:

kernel/built-in.o: In function `T.689':
perf_counter.c:(.text+0x56c86): undefined reference to `__ucmpdi2'

Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 2651fa2b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3,6 +3,6 @@
#

lib-y += delay.o string.o uaccess_std.o uaccess_pt.o
obj-$(CONFIG_32BIT) += div64.o qrnnd.o
obj-$(CONFIG_32BIT) += div64.o qrnnd.o ucmpdi2.o
lib-$(CONFIG_64BIT) += uaccess_mvcos.o
lib-$(CONFIG_SMP) += spinlock.o
+26 −0
Original line number Diff line number Diff line
#include <linux/module.h>

union ull_union {
	unsigned long long ull;
	struct {
		unsigned int high;
		unsigned int low;
	} ui;
};

int __ucmpdi2(unsigned long long a, unsigned long long b)
{
	union ull_union au = {.ull = a};
	union ull_union bu = {.ull = b};

	if (au.ui.high < bu.ui.high)
		return 0;
	else if (au.ui.high > bu.ui.high)
		return 2;
	if (au.ui.low < bu.ui.low)
		return 0;
	else if (au.ui.low > bu.ui.low)
		return 2;
	return 1;
}
EXPORT_SYMBOL(__ucmpdi2);