Commit Graph

136636 Commits

Author SHA1 Message Date
Oleg Endo
d420206ea5 re PR target/64793 ([SH] missed delay slot)
gcc/
	PR target/64793
	* config/sh/sh.md (cbranch define_delay): Set annulled true branch insn
	to nil.  Adjust comments.

gcc/testsuite/
	PR target/64793
	* gcc.target/sh/pr64793.c: New.
	* gcc.target/sh/pr51244-20-sh2a.c: Adjust expected cmp/gt insn count.

From-SVN: r220772
2015-02-17 21:08:24 +00:00
Jan Hubicka
1379ce8faf ipa-visibility.c (function_and_variable_visibility): Only check locality if node is not already local.
* ipa-visibility.c (function_and_variable_visibility): Only
	check locality if node is not already local.
	* ipa-inline.c (want_inline_function_to_all_callers_p): Use
	call_for_symbol_and_aliases instead of
	call_for_symbol_thunks_and_aliases.
	(ipa_inline): Likewise.
	* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
	first walk aliases.
	* ipa.c (symbol_table::remove_unreachable_nodes): Use
	call_for_symbol_and_aliases.
	* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
	(ipa_propagate_frequency_1): Use it; use opt_for_fn
	(ipa_propagate_frequency): Update.
	(ipa_profile): Add opt_for_fn guards.

From-SVN: r220771
2015-02-17 20:58:43 +00:00
Thomas Schwinge
a2818955d7 libgomp: Make GOMP_PLUGIN_debug actually work...
libgomp/
	* libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.

From-SVN: r220770
2015-02-17 19:24:07 +01:00
Thomas Schwinge
6f3c1d38bf nvptx mkoffload: Fix logic error in skipping of "strange" tokens.
gcc/
	* config/nvptx/mkoffload.c (parse_file): Fix logic error in
	skipping of "strange" tokens.

From-SVN: r220769
2015-02-17 19:13:32 +01:00
Thomas Schwinge
26f9331258 libgomp: Make nvptx helper routines self-contained.
libgomp/
	* oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
	GOACC_ctaid, and GOACC_nctaid routines.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>

From-SVN: r220768
2015-02-17 19:05:24 +01:00
Sandra Loosemore
53cfb467cf bpabi.S (test_div_by_zero): Make label names consistent between thumb2 and arm mode cases.
2015-02-17  Sandra Loosemore  <sandra@codesourcery.com>

	libgcc/
	* config/arm/bpabi.S (test_div_by_zero): Make label names
	consistent between thumb2 and arm mode cases.  Separate the
	signed comparison on the high word of the numerator from the
	unsigned comparison on the low word.
	* config/arm/bpabi-v6m.S (test_div_by_zero): Similarly separate
	signed comparison.

	gcc/testsuite/
	* gcc.target/arm/divzero.c: New test case.

From-SVN: r220765
2015-02-17 12:39:22 -05:00
Joseph Myers
77d10a1b20 Avoid dependence on libc headers in nvptx realloc.
* config/nvptx/realloc.c: Include <stddef.h> instead of <stdlib.h>
	and <string.h>.
	(__nvptx_realloc): Call __builtin_memcpy instead of memcpy.

From-SVN: r220764
2015-02-17 16:19:56 +00:00
Jeff Law
1d93fa5c1b tree-vrp.c (identify_jump_threads): Use last_stmt.
* tree-vrp.c (identify_jump_threads): Use last_stmt.  Remove
        obsolete comment.

From-SVN: r220763
2015-02-17 08:32:05 -07:00
Daniel Richard G.
ba5b5e2431 Change stdlib.h base, not inttypes.h
From-SVN: r220761
2015-02-17 09:45:48 -05:00
Rüdiger Sonderfeld
fb96818737 char32_t.cc: New.
2015-02-17  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
	    Jonathan Wakely  <jwakely@redhat.com>

	* testsuite/22_locale/codecvt/char32_t.cc: New.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>

From-SVN: r220760
2015-02-17 14:25:48 +00:00
Alan Lawrence
09008d80b6 Correct ChangeLog entry (2015-02-04)
From-SVN: r220759
2015-02-17 14:08:59 +00:00
Jonathan Wakely
faa7d78e41 re PR libstdc++/65085 (Move-assigned empty string corrupt with -D_GLIBCXX_USE_CXX11_ABI=1)
PR libstdc++/65085
	* include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
	empty string gets null-terminated.
	* testsuite/21_strings/basic_string/cons/char/65085.cc: New.

