120888 Commits

Author SHA1 Message Date
Jakub Jelinek
62b3f0f05e fast-math-pr38968.f90: Decrease n from 2000 to 400.
* gfortran.dg/vect/fast-math-pr38968.f90: Decrease n
	from 2000 to 400.

From-SVN: r194440
2012-12-12 10:40:48 +01:00
Jakub Jelinek
ee3ae4f768 re PR libgcc/55451 (FAIL: gcc.dg/fixed-point/unary.c)
PR libgcc/55451
	* fixed-bit.c (FIXED_SSADD, FIXED_SSSUB, FIXED_SSNEG): Avoid
	undefined signed overflows.

From-SVN: r194439
2012-12-12 10:38:56 +01:00
Jakub Jelinek
4c052539b6 re PR fortran/55633 (FAIL: gfortran.dg/g77/f90-intrinsic-bit.f -Os execution test)
PR fortran/55633
	* tree-ssa-loop-niter.c (discover_iteration_bound_by_body_walk):
	Ignore bounds on which bound += double_int_one overflowed.

	* gcc.dg/torture/pr55633.c: New test.

From-SVN: r194438
2012-12-12 10:32:52 +01:00
Andreas Schwab
4e74424074 re PR tree-optimization/55079 (false positive -Warray-bounds (also seen at -O3 bootstrap))
PR tree-optimization/55079
* gcc.dg/tree-ssa/ssa-pre-1.c: Adjust.

From-SVN: r194437
2012-12-12 09:32:40 +00:00
GCC Administrator
cbcc22fa31 Daily bump.
From-SVN: r194435
2012-12-12 00:18:58 +00:00
Jason Merrill
efa6d698dc re PR c++/54883 (Name mangling of types in an unnamed namespace)
PR c++/54883
	* decl2.c (min_vis_r): Handle anon visibility for enums.

