mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-06 02:50:43 +00:00
![Sam Ravnborg](/assets/img/avatar_default.png)
Based on copy from microblaze add ucmpdi2 implementation. This fixes build of niu driver which failed with: drivers/built-in.o: In function `niu_get_nfc': niu.c:(.text+0x91494): undefined reference to `__ucmpdi2' This driver will never be used on a sparc32 system, but patch added to fix build breakage with all*config builds. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
19 lines
501 B
C
19 lines
501 B
C
#include <linux/module.h>
|
|
#include "libgcc.h"
|
|
|
|
word_type __ucmpdi2(unsigned long long a, unsigned long long b)
|
|
{
|
|
const DWunion au = {.ll = a};
|
|
const DWunion bu = {.ll = b};
|
|
|
|
if ((unsigned int) au.s.high < (unsigned int) bu.s.high)
|
|
return 0;
|
|
else if ((unsigned int) au.s.high > (unsigned int) bu.s.high)
|
|
return 2;
|
|
if ((unsigned int) au.s.low < (unsigned int) bu.s.low)
|
|
return 0;
|
|
else if ((unsigned int) au.s.low > (unsigned int) bu.s.low)
|
|
return 2;
|
|
return 1;
|
|
}
|
|
EXPORT_SYMBOL(__ucmpdi2);
|