Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
[linux-2.6] / lib / gcd.c
1 #include <linux/kernel.h>
2 #include <linux/gcd.h>
3 #include <linux/module.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         while ((r = a % b) != 0) {
13                 a = b;
14                 b = r;
15         }
16         return b;
17 }
18 EXPORT_SYMBOL_GPL(gcd);