From-SVN: r194430
2012-12-11 17:46:08 -05:00
Jonathan Wakely
3c523cf8a8 re PR libstdc++/55631 (Several ext/ headers can not be #included on their own)
PR libstdc++/55631
	* include/ext/alloc_traits.h: Include missing header.
	* include/ext/pointer.h: Likewise.
	* include/ext/string_conversions.h: Require C++11.
	* libsupc++/initializer_list: Reindent.

From-SVN: r194429
2012-12-11 22:28:01 +00:00
H.J. Lu
ac8701fe91 Add --with-build-config=bootstrap-asan support
* Makefile.def (target_modules): Add bootstrap=true and
	raw_cxx=true to libsanitizer.
	* configure.ac (bootstrap_target_libs): Add libsanitizer.
	* Makefile.in: Regenerated.
	* configure: Likewise.

From-SVN: r194425
2012-12-11 13:35:40 -08:00
H.J. Lu
d10a2df271 Add libstdc++-raw-cxx.m4 and use it in libsanitizer
config/

	PR sanitizer/55533
	* libstdc++-raw-cxx.m4: New file.

libsanitizer/

	PR sanitizer/55533
	* Makefile.am (AM_MAKEFLAGS): Remove CC and CXX.
	* configure.ac (GCC_LIBSTDCXX_RAW_CXX_FLAGS): New.
	* asan/Makefile.am (AM_CXXFLAGS): Add $(LIBSTDCXX_RAW_CXX_CXXFLAGS).
	(AM_MAKEFLAGS): Remove CC and CXX.
	* interception/Makefile.am: Likewise.
	* sanitizer_common/Makefile.am: Likewise.
	* tsan/Makefile.am: Likewise.
	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.
	* asan/Makefile.in: Likewise.
	* interception/Makefile.in: Likewise.
	* sanitizer_common/Makefile.in: Likewise.
	* tsan/Makefile.in: Likewise.

From-SVN: r194424
2012-12-11 13:32:11 -08:00
Marc Glisse
4eab75dd12 re PR c++/53094 (constexpr vector subscripting)
2012-12-11  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/53094
cp/
	* tree.c (cp_tree_equal): Handle VECTOR_CST.
	* semantics.c (cxx_eval_bare_aggregate): Protect a dereference.
	Handle VECTOR_CST.
testsuite/
	* g++.dg/cpp0x/constexpr-53094-1.C: New testcase.
	* g++.dg/cpp0x/constexpr-53094-2.C: Likewise.
	* g++.dg/cpp0x/constexpr-53094-3.C: Likewise.

From-SVN: r194421
2012-12-11 20:20:23 +00:00
Jakub Jelinek
759deff3ac re PR c++/55643 ([C++11] incorrect "warning: variable ‘myVar’ set but not used" with an "enum class"-typed variable is casted to double for the use)
PR c++/55643
	* expr.c (mark_exp_read): Handle FLOAT_EXPR similarly to NOP_EXPR.

	* g++.dg/warn/Wunused-var-19.C: New test.

From-SVN: r194415
2012-12-11 20:01:45 +01:00
Jakub Jelinek
597f805e11 * g++.dg/asan/asan_test.C: Link -lasan before -lpthread.
From-SVN: r194414
2012-12-11 19:51:55 +01:00
Jakub Jelinek
36a58fb342 re PR bootstrap/54926 (Bootstrap comparison failure for various files in libbacktrace)
PR bootstrap/54926
	* Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@.
	* configure.ac: If --with-target-subdir, add -frandom-seed=$@
	to EXTRA_FLAGS unconditionally, otherwise check whether the compiler
	accepts it.
	* Makefile.in: Regenerated.
	* configure: Regenerated.

From-SVN: r194412
2012-12-11 19:45:45 +01:00
Eric Botcazou
e208b05b8b re PR target/54121 (ICE at extract_insn, at recog.c:2123 with -fprofile-generate)
PR target/54121
	* config/sparc/sparc.md (tldo_stb_sp32): Fix pasto.
	(tldo_stb_sp64): Likewise.
	(tldo_sth_sp32): Likewise.
	(tldo_sth_sp64): Likewise.
	(tldo_stw_sp32): Likewise.
	(tldo_stw_sp64): Likewise.
	(tldo_stx_sp64): Likewise.

From-SVN: r194410
2012-12-11 18:42:31 +00:00
Jason Merrill
df266ea5fe re PR c++/54416 (ICE (segv) in codegen)
PR c++/54416
	* pt.c (maybe_process_partial_specialization): Don't accept
	definition of a specialization without the appropriate header.

From-SVN: r194408
2012-12-11 13:16:50 -05:00
Jason Merrill
befd067c5a * pt.c (maybe_process_partial_specialization): Handle aliases first.
From-SVN: r194407
2012-12-11 13:16:39 -05:00
Jakub Jelinek
d0608e59b8 re PR rtl-optimization/55193 (ICE in in simplify_const_unary_operation, at simplify-rtx.c:1659)
PR rtl-optimization/55193
	* lra-constraints.c (loc_equivalence_callback): New function.
	(lra_constraints): Call simplify_replace_fn_rtx instead of
	loc_equivalence_change_p on DEBUG_INSNs.

From-SVN: r194405
2012-12-11 19:01:09 +01:00
Jakub Jelinek
0ab19cbc7a re PR c++/55619 (Chromium build fails with: error: memory input is not directly addressable)
PR c++/55619
	* semantics.c (finish_asm_stmt): Don't call decay_conversion
	on input operands that can be only in memory.

	* g++.dg/ext/asm12.C: New test.

From-SVN: r194404
2012-12-11 17:51:16 +01:00
Jakub Jelinek
cb56d8b09e re PR tree-optimization/54570 (FAIL: gcc.dg/builtin-object-size-8.c execution test)
PR tree-optimization/54570
	* gcc.dg/builtin-object-size-8.c: Xfail.
	* gcc.dg/builtin-object-size-13.c: New test.

From-SVN: r194401
2012-12-11 15:34:57 +01:00
Kyrylo Tkachov
9cd9d33be9 re PR target/55642 (Invalid thumb code generated ("thumb conditional instruction should be in IT block"))
gcc/ChangeLog

2012-12-11  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	PR target/55642
	* config/arm/thumb2.md (*thumb2_abssi2):
	Set ce_count attribute to 2.
	(*thumb2_neg_abssi2): Likewise.


gcc/testsuite/ChangeLog

2012-12-11  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
	PR target/55642
	* gcc.target/arm/pr55642.c: New testcase.

From-SVN: r194398
2012-12-11 14:17:28 +00:00
Jakub Jelinek
a8a6fd74c4 varasm.c (get_variable_section): Don't return lcomm_section for asan_protect_global decls.
* varasm.c (get_variable_section): Don't return lcomm_section
	for asan_protect_global decls.
	* asan.c (asan_protect_global): Only avoid public common variables.
	Don't call get_variable_section here.

From-SVN: r194393
2012-12-11 13:06:07 +01:00
Jakub Jelinek
c699deeb3e re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks)
PR middle-end/43631
	PR bootstrap/55615
	* var-tracking.c (emit_note_insn_var_location): If insn is followed
	by BARRIER, put note after the BARRIER.
	(next_non_note_insn_var_location): Skip over BARRIERs.
	(emit_notes_in_bb): If call is followed by BARRIER, put note after
	the BARRIER.

	* g++.dg/other/pr43631.C: New test.

