Commit Graph

136492 Commits

Author SHA1 Message Date
Thomas Schwinge 8747dd6e13 nvptx-none: Define empty GOMP_SELF_SPECS.
Otherwise, offloading with -fopenacc or -fopenmp active will run into:

    x86_64-unknown-linux-gnu-accel-nvptx-none-gcc: error: unrecognized command line option '-pthread'

	gcc/
	* config/nvptx/nvptx.h (GOMP_SELF_SPECS): Define macro.

From-SVN: r220780
2015-02-18 08:45:42 +01:00
Andrew Pinski e6f7f0e951 aarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.
* config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
	Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.


Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>

From-SVN: r220779
2015-02-18 04:40:10 +00:00
GCC Administrator 17d32dee97 Daily bump.
From-SVN: r220778
2015-02-18 00:16:11 +00:00
Jan Hubicka 1ede94c559 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 gueards.

From-SVN: r220775
2015-02-17 21:57:53 +00:00
Oleg Endo f05911fb07 sh.opt (mcbranch-force-delay-slot): New option.
gcc/
	* config/sh/sh.opt (mcbranch-force-delay-slot): New option.
	* doc/invoke.texi (SH options): Document it.
	* config/sh/sh.c (sh_insn_length_adjustment): Check
	TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E.

gcc/testsuite/
	* gcc.target/sh/sh.exp (check_effective_target_sh1): New.
	* gcc.target/sh/force-cbranch-delay-slot.c: New.

From-SVN: r220774
2015-02-17 21:38:12 +00:00
H.J. Lu 3c99176a7f Add -fipa-cp-alignment
This patch adds -fipa-cp-alignment to provide a way to enable/disable
alignment discovery and propagation in IPA-CP.

gcc/

	* common.opt (fipa-cp-alignment): New.
	* ipa-cp.c (ipcp_store_alignment_results): Check
	flag_ipa_cp_alignment.
	* opts.c (default_options_table): Enable -fipa-cp-alignment for
	-O2.
	(enable_fdo_optimizations): Set x_flag_ipa_cp_alignment.
	* doc/invoke.texi: Document -fipa-cp-alignment.

gcc/testsuite/

	* gcc.dg/ipa/propalign-3.c: New test.

From-SVN: r220773
2015-02-17 13:25:56 -08:00
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