1*d2912cb1SThomas Gleixner/* SPDX-License-Identifier: GPL-2.0-only */ 2f741a1aaSNicolas Pitre/* 3f741a1aaSNicolas Pitre * linux/arch/arm/lib/ucmpdi2.S 4f741a1aaSNicolas Pitre * 5f741a1aaSNicolas Pitre * Author: Nicolas Pitre 6f741a1aaSNicolas Pitre * Created: Oct 19, 2005 7f741a1aaSNicolas Pitre * Copyright: Monta Vista Software, Inc. 8f741a1aaSNicolas Pitre */ 9f741a1aaSNicolas Pitre 10f741a1aaSNicolas Pitre#include <linux/linkage.h> 116ebbf2ceSRussell King#include <asm/assembler.h> 12f741a1aaSNicolas Pitre 13f741a1aaSNicolas Pitre#ifdef __ARMEB__ 14f741a1aaSNicolas Pitre#define xh r0 15f741a1aaSNicolas Pitre#define xl r1 16f741a1aaSNicolas Pitre#define yh r2 17f741a1aaSNicolas Pitre#define yl r3 18f741a1aaSNicolas Pitre#else 19f741a1aaSNicolas Pitre#define xl r0 20f741a1aaSNicolas Pitre#define xh r1 21f741a1aaSNicolas Pitre#define yl r2 22f741a1aaSNicolas Pitre#define yh r3 23f741a1aaSNicolas Pitre#endif 24f741a1aaSNicolas Pitre 25f741a1aaSNicolas PitreENTRY(__ucmpdi2) 26f741a1aaSNicolas Pitre 27f741a1aaSNicolas Pitre cmp xh, yh 28f741a1aaSNicolas Pitre cmpeq xl, yl 29f741a1aaSNicolas Pitre movlo r0, #0 30f741a1aaSNicolas Pitre moveq r0, #1 31f741a1aaSNicolas Pitre movhi r0, #2 326ebbf2ceSRussell King ret lr 33f741a1aaSNicolas Pitre 3493ed3970SCatalin MarinasENDPROC(__ucmpdi2) 3593ed3970SCatalin Marinas 36ba95e4e4SNicolas Pitre#ifdef CONFIG_AEABI 37ba95e4e4SNicolas Pitre 38ba95e4e4SNicolas PitreENTRY(__aeabi_ulcmp) 39ba95e4e4SNicolas Pitre 40ba95e4e4SNicolas Pitre cmp xh, yh 41ba95e4e4SNicolas Pitre cmpeq xl, yl 42ba95e4e4SNicolas Pitre movlo r0, #-1 43ba95e4e4SNicolas Pitre moveq r0, #0 44ba95e4e4SNicolas Pitre movhi r0, #1 456ebbf2ceSRussell King ret lr 46ba95e4e4SNicolas Pitre 4793ed3970SCatalin MarinasENDPROC(__aeabi_ulcmp) 4893ed3970SCatalin Marinas 49ba95e4e4SNicolas Pitre#endif 50ba95e4e4SNicolas Pitre 51