From-SVN: r194392
2012-12-11 11:41:44 +01:00
Jakub Jelinek
68a9738af0 sanitizer.def: Add comment about importance of ordering of BUILT_IN_ASAN_REPORT* builtins.
* sanitizer.def: Add comment about importance of ordering of
	BUILT_IN_ASAN_REPORT* builtins.
	* cfgcleanup.c (old_insns_match_p): Don't cross-jump __asan_report_*
	builtins.

From-SVN: r194391
2012-12-11 11:28:35 +01:00
Jakub Jelinek
2b2571c99c sanitizer.def (BUILT_IN_ASAN_HANDLE_NO_RETURN): New builtin.
* sanitizer.def (BUILT_IN_ASAN_HANDLE_NO_RETURN): New builtin.
	* asan.c (instrument_builtin_call): Change is_gimple_builtin_call
	gcc_assert to gcc_checking_assert.
	(maybe_instrument_call): Imit __builtin___asan_handle_no_return ()
	before noreturn calls other than __builtin_trap () and
	__builtin_unreachable ().

	* c-c++-common/asan/clone-test-1.c: Remove bogus dg-shouldfail.

From-SVN: r194390
2012-12-11 11:26:56 +01:00
Richard Biener
477a24c1c7 re PR other/54324 (GCC install document does not list minimum required g++ version)
2012-12-11  Richard Biener  <rguenther@suse.de>

	PR other/54324
	* doc/install.texi (Tools/packages necessary for building GCC):
	State ISO C++98 host compiler requirement.  Increment minimum
	GCC version required for building all languages for a cross-compiler
	to 3.4 or later.

From-SVN: r194389
2012-12-11 10:19:21 +00:00
Richard Biener
83ede847e8 re PR tree-optimization/55079 (false positive -Warray-bounds (also seen at -O3 bootstrap))
2012-12-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/55079
	* tree-vrp.c (extract_range_from_binary_expr_1): Handle MAX/MIN_EXPR
	for more cases.
	(register_edge_assert_for_2): Register asserts for post-in/decrement
	tests.
	(check_array_ref): Dump what expression we emit array bound
	warnings for.
	(search_for_addr_array): Likewise.

	* gcc.dg/Warray-bounds-9.c: New testcase.
	* gcc.dg/Warray-bounds-10.c: Likewise.
	* gcc.dg/tree-ssa/ssa-pre-1.c: Adjust.