From-SVN: r220758
2015-02-17 12:44:26 +00:00
Tom de Vries
06e6dc291c Add gcc.target/x86_64/abi/callabi/vaarg-6.c
2015-02-17  Tom de Vries  <tom@codesourcery.com>

	* gcc.target/x86_64/abi/callabi/vaarg-6.c: New test.

From-SVN: r220757
2015-02-17 11:42:26 +00:00
James Greenhalgh
61a17dcaf2 [Haifa Scheduler] Fix latent bug in macro-fusion/instruction grouping
gcc/

	* haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
	as forcing a HARD_DEP between instructions, thereby
	disallowing rewriting to break dependencies.

From-SVN: r220751
2015-02-17 09:19:33 +00:00
Jan Hubicka
87be7f0cbb symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
* symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
	* lto-cgraph.c (lto_output_varpool_node): Do not keep definition of
	variables in boundary that have no inlitalizer encoded and are
	not aliases.
	* varasm.c (default_binds_local_p_2): External definitions do not
	count as definitions here.

From-SVN: r220749
2015-02-17 08:58:37 +00:00
Paolo Carlini
4414e22eee re PR c++/65075 (constexpr regression)
PR c++/65075
	* constexpr.c (check_constexpr_bind_expr_vars): Allow
	implicit typedefs for lambda types.

	* g++.dg/cpp0x/pr65075.C: New test.

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

From-SVN: r220748
2015-02-17 09:25:30 +01:00
GCC Administrator
524d87f3a5 Daily bump.
From-SVN: r220747
2015-02-17 00:16:12 +00:00
David Edelsohn
242789de09 re PR target/65058 (AIX: missing extern decorations "[DS]" for functions and "[UA]" for variables)
PR target/65058
        * gcc.target/powerpc/pr65058.c: New test.

From-SVN: r220744
2015-02-16 18:03:33 -05:00
Jeff Law
215f8d9eb3 re PR tree-optimization/64823 (false "may be used uninitialized", missed jump threading)
PR tree-optimization/64823
	* tree-vrp.c (identify_jump_threads): Handle blocks with no real
	statements.
	* tree-ssa-threadedge.c (potentially_threadable_block): Allow
	threading through blocks with PHIs, but no statements.
	(thread_through_normal_block): Distinguish between blocks where
	we did not process all the statements and blocks with no statements.

	PR tree-optimization/64823
	* gcc.dg/uninit-20.c: New test.

From-SVN: r220743
2015-02-16 13:56:55 -07:00
Jakub Jelinek
ed89033d7c re PR ipa/64963 (IPA Cloning/Splitting does not copy function section attributes resulting in kernel miscompilation)
PR ipa/64963
	* cgraphclones.c (cgraph_node::create_virtual_clone): Copy
	section if not linkonce.  Fix up formatting.
	(cgraph_node::create_version_clone_with_body): Copy section.
	* trans-mem.c (ipa_tm_create_version): Likewise.

	* gcc.dg/ipa/ipa-clone-1.c: New test.

Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>

From-SVN: r220742
2015-02-16 20:22:57 +01:00
Richard Biener
7b909872f1 re PR tree-optimization/65077 (memcpy generates incorrect code with floating point numbers and -O1)
2015-02-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65077
	* tree-ssa-structalias.c (get_constraint_for_1): Handle
	IMAGPART_EXPR, REALPART_EXPR and BIT_FIELD_REF.
	(find_func_aliases): Allow float values to carry pointers again.

	* gcc.dg/torture/pr65077.c: New testcase.

From-SVN: r220741
2015-02-16 18:15:19 +00:00
Alex Velenko
3f880d38dc atomic-op-consume.c (scan-assember-times): Directive adjusted to scan for ldaxr.
gcc/testsuite/

	* gcc.target/aarch64/atomic-op-consume.c (scan-assember-times):
	Directive adjusted to scan for ldaxr.
	* gcc.target/arm/atomic-op-consume.c (scan-assember-times): Directive
	adjusted to scan for ldaex.

From-SVN: r220740
2015-02-16 18:12:10 +00:00
Paolo Carlini
205c0affca re PR c++/65080 (constexpr-ness lost by using alias in definition)
2015-02-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65080
	* g++.dg/cpp0x/constexpr-65080.C: New.

