xref: /linux/arch/arm/lib/ucmpdi2.S (revision 6ebbf2ce437b33022d30badd49dc94d33ecfa498)
1f741a1aaSNicolas Pitre/*
2f741a1aaSNicolas Pitre *  linux/arch/arm/lib/ucmpdi2.S
3f741a1aaSNicolas Pitre *
4f741a1aaSNicolas Pitre *  Author:	Nicolas Pitre
5f741a1aaSNicolas Pitre *  Created:	Oct 19, 2005
6f741a1aaSNicolas Pitre *  Copyright:	Monta Vista Software, Inc.
7f741a1aaSNicolas Pitre *
8f741a1aaSNicolas Pitre *  This program is free software; you can redistribute it and/or modify
9f741a1aaSNicolas Pitre *  it under the terms of the GNU General Public License version 2 as
10f741a1aaSNicolas Pitre *  published by the Free Software Foundation.
11f741a1aaSNicolas Pitre */
12f741a1aaSNicolas Pitre
13f741a1aaSNicolas Pitre#include <linux/linkage.h>
14*6ebbf2ceSRussell King#include <asm/assembler.h>
15f741a1aaSNicolas Pitre
16f741a1aaSNicolas Pitre#ifdef __ARMEB__
17f741a1aaSNicolas Pitre#define xh r0
18f741a1aaSNicolas Pitre#define xl r1
19f741a1aaSNicolas Pitre#define yh r2
20f741a1aaSNicolas Pitre#define yl r3
21f741a1aaSNicolas Pitre#else
22f741a1aaSNicolas Pitre#define xl r0
23f741a1aaSNicolas Pitre#define xh r1
24f741a1aaSNicolas Pitre#define yl r2
25f741a1aaSNicolas Pitre#define yh r3
26f741a1aaSNicolas Pitre#endif
27f741a1aaSNicolas Pitre
28f741a1aaSNicolas PitreENTRY(__ucmpdi2)
29f741a1aaSNicolas Pitre
30f741a1aaSNicolas Pitre	cmp	xh, yh
31f741a1aaSNicolas Pitre	cmpeq	xl, yl
32f741a1aaSNicolas Pitre	movlo	r0, #0
33f741a1aaSNicolas Pitre	moveq	r0, #1
34f741a1aaSNicolas Pitre	movhi	r0, #2
35*6ebbf2ceSRussell King	ret	lr
36f741a1aaSNicolas Pitre
3793ed3970SCatalin MarinasENDPROC(__ucmpdi2)
3893ed3970SCatalin Marinas
39ba95e4e4SNicolas Pitre#ifdef CONFIG_AEABI
40ba95e4e4SNicolas Pitre
41ba95e4e4SNicolas PitreENTRY(__aeabi_ulcmp)
42ba95e4e4SNicolas Pitre
43ba95e4e4SNicolas Pitre	cmp	xh, yh
44ba95e4e4SNicolas Pitre	cmpeq	xl, yl
45ba95e4e4SNicolas Pitre	movlo	r0, #-1
46ba95e4e4SNicolas Pitre	moveq	r0, #0
47ba95e4e4SNicolas Pitre	movhi	r0, #1
48*6ebbf2ceSRussell King	ret	lr
49ba95e4e4SNicolas Pitre
5093ed3970SCatalin MarinasENDPROC(__aeabi_ulcmp)
5193ed3970SCatalin Marinas
52ba95e4e4SNicolas Pitre#endif
53ba95e4e4SNicolas Pitre
54