From-SVN: r194388
2012-12-11 10:06:15 +00:00
Eric Botcazou
c401fb6f18 tree-ssa-loop-ivopts.c (prepare_decl_rtl): Generate RTL only for a DECL which HAS_RTL_P.
* tree-ssa-loop-ivopts.c (prepare_decl_rtl) <ADDR_EXPR>: Generate RTL
	only for a DECL which HAS_RTL_P.

From-SVN: r194387
2012-12-11 09:16:59 +00:00
Uros Bizjak
000030b80b * ChangeLog: Fix whitespace.
From-SVN: r194386
2012-12-11 10:06:10 +01:00
Andreas Krebbel
2771c2f9bf predicates.md ("execute_operation"): New predicate.
2012-12-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/predicates.md ("execute_operation"): New predicate.
	* config/s390/s390.md ("*execute_rl", "*execute"): Use the new
	predicate.

From-SVN: r194385
2012-12-11 08:37:00 +00:00
Eric Botcazou
33e4edab85 * gcc-interface/Make-lang.in (RTS_DIR): Define only if Ada is enabled.
From-SVN: r194384
2012-12-11 08:03:13 +00:00
Benjamin Kosnik
74080cba9b Makefile.am (xml_sources_manual): Add policy_data_structures_biblio.xml.
2012-12-10  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/Makefile.am (xml_sources_manual): Add
	policy_data_structures_biblio.xml.
	(${docbook_outdir}/latex): Add.
	(doc-xml-validate-docbook): Split into..
	(doc-xml-validate-dtd-db):... this for DTD.
	(doc-xml-validate-rng-db):... this for Relax NG.
	(doc-pdf-docbook-dirs): Add.
	(doc-pdf-docbook-pre): Add.
	* doc/xml/manual/build_hacking.xml: Add literal markup.
	* doc/xml/manual/documentation_hacking.xml: Clean whitespace in
	<filename> markup. Add notes about debugging the generation process.
	* doc/xml/manual/policy_data_structures.xml: Split biblio into...
	* doc/xml/manual/policy_data_structures_biblio.xml: ... this. New.
	* doc/xml/manual/test_policy_data_structures.xml: Fixup <filename>
	markup.

From-SVN: r194379
2012-12-11 01:52:14 +00:00
GCC Administrator
b686a89cba Daily bump.
From-SVN: r194378
2012-12-11 00:18:52 +00:00
Janus Weil
5e4404b808 re PR fortran/52909 ([F03] Procedure pointers not private to modules)
2012-12-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/52909
	* trans-decl.c (get_proc_pointer_decl): Apply name mangling.


2012-12-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/52909
	* gfortran.dg/proc_ptr_39.f90: New test case.

From-SVN: r194375
2012-12-11 00:17:43 +01:00
Xinliang David Li
c6f0bffeb3 Enable push/pop for latest x86 CPUs
From-SVN: r194374
2012-12-10 22:28:28 +00:00
Steve Ellcey
5874826139 gnu-user.h (NO_SHARED_SPECS): Add space before option.
2012-12-10  Steve Ellcey  <sellcey@mips.com>

	* config/mips/gnu-user.h (NO_SHARED_SPECS): Add space before option.

From-SVN: r194373
2012-12-10 22:27:49 +00:00
Steve Ellcey
2cd45f0e68 re PR target/54061 (gcc.c-torture/compile/mipscop-*.c ICEs with -g)
2012-12-10  Steve Ellcey  <sellcey@mips.com>

	PR target/54061
	rtl.h (IGNORED_DWARF_REGNUM): New.
	* dwarf2out.c (reg_loc_descriptor): Check for IGNORED_DWARF_REGNUM.
	(mem_loc_descriptor): Ditto.
	* config/mips/mips.h (ALL_COP_REG_FIRST): New.
	(ALL_COP_REG_LAST): New.
	(ALL_COP_REG_NUM): Redefine using above macros.
	* config/mips/mips.c (mips_option_override): Set mips_dbx_regno
	coprocessor entries to IGNORED_DWARF_REGNUM.

