GCC modified for the FreeChainXenon project
Find a file
Michael Matz 47598145be gengtype.c (write_field_root): Avoid out-of-scope access of newv.
* gengtype.c (write_field_root): Avoid out-of-scope access of newv.

	* tree-stdarg.c (execute_optimize_stdarg): Accept clobbers.

	* tree.h (TREE_CLOBBER_P): New macro.
	* gimple.h (gimple_clobber_p): New inline function.
	* gimplify.c (gimplify_bind_expr): Add clobbers for all variables
	that go out of scope and live in memory.
	* tree-ssa-operands.c (get_expr_operands): Transfer volatility also
	for constructors.
	* cfgexpand.c (decl_to_stack_part): New static variable.
	(add_stack_var): Allocate it, and remember mapping.
	(fini_vars_expansion): Deallocate it.
	(stack_var_conflict_p): Add early outs.
	(visit_op, visit_conflict, add_scope_conflicts_1,
	add_scope_conflicts): New static functions.
	(expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy.
	(expand_used_vars): Add scope conflicts.
	(expand_gimple_stmt_1): Expand clobbers to nothing.
	(expand_debug_expr): Ditto.

	* tree-pretty-print.c (dump_generic_node): Dump clobbers nicely.
	* tree-ssa-live.c (remove_unused_locals): Remove clobbers that
	refer to otherwise unused locals.
	* tree-sra.c (build_accesses_from_assign): Ignore clobbers.
	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Clobbers of
	SSA names aren't necessary.
	(propagate_necessity): Accept and ignore constructors on the rhs,
	tidy.
	* gimple.c (walk_gimple_op): Accept constructors like mem_rhs.
	* tree-ssa-structalias.c (find_func_aliases): Clobbers don't store
	any known value.
	* tree-ssa-sccvn.c (vn_reference_lookup_3): Ditto, in particular they
	don't zero-initialize something.
	* tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Ignore
	clobber RHS, we don't want PHI nodes with those.

testsuite/
	* gcc.dg/tree-ssa/20031015-1.c: Adjust.
	* g++.dg/tree-ssa/ehcleanup-1.C: Ditto.
	* g++.dg/eh/builtin1.C: Rewrite to not use local variables.
	* g++.dg/eh/builtin2.C: Ditto.
	* g++.dg/eh/builtin3.C: Ditto.

From-SVN: r181172
2011-11-08 16:47:16 +00:00
boehm-gc configure.ac (THREADS): Remove posix95. 2011-08-08 15:39:35 +00:00
config Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
contrib Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
fixincludes re PR lto/48851 (lto-plugin.c:224:7: error: missing sentinel in function call [-Werror=format]) 2011-10-25 20:07:19 +00:00
gcc gengtype.c (write_field_root): Avoid out-of-scope access of newv. 2011-11-08 16:47:16 +00:00
gnattools Makefile.in (LOOSE_WARN): Delete. 2011-10-12 22:41:57 +00:00
include Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
INSTALL
intl Fix unportable shell quoting. 2010-09-27 20:19:41 +00:00
libada Makefile.in (LOOSE_WARN): Delete. 2011-10-12 22:41:57 +00:00
libcpp re PR bootstrap/50857 (The compiler is built with exceptions and RTTI enabled) 2011-11-03 17:17:07 +00:00
libdecnumber remove useless if-before-free tests 2011-04-20 18:19:03 +00:00
libffi re PR libffi/49594 (bootstrap failure in libffi:darwin_closure for powerpc-darwin8) 2011-09-04 19:19:39 +00:00
libgcc libgcov.c (struct gcov_fn_buffer): New struct. 2011-11-07 18:14:46 +00:00
libgfortran re PR libfortran/47970 (c99_functions.c:611:5: warning: implicit declaration of function 'round') 2011-11-08 10:31:04 +00:00
libgo syscall: Remove Linux system calls not available in older glibcs. 2011-11-02 17:53:20 +00:00
libgomp posix95: Remove empty directory. 2011-10-10 19:27:31 +00:00
libiberty Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
libitm Fix tests for libitm support. 2011-11-08 08:28:30 -08:00
libjava exception.cc (parse_lsda_header): hardcode ttype_encoding for older ARM EABI toolchains. 2011-10-20 13:56:12 +00:00
libmudflap re PR middle-end/43513 (The stack pointer is adjusted twice) 2011-07-31 10:02:12 +00:00
libobjc Move gthr to toplevel libgcc 2011-11-02 15:28:43 +00:00
libquadmath re PR target/51007 (Quadmath I/O doesn't work on MinGW) 2011-11-07 23:03:51 +01: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 shared_ptr_base.h (_Sp_counted_ptr): Make 'final'. 2011-11-08 16:45:54 +00:00
lto-plugin re PR lto/47247 (Linker plugin specification makes it difficult to handle COMDATs) 2011-10-02 10:41:24 +00:00
maintainer-scripts update_version_svn (IGNORE_BRANCHES): Add gcc-4_3-branch. 2011-06-27 11:05:50 +00:00
zlib Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
ABOUT-NLS
ChangeLog Fix tests for libitm support. 2011-11-08 08:28:30 -08: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 * config.sub: Update to version 2011-10-29 (added rl78) 2011-11-01 20:56:32 -04:00
configure Fix tests for libitm support. 2011-11-08 08:28:30 -08:00
configure.ac Fix tests for libitm support. 2011-11-08 08:28:30 -08:00
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
depcomp
install-sh
libtool-ldflags
libtool.m4 Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45: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
ltsugar.m4
ltversion.m4
lt~obsolete.m4
MAINTAINERS * MAINTAINERS (Write After Approval): Add myself. 2011-10-25 09:39:49 +00:00
Makefile.def Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
Makefile.in Merge from transactional-memory branch. 2011-11-08 11:13:41 +00:00
Makefile.tpl Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
missing
mkdep
mkinstalldirs
move-if-change Import move-if-change script from gnulib. 2011-02-12 15:48:30 +00:00
README
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.