projects
/
GitHub
/
LineageOS
/
android_kernel_motorola_exynos9610.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
blame
|
history
|
raw
|
HEAD
Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[GitHub/LineageOS/android_kernel_motorola_exynos9610.git]
/
lib
/
gcd.c
1
#include <linux/kernel.h>
2
#include <linux/gcd.h>
3
#include <linux/export.h>
4
5
/* Greatest common divisor */
6
unsigned long
gcd
(
unsigned long
a
,
unsigned long
b
)
7
{
8
unsigned long
r
;
9
10
if
(
a
<
b
)
11
swap
(
a
,
b
);
12
13
if
(!
b
)
14
return
a
;
15
while
((
r
=
a
%
b
) !=
0
) {
16
a
=
b
;
17
b
=
r
;
18
}
19
return
b
;
20
}
21
EXPORT_SYMBOL_GPL
(
gcd
);