From-SVN: r194372
2012-12-10 22:19:16 +00:00
Richard Sandiford
4d63a95eec octeon-bbit-2.c: Restructure loops so that no code duplication is required.
gcc/testsuite/
	* gcc.target/mips/octeon-bbit-2.c: Restructure loops so that no
	code duplication is required.  Allow BNE to appear.

From-SVN: r194370
2012-12-10 20:22:48 +00:00
Eric Botcazou
bc5b54c9ca Make-lang.in (cp/typeck.o): Add dependency on $(PARAMS_H).
* Make-lang.in (cp/typeck.o): Add dependency on $(PARAMS_H).
	(cp/name-lookup.o): Likewise.

From-SVN: r194369
2012-12-10 20:01:26 +00:00
Richard Sandiford
07be21386d ext-2.c: Require -mlong64.
gcc/testsuite/
	* gcc.target/mips/ext-2.c: Require -mlong64.

From-SVN: r194368
2012-12-10 19:55:01 +00:00
Sriraman Tallam
83c90bdb73 Fix ChangeLog entry, move entry from toplevel ChangeLog to gcc/ChangeLog.
From-SVN: r194364
2012-12-10 18:07:36 +00:00
Steven Bosscher
5726ad8486 * decl2.c (cp_write_global_declarations): Return after writing a PCH.
From-SVN: r194363
2012-12-10 17:58:45 +00:00
H.J. Lu
570e71f8a0 Record the global variables if WPA isn't enabled
PR lto/55466
	* lto-symtab.c (lto_symtab_merge_decls_1): Don't record the
	prevailing variable.
	* lto.c (lto_register_var_decl_in_symtab): Don't record static
	variables.
	(lto_main): Record the global variables if WPA isn't enabled.

From-SVN: r194359
2012-12-10 06:43:54 -08:00
Richard Biener
4bcc5786cc re PR tree-optimization/55107 (GCC in an infinite loop in PRE)
2012-12-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/55107
	* tree-ssa-pre.c (struct pre_stats): Remove constified field.
	(bitmap_set_replace_value): Add gcc_unreachable.
	(do_regular_insertion): Re-write all_same handling.  Insert
	an assignment instead of a PHI in this case.
	(eliminate_bb): Record availability also for SSA names defined
	by a constant.
	(do_pre): Do not record constified events.
	(execute_fre): Likewise.

	* gcc.dg/torture/pr55107.c: New testcase.
	* gcc.dg/tree-ssa/ssa-pre-5.c: Adjust.

From-SVN: r194358
2012-12-10 14:00:25 +00:00
Andreas Krebbel
46e8409ef2 spu.md: Replace "operands" with "operands != NULL" in insn conditions.
2012-12-10  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/spu/spu.md: Replace "operands" with "operands != NULL" in
	insn conditions.

From-SVN: r194357
2012-12-10 13:15:05 +00:00
Jakub Jelinek
8bdfe1fae6 asan_test.cc: Sync from upstream.
* g++.dg/asan/asan_test.cc: Sync from upstream.
	* g++.dg/asan/asan_test_utils.h: Likewise.

