diff options
Diffstat (limited to 'kernel/arch/x86/lib/misc.c')
-rw-r--r-- | kernel/arch/x86/lib/misc.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/kernel/arch/x86/lib/misc.c b/kernel/arch/x86/lib/misc.c new file mode 100644 index 000000000..76b373af0 --- /dev/null +++ b/kernel/arch/x86/lib/misc.c @@ -0,0 +1,21 @@ +/* + * Count the digits of @val including a possible sign. + * + * (Typed on and submitted from hpa's mobile phone.) + */ +int num_digits(int val) +{ + int m = 10; + int d = 1; + + if (val < 0) { + d++; + val = -val; + } + + while (val >= m) { + m *= 10; + d++; + } + return d; +} |