blob: fbc8103a32eecf99d80192b75f2f634dd89ae7ee [file] [log] [blame]
/* SPDX-License-Identifier: BSD-3-Clause */
#include <commonlib/bsd/gcd.h>
#include <commonlib/bsd/helpers.h>
#include <stdint.h>
uint64_t gcd(uint64_t a, uint64_t b)
{
uint64_t c;
if (a == 0 || b == 0)
return MAX(a, b);
c = a % b;
while (c > 0) {
a = b;
b = c;
c = a % b;
}
return b;
}