From-SVN: r194356
2012-12-10 13:19:10 +01:00
Jakub Jelinek
94fce891a5 asan.c (asan_init_shadow_ptr_types): Move earlier in the file.
* asan.c (asan_init_shadow_ptr_types): Move earlier in the file.
	Call initialize_sanitizer_builtins at the end.
	(asan_pp_string): Use TREE_TYPE (shadow_ptr_types[0])
	as character type instead of char_type_node.
	(asan_emit_stack_protection): Call asan_init_shadow_ptr_types
	if shadow_ptr_types isn't initialized.
	(asan_protect_global): Return true for STRING_CSTs except those
	created by asan_pp_string.
	(count_string_csts, add_string_csts): New functions.
	(struct asan_add_string_csts_data): New type.
	(asan_finish_file): Clear flag_asan at the beginning, restore at the
	end.  Traverse constant_pool_htab () to look for protected
	STRING_CSTs.  Don't call initialize_sanitizer_builtins,
	instead call asan_init_shadow_ptr_types if shadow_ptr_types isn't
	initialized yet.
	(asan_instrument): Don't call initialize_sanitizer_builtins.
	* varasm.c (output_constant_def_contents): If STRING_CST should be
	asan protected, align it sufficiently and emit padding after it.
	(categorize_decl_for_section): If flag_asan, don't put STRING_CSTs
	that should be asan protected into mergeable sections.  For
	-fmerge-all-constants, ignore it for -fmudflap or if decl is
	asan protected.

From-SVN: r194355
2012-12-10 13:14:36 +01:00
Kyrylo Tkachov
8d28afb446 neon.ml (opcode): Add Vrintn, Vrinta, Vrintp, Vrintm, Vrintz to type.
gcc/ChangeLog

2012-12-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/neon.ml (opcode): Add Vrintn, Vrinta, Vrintp, Vrintm,
	Vrintz to type.
	(type features): Add Requires_arch type constructor.
	(ops): Define Vrintn, Vrinta, Vrintp, Vrintm, Vrintz features.
	* config/arm/neon-docgen.ml (intrinsic_groups): Define Vrintn,
	Vrinta, Vrintp, Vrintm, Vrintz, Vrintx.
	* config/arm/neon-testgen.ml (effective_target): Define check for 
	Requires_arch 8.
	* config/arm/neon-gen.ml 
	(print_feature_test_start): Handle Requires_arch.
	(print_feature_test_end): Likewise.
	Add 2012 to Copyright notice.
	* doc/arm-neon-intrinsics.texi: Regenerate.
	* config/arm/arm_neon.h: Regenerate.

gcc/testsuite/ChangeLog

2012-12-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* gcc.target/arm/neon/vrndaf32.c: New test.
	* gcc.target/arm/neon/vrndqaf32.c: Likewise.
	* gcc.target/arm/neon/vrndf32.c: Likewise.
	* gcc.target/arm/neon/vrndqf32.c: Likewise.
	* gcc.target/arm/neon/vrndmf32.c: Likewise.
	* gcc.target/arm/neon/vrndqmf32.c: Likewise.
	* gcc.target/arm/neon/vrndnf32.c: Likewise.
	* gcc.target/arm/neon/vrndqnf32.c: Likewise.
	* gcc.target/arm/neon/vrndpf32.c: Likewise.
	* gcc.target/arm/neon/vrndqpf32.c: Likewise.

From-SVN: r194353
2012-12-10 11:09:12 +00:00
Kai Tietz
0da911e95e * stmt.c (expand_sjlj_dispatch_table): Fix off by one.
From-SVN: r194351
2012-12-10 11:00:19 +01:00
Kai Tietz
58ccdcc8c2 re PR bootstrap/53912 (bootstrap fails using default c++ mode in stage 2 and 3 for native x86_64-w64-mingw32)
PR target/53912
	* stmt.c (compute_cases_per_edge): Cast from pointer via intptr_t.
	(expand_case): Likewise.

From-SVN: r194350
2012-12-10 10:57:02 +01:00
Kai Tietz
7e48e2758d re PR bootstrap/53912 (bootstrap fails using default c++ mode in stage 2 and 3 for native x86_64-w64-mingw32)
PR target/53912
	* print-tree.c (print_node): Cast from pointer via uintptr_t.

From-SVN: r194348
2012-12-10 10:53:08 +01:00