From-SVN: r220739
2015-02-16 17:48:08 +00:00
James Greenhalgh
4fb1c8f97a [Patch docs obvious] install.texi: Put aarch64 back in alphabetical order, add link
gcc/

	* doc/install.texi (Specific): Reorder targets list to put
	aarch64 in alphabetical order.  Add a link to aarch64*-*-*
	from the top menu.

From-SVN: r220738
2015-02-16 16:28:16 +00:00
David Edelsohn
403697abae [multiple changes]
2015-02-16  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
            David Edelsohn  <dje.gcc@gmail.com>

        PR target/65058
        * config/rs6000/rs6000.c (rs6000_output_symbol_ref): Append storage
        mapping class to external variable or function reference.
        * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Do not append storage
        mapping class.

2015-02-16  David Eelsohn  <dje.gcc@gmail.com>

        PR target/53348
        * config/rs6000/rs6000.c (rs6000_declare_alias): Only use
        ASM_WEAKEN_DECL if defined.

From-SVN: r220737
2015-02-16 10:33:09 -05:00
Daniel Richard G.
266c722faf Daniel Richard G.
Daniel Richard G. <skunk@iskunk.org>
        PR bootstrap/48009
        PR bootstrap/53348
        * inclhack.def (aix_strtof_const): New fix.
        * fixincl.x: Regenerate.
        * tests/base/inttypes.h: New test.

From-SVN: r220736
2015-02-16 10:19:20 -05:00
Richard Biener
2d4df88383 re PR lto/65015 (LTO produces randomly ordered debug information)
2015-02-16  Richard Biener  <rguenther@suse.de>

	PR lto/65015
	* varasm.c (default_file_start): For LTO produced units
	emit <artificial> as file directive.

From-SVN: r220735
2015-02-16 14:53:23 +00:00
Richard Biener
a933d47ffa re PR tree-optimization/63593 (ICE: verify_gimple failed: incompatible types in PHI argument 0 with -O3 -fno-tree-vectorize)
2015-02-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63593
	* tree-predcom.c (execute_pred_commoning_chain): Delay removing
	stmts and releasing SSA names until...
	(execute_pred_commoning): ... after processing all chains.

	* gcc.dg/pr63593.c: New testcase.

From-SVN: r220734
2015-02-16 14:52:14 +00:00
Jan Hubicka
62991c35a8 re PR ipa/65059 (Chrome LTO: lto1: internal compiler error: in ipa_comdats, at ipa-comdats.c:360)
Fix PR ipa/65059.

	PR ipa/65059
	* ipa-comdats.c (ipa_comdats): Do not categorize thunks to
	external functions.

From-SVN: r220733
2015-02-16 12:28:40 +00:00
Marek Polacek
3d5cb23da1 re PR c/65066 (ICE: Segmentation fault with -Wformat=2)
PR c/65066
	* c-format.c (check_format_types): Handle null param.

	* gcc.dg/pr65066.c: New test.

From-SVN: r220732
2015-02-16 11:16:33 +00:00
Ilya Enkovich
d39023b4d5 pr65002.C: Move ...
gcc/testsuite/

	* gcc.dg/pr65002.C: Move ...
	* g++.dg/ipa/pr65002.C: ... here.

From-SVN: r220731
2015-02-16 10:03:26 +00:00
Sandra Loosemore
e6f3f526b1 bugreport.texi: Adjust section titles throughout the file to use "Title Case".
2015-02-15  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/bugreport.texi: Adjust section titles throughout the file
	to use "Title Case".
	* doc/extend.texi: Likewise.
	* doc/gcov.texi: Likewise.
	* doc/implement-c.texi: Likewise.
	* doc/implement-cxx.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/objc.texi: Likewise.
	* doc/standards.texi: Likewise.
	* doc/trouble.texi: Likewise.

From-SVN: r220722
2015-02-15 22:47:54 -05:00
GCC Administrator
32b8f2ec59 Daily bump.
From-SVN: r220721
2015-02-16 00:16:15 +00:00
Jan Hubicka
190bbd0b03 cgraph.h (symtab_node::has_aliases_p): Simplify.
* cgraph.h (symtab_node::has_aliases_p): Simplify.
	(symtab_node::call_for_symbol_and_aliases): Use has_aliases_p
	* tree.c (lookup_binfo_at_offset): Make static.
	(get_binfo_at_offset): Do not shadow offset; add explanatory
	comment.

