From 1317d65dbecb98e9c540fa783a7ef88a9bffb94c Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Thu, 22 Feb 2001 18:02:24 +0000 Subject: div and ldiv are required for ISO 9899 -Erik --- libc/stdlib/Makefile | 2 +- libc/stdlib/div.c | 33 +++++++++++++++++++++++++++++++++ libc/stdlib/ldiv.c | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 libc/stdlib/div.c create mode 100644 libc/stdlib/ldiv.c diff --git a/libc/stdlib/Makefile b/libc/stdlib/Makefile index 6ea292d5b..092de4d94 100644 --- a/libc/stdlib/Makefile +++ b/libc/stdlib/Makefile @@ -38,7 +38,7 @@ MOBJ2=atexit.o exit.o CSRC = abort.c getenv.c mktemp.c qsort.c realpath.c abs.c bsearch.c \ - mkstemp.c putenv.c rand.c setenv.c system.c + mkstemp.c putenv.c rand.c setenv.c system.c div.c ldiv.c ifeq ($(HAS_FLOATS),true) CSRC += strtod.c endif diff --git a/libc/stdlib/div.c b/libc/stdlib/div.c new file mode 100644 index 000000000..0992c8047 --- /dev/null +++ b/libc/stdlib/div.c @@ -0,0 +1,33 @@ +/* vi: set sw=4 ts=4: */ +/* + * div for uClibc + * + * Copyright (C) 2001 by Lineo, inc. Written by Erik Andersen + * , + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Library General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License + * for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include + +div_t div(int numer, int denom) +{ + div_t result; + result.quot = numer / denom; + result.rem = numer - (result.quot * denom); + return(result); +} + diff --git a/libc/stdlib/ldiv.c b/libc/stdlib/ldiv.c new file mode 100644 index 000000000..10e614870 --- /dev/null +++ b/libc/stdlib/ldiv.c @@ -0,0 +1,33 @@ +/* vi: set sw=4 ts=4: */ +/* + * ldiv for uClibc + * + * Copyright (C) 2001 by Lineo, inc. Written by Erik Andersen + * , + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Library General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License + * for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include + +ldiv_t ldiv(long numer, long denom) +{ + ldiv_t result; + result.quot = numer / denom; + result.rem = numer - (result.quot * denom); + return(result); +} + -- cgit v1.2.3