Add casts and L suffixes to libc quad support, to work around various-Werror warnings from clang 10.0.0, such as:lib/libc/quad/fixdfdi.c:57:12: error: implicit conversion from 'long long' to 'doub
Add casts and L suffixes to libc quad support, to work around various-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)) ^ ~~~~~~~~~~~~~~~
show more ...
Revert r351078, r351085: stand/quad.h evictionIt did not go well; further examination is required...
libc quad.h: one last _STANDALONE correction
stand: kick out quad.hUse quad.h from libc instead for the time being. This reduces the number ofnearly-identical-quad.h we have in tree to two with only minor changes.Prototypes for some *sh*di
stand: kick out quad.hUse quad.h from libc instead for the time being. This reduces the number ofnearly-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 perhapsbe merged with little additional effort to bring us down to 1.MFC after: 3 days
ANSIfy libc/quadSome of these routines exist in both lib/libc/quad/ and sys/libkern/.r325988 ANSIfied sys/libkern. Update libc/quad to match.PR: 223641Reported by: bdeSponsored by: The FreeB
ANSIfy libc/quadSome of these routines exist in both lib/libc/quad/ and sys/libkern/.r325988 ANSIfied sys/libkern. Update libc/quad to match.PR: 223641Reported by: bdeSponsored by: The FreeBSD Foundation
General further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 3-Clause license.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier f
General further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 3-Clause license.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier for automated tools to detect and summarize well knownopensource licenses. We are gradually adopting the specification, notingthat 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 ofHighlander" tool: an older (2014) run over FreeBSD tree was useful as astarting point.
Renumber copyright clause 4Renumber cluase 4 to 3, per what everybody else did when BSD grantedthem permission to remove clause 3. My insistance on keeping the samenumbering for legal reasons is
Renumber copyright clause 4Renumber cluase 4 to 3, per what everybody else did when BSD grantedthem permission to remove clause 3. My insistance on keeping the samenumbering for legal reasons is too pedantic, so give up on that point.Submitted by: Jan Schaumann <[email protected]>Pull Request: https://github.com/freebsd/freebsd/pull/96
Remove MK_ARM_EABI, the armeb issues have been fixed. The code to supportthe oabi is still in the tree, but it is expected this will be removedas developers work on surrounding code.With this com
Remove MK_ARM_EABI, the armeb issues have been fixed. The code to supportthe oabi is still in the tree, but it is expected this will be removedas developers work on surrounding code.With this commit the ARM EABI is the only supported supported ABI byFreeBSD on ARMa 32-bit processors.X-MFC after: neverRelnotes: yesDifferential Revision: https://reviews.freebsd.org/D876
Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}if not already defined. This allows building libc from outside oflib/libc using a reach-over makefile.A typical use-case is to
Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}if not already defined. This allows building libc from outside oflib/libc using a reach-over makefile.A typical use-case is to build a standard ILP32 version and a COMPAT32version in a single iteration by building the COMPAT32 version using areach-over makefile.Obtained from: Juniper Networks, Inc.
For ARM EABI we only need a subset of the quad functions, the rest areprovided by libgcc.
Powerpc is special here. powerpc and powerpc64 use different ABIs, sotheir implementations aren't in the same files. Introduce LIBC_ARCHand use that in preference to MACHINE_CPUARCH. Tested by a
Powerpc is special here. powerpc and powerpc64 use different ABIs, sotheir implementations aren't in the same files. Introduce LIBC_ARCHand use that in preference to MACHINE_CPUARCH. Tested by amd64 andpowerpc64 builds (thanks nathanw@)
MFtbemd:Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you wantto test of all the CPUs of a given family conform.
Fix a typo that prevented the quad symbols from being exported(s/SYM_MAP/SYM_MAPS/).Reported by: kanApproved by: re@ (Ken Smith)
Export quad symbols. They were previously commented out. These symbolsreally shouldn't be exported since they should be pulled from libgcc, butthe build of some applications is broken and they ex
Export quad symbols. They were previously commented out. These symbolsreally shouldn't be exported since they should be pulled from libgcc, butthe build of some applications is broken and they expect to see them inlibc. glibc exports these symbols, although Solaris doesn't appear to,so export them for compatibility's sake.After discussion with: kan
Use C comments since we now preprocess these files with CPP.
Per Regents of the University of Calfornia letter, remove advertisingclause.# If I've done so improperly on a file, please let me know.
Add each directory's symbol map file to SYM_MAPS.
Add symbol maps and initial symbol version definitions to libc.Reviewed by: davidxu
- Add prototypes for __cmpdi2() and __ucmpdi2().- Remove GCC 1 stuff.
libc_r wasn't so tied to libc for 22 months.
Fix the style of the SCM ID's.I believe have made all of libc .c's as consistent as possible.
Remove __P() usage.
Remove 'register' keyword.
$Id$ -> $FreeBSD$
- Fix modulo bug that was masked by the correct code in libgcc.a which is used in almost all programs unless a shared library specifically ignores libgcc.a.
12