summaryrefslogtreecommitdiff
path: root/lib/libc/quad
Commit message (Collapse)AuthorAgeFilesLines
* Add casts and L suffixes to libc quad support, to work around variousDimitry Andric2020-02-179-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Werror warnings from clang 10.0.0, such as: lib/libc/quad/fixdfdi.c:57:12: error: implicit conversion from 'long long' to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror,-Wimplicit-int-float-conversion] if (x >= QUAD_MAX) ~~ ^~~~~~~~ /usr/obj/usr/src/powerpc.powerpc/tmp/usr/include/sys/limits.h:89:19: note: expanded from macro 'QUAD_MAX' #define QUAD_MAX (__QUAD_MAX) /* max value for a quad_t */ ^~~~~~~~~~ /usr/obj/usr/src/powerpc.powerpc/tmp/usr/include/machine/_limits.h:91:20: note: expanded from macro '__QUAD_MAX' #define __QUAD_MAX __LLONG_MAX /* max value for a quad_t */ ^~~~~~~~~~~ /usr/obj/usr/src/powerpc.powerpc/tmp/usr/include/machine/_limits.h:75:21: note: expanded from macro '__LLONG_MAX' #define __LLONG_MAX 0x7fffffffffffffffLL /* max value for a long long */ ^~~~~~~~~~~~~~~~~~~~ and many instances of: lib/libc/quad/fixunsdfdi.c:73:17: error: shift count >= width of type [-Werror,-Wshift-count-overflow] toppart = (x - ONE_HALF) / ONE; ^~~~~~~~ lib/libc/quad/fixunsdfdi.c:45:19: note: expanded from macro 'ONE_HALF' #define ONE_HALF (ONE_FOURTH * 2.0) ^~~~~~~~~~ lib/libc/quad/fixunsdfdi.c:44:23: note: expanded from macro 'ONE_FOURTH' #define ONE_FOURTH (1 << (LONG_BITS - 2)) ^ ~~~~~~~~~~~~~~~ lib/libc/quad/fixunsdfdi.c:73:29: error: shift count >= width of type [-Werror,-Wshift-count-overflow] toppart = (x - ONE_HALF) / ONE; ^~~ lib/libc/quad/fixunsdfdi.c:46:15: note: expanded from macro 'ONE' #define ONE (ONE_FOURTH * 4.0) ^~~~~~~~~~ lib/libc/quad/fixunsdfdi.c:44:23: note: expanded from macro 'ONE_FOURTH' #define ONE_FOURTH (1 << (LONG_BITS - 2)) ^ ~~~~~~~~~~~~~~~ Notes: svn path=/projects/clang1000-import/; revision=358042
* Revert r351078, r351085: stand/quad.h evictionKyle Evans2019-08-151-21/+0
| | | | | | | It did not go well; further examination is required... Notes: svn path=/head/; revision=351088
* libc quad.h: one last _STANDALONE correctionKyle Evans2019-08-151-0/+5
| | | | Notes: svn path=/head/; revision=351085
* stand: kick out quad.hKyle Evans2019-08-151-0/+16
| | | | | | | | | | | | | | Use quad.h from libc instead for the time being. This reduces the number of nearly-identical-quad.h we have in tree to two with only minor changes. Prototypes for some *sh*di3 have been added to match the copy in libkern. The differences between the two are likely few enough that they can perhaps be merged with little additional effort to bring us down to 1. MFC after: 3 days Notes: svn path=/head/; revision=351078
* ANSIfy libc/quadEd Maste2018-10-2124-52/+24
| | | | | | | | | | | | Some of these routines exist in both lib/libc/quad/ and sys/libkern/. r325988 ANSIfied sys/libkern. Update libc/quad to match. PR: 223641 Reported by: bde Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=339510
* General further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-2029-0/+58
| | | | | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Notes: svn path=/head/; revision=326025
* Renumber copyright clause 4Warner Losh2017-02-2829-29/+29
| | | | | | | | | | | | Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96 Notes: svn path=/head/; revision=314436
* Remove MK_ARM_EABI, the armeb issues have been fixed. The code to supportAndrew Turner2014-10-011-1/+1
| | | | | | | | | | | | | | | the oabi is still in the tree, but it is expected this will be removed as developers work on surrounding code. With this commit the ARM EABI is the only supported supported ABI by FreeBSD on ARMa 32-bit processors. X-MFC after: never Relnotes: yes Differential Revision: https://reviews.freebsd.org/D876 Notes: svn path=/head/; revision=272350
* Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}Marcel Moolenaar2014-03-041-2/+2
| | | | | | | | | | | | | | if not already defined. This allows building libc from outside of lib/libc using a reach-over makefile. A typical use-case is to build a standard ILP32 version and a COMPAT32 version in a single iteration by building the COMPAT32 version using a reach-over makefile. Obtained from: Juniper Networks, Inc. Notes: svn path=/head/; revision=262722
* For ARM EABI we only need a subset of the quad functions, the rest areAndrew Turner2013-01-191-0/+4
| | | | | | | provided by libgcc. Notes: svn path=/head/; revision=245644
* Powerpc is special here. powerpc and powerpc64 use different ABIs, soWarner Losh2010-08-241-2/+2
| | | | | | | | | their implementations aren't in the same files. Introduce LIBC_ARCH and use that in preference to MACHINE_CPUARCH. Tested by amd64 and powerpc64 builds (thanks nathanw@) Notes: svn path=/head/; revision=211774
* MFtbemd:Warner Losh2010-08-231-2/+2
| | | | | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform. Notes: svn path=/head/; revision=211725
* Fix a typo that prevented the quad symbols from being exportedDaniel Eischen2007-07-061-1/+1
| | | | | | | | | | (s/SYM_MAP/SYM_MAPS/). Reported by: kan Approved by: re@ (Ken Smith) Notes: svn path=/head/; revision=171278
* Export quad symbols. They were previously commented out. These symbolsDaniel Eischen2007-05-311-6/+6
| | | | | | | | | | | | really shouldn't be exported since they should be pulled from libgcc, but the build of some applications is broken and they expect to see them in libc. glibc exports these symbols, although Solaris doesn't appear to, so export them for compatibility's sake. After discussion with: kan Notes: svn path=/head/; revision=170155
* Use C comments since we now preprocess these files with CPP.Daniel Eischen2007-04-291-29/+33
| | | | Notes: svn path=/head/; revision=169092
* Per Regents of the University of Calfornia letter, remove advertisingWarner Losh2007-01-0929-116/+0
| | | | | | | | | clause. # If I've done so improperly on a file, please let me know. Notes: svn path=/head/; revision=165903
* Add each directory's symbol map file to SYM_MAPS.Daniel Eischen2006-03-131-0/+2
| | | | Notes: svn path=/head/; revision=156613
* Add symbol maps and initial symbol version definitions to libc.Daniel Eischen2006-03-131-0/+34
| | | | | | | Reviewed by: davidxu Notes: svn path=/head/; revision=156608
* - Add prototypes for __cmpdi2() and __ucmpdi2().Stefan Farfeleder2005-09-121-10/+2
| | | | | | | - Remove GCC 1 stuff. Notes: svn path=/head/; revision=150058
* libc_r wasn't so tied to libc for 22 months.Ruslan Ermilov2002-11-181-1/+1
| | | | Notes: svn path=/head/; revision=107052
* Fix the style of the SCM ID's.David E. O'Brien2002-03-2226-4/+56
| | | | | | | I believe have made all of libc .c's as consistent as possible. Notes: svn path=/head/; revision=92986
* Remove __P() usage.David E. O'Brien2002-03-211-5/+5
| | | | Notes: svn path=/head/; revision=92905
* Remove 'register' keyword.David E. O'Brien2002-03-212-6/+10
| | | | Notes: svn path=/head/; revision=92889
* $Id$ -> $FreeBSD$Peter Wemm1999-08-282-2/+2
| | | | Notes: svn path=/head/; revision=50476
* - Fix modulo bug that was masked by the correct code in libgcc.a which isNate Williams1998-11-301-1/+1
| | | | | | | | used in almost all programs unless a shared library specifically ignores libgcc.a. Notes: svn path=/head/; revision=41425
* $@ -> ${.TARGET}Warner Losh1998-09-111-2/+2
| | | | Notes: svn path=/head/; revision=39060
* Change MACHINE references to MACHINE_ARCH.John Birrell1998-02-201-3/+3
| | | | Notes: svn path=/head/; revision=33668
* Put the .PATH statement first as in all other libc Makefile.inc's.Bruce Evans1997-12-191-3/+2
| | | | Notes: svn path=/head/; revision=31870
* Changed all paths to be relative to src/lib instead of src/lib/libcJohn Birrell1997-05-031-2/+3
| | | | | | | | | | | | | so that all these makefiles can be used to build libc_r too. Added .if ${LIB} == "c" tests to restrict man page builds to libc to avoid needlessly building them with libc_r too. Split libc Makefile into Makefile and Makefile.inc to allow the libc_r Makefile to include Makefile.inc too. Notes: svn path=/head/; revision=25401
* Revert $FreeBSD$ to $Id$Peter Wemm1997-02-221-1/+1
| | | | Notes: svn path=/head/; revision=22993
* Make the long-awaited change from $Id$ to $FreeBSD$Jordan K. Hubbard1997-01-141-1/+1
| | | | | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise. Notes: svn path=/head/; revision=21673
* Added prototypes.Bruce Evans1995-12-261-1/+6
| | | | Notes: svn path=/head/; revision=13030
* Restored [u]cmpdi2.c which are needed for switching on [unsigned] longBruce Evans1995-12-011-1/+1
| | | | | | | long values. Notes: svn path=/head/; revision=12555
* Removed cmpdi2.c from ${SRCS}. I think it is no more needed than ucmpdi2.Bruce Evans1995-11-291-2/+1
| | | | | | | Restored order in ${SRCS}. Notes: svn path=/head/; revision=12524
* limit the number of functions we pull in for 'i386'.Poul-Henning Kamp1995-10-221-1/+11
| | | | | | | I still belive this stuff should go back into gcc. Notes: svn path=/head/; revision=11663
* Remove trailing whitespace.Rodney W. Grimes1995-05-302-2/+2
| | | | Notes: svn path=/head/; revision=8870
* BSD 4.4 Lite Lib SourcesRodney W. Grimes1994-05-2731-0/+2375
Notes: svn path=/cvs2svn/branches/unlabeled-1.1.1/; revision=1573