From-SVN: r220718
2015-02-15 22:30:16 +00:00
John David Anglin
feb675e408 pa.c (pa_secondary_reload): Request a secondary reload for all floading point loads and stores except those...
* config/pa/pa.c (pa_secondary_reload): Request a secondary reload
	for all floading point loads and stores except those using a register
	index address.
	* config/pa/pa.md: Add new patterns to load a lo_sum DLT operand
	to a register.

From-SVN: r220716
2015-02-15 15:18:47 +00:00
David Edelsohn
dbf73e6e28 pr64205.c: Skip on AIX.
* gcc.target/powerpc/pr64205.c: Skip on AIX.
* gcc.target/powerpc/pr64505.c: Skip on AIX.
* gcc.dg/torture/builtin-noret-1.c: Ignore AIX linker warnings.
* gcc.dg/torture/builtin-noret-2.c: Ignore AIX linker warnings.

From-SVN: r220715
2015-02-14 23:01:29 -05:00
GCC Administrator
6ed70ac0a5 Daily bump.
From-SVN: r220714
2015-02-15 00:16:11 +00:00
Kaz Kojima
d3fb59c4b7 re PR testsuite/64850 (FAIL: gfortran.dg/goacc/acc_on_device-1.f95 -O scan-rtl-dump-times expand "\\(call [^\\n]*\\"acc_on_device" 4)
PR testsuite/64850
Tweak acc_on_device* tests.

From-SVN: r220711
2015-02-14 23:50:25 +00:00
Jan Hubicka
cf3648f245 ipa-inline-analysis.c (growth_data): Add uninlinable field.
* ipa-inline-analysis.c (growth_data): Add uninlinable field.
	(do_estimate_growth_1): Record if any uninlinable edge was seen.
	(estimate_growth): Handle uninlinable edges correctly.
	(check_callers): New.
	(growth_likely_positive): Handle aliases correctly.

From-SVN: r220710
2015-02-14 23:46:25 +00:00
Jan Hubicka
31de760604 ipa-chkp.c: Use iterate_direct_aliases.
* ipa-chkp.c: Use iterate_direct_aliases.
	* symtab.c (resolution_used_from_other_file_p): Move inline.
	(symtab_node::create_reference): Fix formating.
	(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
	(symtab_node::iterate_reference): Move inline.
	(symtab_node::iterate_referring): Move inline.
	(symtab_node::iterate_direct_aliases): Move inline.
	(symtab_node::used_from_object_file_p_worker): Inline into ...
	(symtab_node::used_from_object_file_p): ... this one; move inline.
	(symtab_node::call_for_symbol_and_aliases): Move inline;
	use iterate_direct_aliases.
	(symtab_node::call_for_symbol_and_aliases_1): New method.
	(cgraph_node::call_for_symbol_and_aliases): Move inline;
	use iterate_direct_aliases.
	(cgraph_node::call_for_symbol_and_aliases_1): New method.
	(varpool_node::call_for_node_and_aliases): Rename to ...
	(varpool_node::call_for_symbol_and_aliases): ... this one; Move inline;
	use iterate_direct_aliases.
	(varpool_node::call_for_symbol_and_aliases_1): New method.
	* ipa.c (ipa_single_use): Use iterate_direct_aliases.
	(ipa_discover_readonly_nonaddressable_var): Update.
	* ipa-devirt.c: Fix formating.
	* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_and_refs_p):
	Move inline.
	(cgraph_node::call_for_symbol_and_aliases): Move inline.
	(cgraph_node::call_for_symbol_and_aliases_1): New function..
	* cgraph.h (used_from_object_file_p_worker): Remove.
	(resolution_used_from_other_file_p): Move inline.
	(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
	(symtab_node::iterate_reference): Move inline.
	(symtab_node::iterate_referring): Move inline.
	(symtab_node::iterate_direct_aliases): Move inline.
	(symtab_node::used_from_object_file_p_worker): Inline into ...
	(symtab_node::used_from_object_file_p): Move inline.
	* tree-emutls.c (ipa_lower_emutls): Update.
	* varpool.c (varpool_node::call_for_symbol_and_aliases_1): New method.
	(varpool_node::call_for_node_and_aliases): Remove.

From-SVN: r220709
2015-02-14 18:42:49 +00:00
Marek Polacek
065d214ce4 re PR c/64768 (internal compiler error: tree check: expected tree that contains ‘decl with RTL’ structure, have ‘field_decl’ in set_decl_rtl, at emit-rtl.c:1274)
PR c/64768
	* c-decl.c (grokdeclarator): Set the range of a flexible array member
	declared through a typedef name.

	* gcc.dg/array-11.c: New test.
	* gcc.dg/array-12.c: New test.
	* gcc.dg/array-13.c: New test.
	* gcc.dg/array-14.c: New test.
	* gcc.dg/c99-flex-array-typedef-1.c: New test.
	* gcc.dg/c99-flex-array-typedef-2.c: New test.
	* gcc.dg/c99-flex-array-typedef-3.c: New test.
	* gcc.dg/c99-flex-array-typedef-5.c: New test.
	* gcc.dg/c99-flex-array-typedef-7.c: New test.
	* gcc.dg/c99-flex-array-typedef-8.c: New test.

From-SVN: r220708
2015-02-14 11:25:19 +00:00
Jakub Jelinek
952e216e5a re PR tree-optimization/62209 (ICE with LTO on valid code on x86_64-linux-gnu)
PR tree-optimization/62209
	* tree-ssa-reassoc.c (update_range_test): If stmt is a PHI and
	op == range->exp, insert seq and gimplified code after labels
	instead of after the phi.

From-SVN: r220706
2015-02-14 09:23:18 +01:00
GCC Administrator
b671235f79 Daily bump.
From-SVN: r220705
2015-02-14 00:16:11 +00:00
Paolo Carlini
6e4f01ff4d re PR c++/60894 (Use of redundant struct keyword in function prototype combined with using statement causes compilation error)
/cp
2015-02-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60894
	* decl.c (lookup_and_check_tag): Use strip_using_decl.

/testsuite
2015-02-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60894
	* g++.dg/lookup/using54.C: New.

From-SVN: r220702
2015-02-13 23:57:10 +00:00
Jeff Law
c7a28c1bc2 re PR bootstrap/65060 (r220696 breaks bootstrap on Linux/x86-32)
PR bootstrap/65060
        Revert my change for tree-optimization/64823.

From-SVN: r220701
2015-02-13 16:53:54 -07:00
Jakub Jelinek
f7a0790f3c re PR tree-optimization/65053 (PostgreSQL miscompilation)
PR tree-optimization/65053
	* tree-ssa-phiopt.c (value_replacement): When moving assign before
	cond, either reset VR on lhs or set it to phi result VR.

	* gcc.c-torture/execute/pr65053-1.c: New test.
	* gcc.c-torture/execute/pr65053-2.c: New test.

From-SVN: r220700
2015-02-14 00:20:31 +01:00
Marek Polacek
e5d9235ba9 re PR c/65050 (Show the type for "array type has incomplete element type" error)
PR c/65050
	* c-decl.c (grokdeclarator): Print also the type when giving
	the error message about array's incomplete element type.

	* gcc.dg/pr65050.c: New test.

From-SVN: r220698
2015-02-13 22:07:36 +00:00
Jason Merrill
ef796bef88 re PR c++/65054 (internal compiler error: in maybe_constant_value, at cp/constexpr.c:3646)
PR c++/65054
	* pt.c (template_args_equal): Look through conversions here.
	* tree.c (cp_tree_equal): Not here.

From-SVN: r220697
2015-02-13 17:07:30 -05:00
Jeff Law
8f895cf1ac re PR tree-optimization/64823 (false "may be used uninitialized", missed jump threading)
PR tree-optimization/64823
	* tree-vrp.c (identify_jump_threads): Handle blocks with no statements.
	* tree-ssa-threadedge.c (potentially_threadable_block): Allow
	threading through blocks with PHIs, but no statements.
	(thread_through_normal_block): Distinguish between blocks where
	we did not process all the statements and blocks with no statements.

	PR tree-optimization/64823
	gcc.dg/uninit-20.c: New test.

From-SVN: r220696
2015-02-13 14:09:58 -07:00
Jeff Law
be1448389a re PR rtl-optimization/47477 (Sub-optimal mov at end of method)
PR rtl-optimization/47477
	* match.pd (convert (plus/minus (convert @0) (convert @1): New
	simplifier to narrow arithmetic.

	PR rtl-optimization/47477
	* gcc.dg/tree-ssa/pr47477.c: New test.

From-SVN: r220695
2015-02-13 13:17:55 -07:00