Linux Audio

Check our new training course

Loading...
v5.4
 1// SPDX-License-Identifier: GPL-2.0-or-later
 2/*
 
 
 
 
 
 
 
 
 
 
 
 
 
 3 */
 4
 5#include <linux/module.h>
 6#include <linux/libgcc.h>
 7
 8word_type notrace __ucmpdi2(unsigned long long a, unsigned long long b)
 9{
10	const DWunion au = {.ll = a};
11	const DWunion bu = {.ll = b};
12
13	if ((unsigned int) au.s.high < (unsigned int) bu.s.high)
14		return 0;
15	else if ((unsigned int) au.s.high > (unsigned int) bu.s.high)
16		return 2;
17	if ((unsigned int) au.s.low < (unsigned int) bu.s.low)
18		return 0;
19	else if ((unsigned int) au.s.low > (unsigned int) bu.s.low)
20		return 2;
21	return 1;
22}
23EXPORT_SYMBOL(__ucmpdi2);
v4.17
 
 1/*
 2 * This program is free software; you can redistribute it and/or modify
 3 * it under the terms of the GNU General Public License as published by
 4 * the Free Software Foundation; either version 2 of the License, or
 5 * (at your option) any later version.
 6 *
 7 * This program is distributed in the hope that it will be useful,
 8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, see the file COPYING, or write
14 * to the Free Software Foundation, Inc.
15 */
16
17#include <linux/module.h>
18#include <linux/libgcc.h>
19
20word_type __ucmpdi2(unsigned long long a, unsigned long long b)
21{
22	const DWunion au = {.ll = a};
23	const DWunion bu = {.ll = b};
24
25	if ((unsigned int) au.s.high < (unsigned int) bu.s.high)
26		return 0;
27	else if ((unsigned int) au.s.high > (unsigned int) bu.s.high)
28		return 2;
29	if ((unsigned int) au.s.low < (unsigned int) bu.s.low)
30		return 0;
31	else if ((unsigned int) au.s.low > (unsigned int) bu.s.low)
32		return 2;
33	return 1;
34}
35EXPORT_SYMBOL(__ucmpdi2);