Find a file
Teresa Johnson d5ae0ba663 Fix PR gcov-profile/55734 by using methods from hwint.c instead of builtins...
Fix PR gcov-profile/55734 by using methods from hwint.c instead of
builtins, to handle non-GCC and older versions of GCC. When building
libgcov.a, however, hwint.c is not available, but we are always using
the bootstrapped compiler and can therefore use the builtins.

Use __builtin_popcount instead of __builtin_popcountll, since we
are operating on an int.

Use floor_log2 directly, instead of clz_hwi for the non-libgcov case,
and handle situations where the size of the gcov_type is bigger than
HOST_WIDE_INT. Verified that the various cases compiled by forcing
different HOST_BITS_PER_WIDE_INT values.

2012-12-20  Teresa Johnson  <tejohnson@google.com>
            Jakub Jelinek  <jakub@redhat.com>

        PR gcov-profile/55734
	* gcov-io.c (gcov_read_summary): Use __builtin_popcount instead
        of __builtin_popcountll when building libgcov.a, otherwise use
        popcount_hwi.
	(gcov_histo_index): When not building libgcov.a, use floor_log2
        instead of __builtin_clzll.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r194634
2012-12-20 14:31:09 +00:00
boehm-gc configure.ac: Add stanza for *-*-gnu* threads configuration. 2012-11-04 23:56:02 +01:00
config Use libstdc++-raw-cxx.m4 in libjava 2012-12-12 05:40:15 -08:00
contrib validate_failures.py: also ignore .git 2012-12-05 08:34:17 +01:00
fixincludes It is October, not September. :) 2012-10-29 16:58:16 +00:00
gcc Fix PR gcov-profile/55734 by using methods from hwint.c instead of builtins... 2012-12-20 14:31:09 +00:00
gnattools Remove obsolete IRIX 6.5 support 2012-03-14 16:33:37 +00:00
include re PR other/54324 (GCC install document does not list minimum required g++ version) 2012-12-18 15:19:43 +00:00
INSTALL README: Also refer to the online installation instructions. 2012-08-25 20:48:20 +00:00
intl
libada Makefile.in: Revert most changes. 2012-11-07 04:58:23 +00:00
libatomic re PR go/55201 (libgo.so: undefined reference to `__atomic_compare_exchange_8') 2012-12-18 22:04:08 +00:00
libbacktrace mmapio.c: Define MAP_FAILED if not defined. 2012-12-12 13:06:53 +00:00
libcpp re PR bootstrap/55380 (All search_line_fast implementations read beyond buffer) 2012-12-03 18:19:47 +01:00
libdecnumber bid_functions.h: Check for __GLIBC__ additionally to LINUX when defining format specifiers. 2012-11-05 00:08:42 +01:00
libffi linux64_closure.S: Add new ABI support. 2012-10-31 14:15:34 +10:30
libgcc fp16.c (__gnu_f2h_internal): Fix inaccuracy when aexp is 25. 2012-12-13 12:05:30 +00:00
libgfortran array.c (resolve_array_list): Apply C4106. 2012-12-20 00:15:00 +00:00
libgo libgo: Link against libatomic_convenience.la. 2012-12-18 22:07:38 +00:00
libgomp fortran.exp: Set -fintrinsic-modules-path. 2012-12-19 16:53:01 +01:00
libiberty cp-demangle.c (d_unqualified_name): Handle abi tags here. 2012-11-10 21:11:15 -05:00
libitm Add HTM fastpath and use Intel RTM for it on x86. 2012-11-09 17:04:40 +00:00
libjava Import GNU Classpath (20121202). 2012-12-19 17:03:15 +00:00
libmudflap * mf-hooks1.c (free): Return on NULL before any logging. 2012-12-15 10:24:50 +00:00
libobjc rs6000-cpus.def (POWERPC_MASKS): Don't assume OPTION_MASK_STRICT_ALIGN is defined. 2012-10-19 19:10:03 +00:00
libquadmath cbrtq.c (cbrtq): Use Q suffixed floating point constants instead of L suffixed ones. 2012-12-13 13:35:56 +01:00
libsanitizer Restore AM_MAKEFLAGS in libsanitizer 2012-12-12 07:41:36 -08:00
libssp * configure: Regenerated. 2012-09-14 19:40:25 -04:00
libstdc++-v3 abi.xml: Update URLs for C++ ABI. 2012-12-18 11:08:33 +00:00
lto-plugin * configure: Regenerated. 2012-09-14 19:42:24 -04:00
maintainer-scripts crontab: Disable snapshots from gcc-4_5-branch. 2012-07-02 09:16:29 +00:00
zlib 2012-11-16 Matthias Klose <doko@ubuntu.com> 2012-11-16 18:35:05 +00:00
ABOUT-NLS
ChangeLog Makefile.def (install-target-libgo): Depend on install-target-libatomic. 2012-12-19 16:18:37 +00:00
ChangeLog.tree-ssa
compile
config-ml.in MAINTAINERS (crx port, [...]): Remove. 2011-03-22 19:58:18 +00:00
config.guess oops - omitted from previous delta. 2011-06-06 10:34:35 +00:00
config.rpath Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
config.sub Sync config.sub with src 2012-12-12 05:55:00 -08:00
configure configure.ac (ENABLE_GOLD): Consider *-*-gnu* targets ELF. 2012-12-16 08:24:29 +01:00
configure.ac configure.ac (ENABLE_GOLD): Consider *-*-gnu* targets ELF. 2012-12-16 08:24:29 +01:00
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
depcomp
install-sh
libtool-ldflags
libtool.m4 re PR bootstrap/38607 (AIX error messages about TOC during build) 2012-09-14 19:23:41 -04:00
ltgcc.m4
ltmain.sh backport: ltmain.sh (relink): Use absolute path when hardcoding with -L. 2011-01-13 18:51:10 +00:00
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
MAINTAINERS * MAINTAINERS: Remove self as RTL optimization maintainer. 2012-12-01 09:36:06 +00:00
Makefile.def Makefile.def (install-target-libgo): Depend on install-target-libatomic. 2012-12-19 16:18:37 +00:00
Makefile.in Makefile.def (install-target-libgo): Depend on install-target-libatomic. 2012-12-19 16:18:37 +00:00
Makefile.tpl re PR other/54279 (first stage build with g++ fails with "." as the first component of $PATH) 2012-11-28 14:11:29 -08:00
missing
mkdep
mkinstalldirs
move-if-change Import move-if-change script from gnulib. 2011-02-12 15:48:30 +00:00
README * README: Document use of ranges of years in copyright notices. 2012-07-16 15:01:34 +01:00
symlink-tree
ylwrap

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.