Go to file
Easwaran Raman d26c70902d re PR rtl-optimization/44194 (struct returned by value generates useless stores)
2011-06-14  Easwaran Raman  <eraman@google.com>

       PR rtl-optimization/44194
       * dse.c: Include tree-flow.h
       (insn_info): Add new field non_frame_wild_read.
       (group_info): Add new fields escaped_n and escaped_p.
       (kill_on_calls): New variable.
       (get_group_info): Initialize gi->escaped_n and gi->escaped_p.
       (dse_step0): Initialize kill_on_calls.
       (can_escape): New function.
       (set_usage_bits): Add additional parameter; record information
       about escaped locations.
       (record_store): Pass EXPR corresponding to MEM to
       set_usage_bits.
       (dse_step2_nospill): Set kill_on_calls based on
       group->escaped_n and group->escaped_n.
       (add_wild_read): Refactor into...
       (reset_active_stores): ... New method, and
       (free_read_records): ... New method.
       (add_non_frame_wild_read): New method.
       (scan_insn): Call add_non_frame_wild_read on non-const calls.
       (scan_reads_nospill): Handle instructions with
       non_frame_wild_read.
       (dse_step5_nospill): Call scan_reads_nospill for instructions
       marked as non_frame_wild_read.
       (dse_step7): Free escaped_n, escaped_p and kill_on_calls
       bitmaps.

testsuite/ChangeLog

2011-06-14  Easwaran Raman  <eraman@google.com>

       PR rtl-optimization/44194
       * gcc.dg/pr44194-1.c: New test.
       * gcc.dg/pr44194-2.c: New test.

From-SVN: r175063
2011-06-14 22:58:20 +00:00
boehm-gc install.texi (Configuration, [...]): Remove mach. 2011-04-19 17:22:28 +00:00
config * bootstrap-lto.mk: Remove obsolete requirement. 2011-04-20 09:24:48 +00:00
contrib gcc_update (gcc/config/arm/arm-tables.opt): Also depend on gcc/config/arm/arm-fpus.def. 2011-05-19 17:27:59 +01:00
fixincludes configure.ac (AC_USE_SYSTEM_EXTENSIONS): Add. 2011-06-08 21:27:06 +00:00
gcc re PR rtl-optimization/44194 (struct returned by value generates useless stores) 2011-06-14 22:58:20 +00:00
gnattools PR other/46202: implement install-strip. 2010-11-20 19:37:08 +00:00
include demangle.h (DMGL_RET_POSTFIX): Extend the comment. 2011-06-13 22:32:40 +00:00
INSTALL
intl Fix unportable shell quoting. 2010-09-27 20:19:41 +00:00
libada PR other/46202: implement install-strip. 2010-11-20 19:37:08 +00:00
libcpp re PR preprocessor/48532 (Wrong location of namespaced pragma involving macros) 2011-06-06 13:33:42 +02:00
libdecnumber remove useless if-before-free tests 2011-04-20 18:19:03 +00:00
libffi huge_struct.c (test_large_fn): Use PRIu8, PRId8 instead of %hhu, %hhd. 2011-06-14 15:54:22 +00:00
libgcc irix6-unwind.h: New file. 2011-06-14 12:20:08 +00:00
libgfortran Return error when trying to seek a non-seekable buffered file 2011-06-11 13:52:18 +03:00
libgo Change builtin make to runtime call at lowering time. 2011-06-14 13:51:16 +00:00
libgomp re PR c++/49043 ([OpenMP & C++0x]: Compiler error when lambda-function within OpenMP loop) 2011-05-19 15:11:56 +02:00
libiberty cp-demangle.c (d_print_comp): Suppress d_print_mod for DMGL_RET_POSTFIX. 2011-06-13 22:34:19 +00:00
libjava Revert accidental svn commit r174473 2011-05-31 15:02:40 +02:00
libmudflap Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
libobjc In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> 2011-06-08 08:26:15 +00:00
libquadmath re PR fortran/48311 ([Quadmath] Documentation - typo, order) 2011-04-03 20:45:16 +02:00
libssp re PR bootstrap/48135 (build fails on Solaris2.8 due to Glob.pm not found within /usr/perl5) 2011-03-21 12:24:17 +00:00
libstdc++-v3 ptr_traits.h (pointer_traits<T*>::pointer_to): Use noexcept. 2011-06-14 23:08:24 +01:00
lto-plugin remove useless if-before-free tests 2011-04-20 18:19:03 +00:00
maintainer-scripts gcc_release (adjust_dirs, [...]): Remove. 2011-05-22 15:20:12 +01:00
zlib Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
ABOUT-NLS
ChangeLog * configure.ac (tilepro-*-*) New case. 2011-06-13 15:24:21 +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 from upstream: 2011-06-06 10:33:11 +00:00
configure * configure.ac (tilepro-*-*) New case. 2011-06-13 15:24:21 +00:00
configure.ac * configure.ac (tilepro-*-*) New case. 2011-06-13 15:24:21 +00:00
COPYING
COPYING3
COPYING3.LIB
COPYING.LIB
COPYING.RUNTIME
depcomp
install-sh
libtool-ldflags
libtool.m4 Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
lt~obsolete.m4 Sync from git Libtool and regenerate. 2009-12-05 17:18:53 +00: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 Sync from git Libtool and regenerate. 2009-12-05 17:18:53 +00:00
ltsugar.m4
ltversion.m4 Sync from git Libtool and regenerate. 2009-12-05 17:18:53 +00:00
MAINTAINERS * MAINTAINERS (Write After Approval): Add myself. 2011-06-06 03:05:33 +00:00
Makefile.def configure.ac (build_tools): Remove build-byacc. 2011-04-06 13:18:12 +01:00
Makefile.in configure.ac: Propagate LDFLAGS_FOR_TARGET. 2011-05-09 07:39:45 +00:00
Makefile.tpl configure.ac: Propagate LDFLAGS_FOR_TARGET. 2011-05-09 07:39:45 +00:00
missing
mkdep
mkinstalldirs
move-if-change Import move-if-change script from gnulib. 2011-02-12 15:48:30 +00:00
README README: Refer to the various COPYING* files instead of just COPYING. 2009-10-10 20:59:49 +00: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.