platform/upstream/gcc.git
10 years agoasan_linux.cc: Cherry pick upstream r210012.
Richard Biener [Wed, 11 Jun 2014 11:35:48 +0000 (11:35 +0000)]
asan_linux.cc: Cherry pick upstream r210012.

2014-06-11  Richard Biener  <rguenther@suse.de>

* asan/asan_linux.cc: Cherry pick upstream r210012.

From-SVN: r211453

10 years agore PR tree-optimization/61452 (hang at -O1 and -Os on x86_64-linux-gnu)
Richard Biener [Wed, 11 Jun 2014 11:17:21 +0000 (11:17 +0000)]
re PR tree-optimization/61452 (hang at -O1 and -Os on x86_64-linux-gnu)

2014-06-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61452
* tree-ssa-sccvn.c (visit_phi): Remove pointless setting of
expr and has_constants in case we found a leader.
(simplify_binary_expression): Always valueize operands first.
(simplify_unary_expression): Likewise.

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

From-SVN: r211450

10 years agoDelete temporary string within demangler even in failure cases.
Andrew Burgess [Wed, 11 Jun 2014 10:57:27 +0000 (10:57 +0000)]
Delete temporary string within demangler even in failure cases.

A call to demangle_template might allocate storage within a temporary
string even if the call to demangle_template eventually returns
failure.

This will never cause the demangler to crash, but does leak memory, as
a result I've not added any tests for this.

Calling string_delete is safe, even if nothing is allocated into the
string, the string is initialised with string_init, so we know the
internal pointers are NULL.

libiberty/ChangeLog

* cplus-dem.c (do_type): Call string_delete even if the call to
demangle_template fails.

From-SVN: r211449

10 years ago[multiple changes]
Arnaud Charlet [Wed, 11 Jun 2014 10:55:15 +0000 (12:55 +0200)]
[multiple changes]

2014-06-11  Robert Dewar  <dewar@adacore.com>

* debug.adb: Add debug flag -gnatd.q.
* erroutc.adb (Prescan_Message): Bomb if untagged warning with
-gnatd.q set.
* styleg.adb (Check_Xtra_Parens): Message should be a style
message.
* sem_aggr.adb, sem_ch3.adb, exp_ch9.adb, checks.adb, sem_prag.adb,
par-endh.adb, eval_fat.adb, freeze.adb, sem_util.adb, sem_attr.adb,
sem_elab.adb, sem_ch6.adb, sem_warn.adb, sem_cat.adb,
sem_ch13.adb, lib-xref.adb: Add remaining warning tags.

2014-06-11  Ben Brosgol  <brosgol@adacore.com>

* gnat_rm.texi: Revised chapter on Implementation Defined
Characteristics.

From-SVN: r211448

10 years ago[multiple changes]
Arnaud Charlet [Wed, 11 Jun 2014 10:52:35 +0000 (12:52 +0200)]
[multiple changes]

2014-06-11  Geert Bosch  <bosch@adacore.com>

* s-exctab.adb: avoid race conditions in exception registration.

2014-06-11  Robert Dewar  <dewar@adacore.com>

* errout.adb (Warn_Insertion): New function.
(Error_Msg): Use Warn_Insertion and Prescan_Message.
(Error_Msg_Internal): Set Info field of error object.
(Error_Msg_NEL): Use Prescan_Message.
(Set_Msg_Text): Don't store info: at start of message.
(Skip_Msg_Insertion_Warning): New name for Set_Msg_Insertion_Warning.
(Skip_Msg_Insertion_Warning): Now just skips warning insertion.
* errout.ads: Document new ?$? and >$> insertion sequences
Document use of "(style)" and "info: "
* erroutc.adb (dmsg): Print several missing fields
(Get_Warning_Tag): Handle -gnatel case (?$?)  (Output_Msg_Text):
Deal with new tagging of info messages
* erroutc.ads: Is_Info_Msg: New global (Error_Msg_Object):
Add field Info (Prescan_Message): New procedure, this procedure
replaces the old Test_Style_Warning_Serious_Unconditional_Msg
* errutil.adb, exp_util.adb, par-ch7.adb, sem_ch13.adb, sem_ch7.adb,
sem_elab.adb: Follow new rules for info message (info belongs
only at the start of a message, and only in the first message,
not in any of the continuations).
* gnat_ugn.texi: Document full set of warning tags.

From-SVN: r211447

10 years ago[multiple changes]
Arnaud Charlet [Wed, 11 Jun 2014 10:49:33 +0000 (12:49 +0200)]
[multiple changes]

2014-06-11  Gary Dismukes  <dismukes@adacore.com>

* sem_util.adb: Minor typo fix.

2014-06-11  Ed Schonberg  <schonberg@adacore.com>

* sem_warn.adb (Check_References): Do not emit spurious warnings
on uninitialzed variable of a formal private type if variable
is not read.

From-SVN: r211446

10 years agore PR c++/34049 (Parentheses-enclosed expression.)
Paolo Carlini [Wed, 11 Jun 2014 10:24:55 +0000 (10:24 +0000)]
re PR c++/34049 (Parentheses-enclosed expression.)

2014-06-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/34049
* g++.dg/parse/pr34049.C: New.

From-SVN: r211445

10 years agore PR tree-optimization/61306 (wrong code at -Os and above on x86_64-linux-gnu)
Thomas Preud'homme [Wed, 11 Jun 2014 10:04:33 +0000 (10:04 +0000)]
re PR tree-optimization/61306 (wrong code at -Os and above on x86_64-linux-gnu)

2014-06-11  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/61306
    * tree-ssa-math-opts.c (struct symbolic_number): Store type of
    expression instead of its size.
    (do_shift_rotate): Adapt to change in struct symbolic_number. Return
    false to prevent optimization when the result is unpredictable due to
    arithmetic right shift of signed type with highest byte is set.
    (verify_symbolic_number_p): Adapt to change in struct symbolic_number.
    (init_symbolic_number): Likewise.
    (find_bswap_or_nop_1): Likewise. Return NULL to prevent optimization
    when the result is unpredictable due to sign extension.

    gcc/testsuite/
    * gcc.c-torture/execute/pr61306-1.c: New test.
    * gcc.c-torture/execute/pr61306-2.c: Likewise.
    * gcc.c-torture/execute/pr61306-3.c: Likewise.

From-SVN: r211444

10 years agoarm.md (*thumb1_adddi3): Move into new file thumb1.md.
Terry Guo [Wed, 11 Jun 2014 09:47:35 +0000 (09:47 +0000)]
arm.md (*thumb1_adddi3): Move into new file thumb1.md.

2014-06-11  Terry Guo  <terry.guo@arm.com>

* config/arm/arm.md (*thumb1_adddi3): Move into new file thumb1.md.
(*thumb1_addsi3): Ditto.
(*thumb_subdi3): Ditto.
(thumb1_subsi3_insn): Ditto.
(*thumb_mulsi3): Ditto.
(*thumb_mulsi3_v6): Ditto.
(*thumb1_andsi3_insn): Ditto.
(thumb1_bicsi3): Ditto.
(*thumb1_iorsi3_insn): Ditto.
(*thumb1_xorsi3_insn): Ditto.
(*thumb1_ashlsi3): Ditto.
(*thumb1_ashrsi3): Ditto.
(*thumb1_lshrsi3): Ditto.
(*thumb1_rotrsi3): Ditto.
(*thumb1_negdi2): Ditto.
(*thumb1_negsi2): Ditto.
(*thumb1_abssi2): Ditto.
(*thumb1_neg_abssi2): Ditto.
(*thumb1_one_cmplsi2): Ditto.
(*thumb1_zero_extendhisi2): Ditto.
(*thumb1_zero_extendqisi2): Ditto.
(*thumb1_zero_extendqisi2_v6): Ditto.
(thumb1_extendhisi2): Ditto.
(thumb1_extendqisi2): Ditto.
(*thumb1_movdi_insn): Ditto.
(*thumb1_movsi_insn): Ditto.
(*thumb1_movhi_insn): Ditto.
(thumb_movhi_clobber): Ditto.
(*thumb1_movqi_insn): Ditto.
(*thumb1_movhf): Ditto.
(*thumb1_movsf_insn): Ditto.
(*thumb_movdf_insn): Ditto.
(movmem12b): Ditto.
(movmem8b): Ditto.
(cbranchqi4): Ditto.
(cbranchsi4_insn): Ditto.
(cbranchsi4_scratch): Ditto.
(*negated_cbranchsi4): Ditto.
(*tbit_cbranch): Ditto.
(*tlobits_cbranch): Ditto.
(*tstsi3_cbranch): Ditto.
(*cbranchne_decr1): Ditto.
(*addsi3_cbranch): Ditto.
(*addsi3_cbranch_scratch): Ditto.
(*thumb_cmpdi_zero): Ditto.
(cstoresi_eq0_thumb1): Ditto.
(cstoresi_ne0_thumb1): Ditto.
(*cstoresi_eq0_thumb1_insn): Ditto.
(*cstoresi_ne0_thumb1_insn): Ditto.
(cstoresi_nltu_thumb1): Ditto.
(cstoresi_ltu_thumb1): Ditto.
(thumb1_addsi3_addgeu): Ditto.
(*thumb_jump): Ditto.
(*call_reg_thumb1_v5): Ditto.
(*call_reg_thumb1): Ditto.
(*call_value_reg_thumb1_v5): Ditto.
(*call_value_reg_thumb1): Ditto.
(*call_insn): Ditto.
(*call_value_insn): Ditto.
(thumb1_casesi_internal_pic): Ditto.
(thumb1_casesi_dispatch): Ditto.
(*thumb1_indirect_jump): Ditto.
(prologue_thumb1_interwork): Ditto.
(*epilogue_insns): Ditto.
(consttable_1): Ditto.
(consttable_2): Ditto.
(tablejump): Ditto.
(*thumb1_tablejump): Ditto.
(thumb_eh_return): Ditto.
(define_peephole2): Two of them are thumb1 only and got moved into
new file thumb1.md.
(define_split): Six of them are thumb1 only and got moved into new
file thumb1.md.
* config/arm/thumb1.md: New file comprised of above thumb1 only
patterns.

From-SVN: r211443

10 years ago[AArch64] Add CRC32 ACLE intrinsics testsuite.
Kyrylo Tkachov [Wed, 11 Jun 2014 09:19:14 +0000 (09:19 +0000)]
[AArch64] Add CRC32 ACLE intrinsics testsuite.

* gcc.target/aarch64/acle/acle.exp: New.
* gcc.target/aarch64/acle/crc32b.c: New test.
* gcc.target/aarch64/acle/crc32cb.c: Likewise.
* gcc.target/aarch64/acle/crc32cd.c: Likewise.
* gcc.target/aarch64/acle/crc32ch.c: Likewise.
* gcc.target/aarch64/acle/crc32cw.c: Likewise.
* gcc.target/aarch64/acle/crc32d.c: Likewise.
* gcc.target/aarch64/acle/crc32h.c: Likewise.
* gcc.target/aarch64/acle/crc32w.c: Likewise.
--This line,gand those below, will be ignored--

A    gcc/testsuite/gcc.target/aarch64/acle
A    gcc/testsuite/gcc.target/aarch64/acle/acle.exp
A    gcc/testsuite/gcc.target/aarch64/acle/crc32b.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32d.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32cb.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32cd.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32w.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32h.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32cw.c
A    gcc/testsuite/gcc.target/aarch64/acle/crc32ch.c
M    gcc/testsuite/ChangeLog

From-SVN: r211441

10 years ago[AArch64] Implement CRC32 ACLE intrinsics.
Kyrylo Tkachov [Wed, 11 Jun 2014 09:17:18 +0000 (09:17 +0000)]
[AArch64] Implement CRC32 ACLE intrinsics.

* config.gcc (aarch64*-*-*): Add arm_acle.h to extra headers.
* Makefile.in (TEXI_GCC_FILES): Add aarch64-acle-intrinsics.texi to
dependencies.
* config/aarch64/aarch64-builtins.c (AARCH64_CRC32_BUILTINS): Define.
(aarch64_crc_builtin_datum): New struct.
(aarch64_crc_builtin_data): New.
(aarch64_init_crc32_builtins): New function.
(aarch64_init_builtins): Initialise CRC32 builtins when appropriate.
(aarch64_crc32_expand_builtin): New.
(aarch64_expand_builtin): Add CRC32 builtin expansion case.
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define
__ARM_FEATURE_CRC32 when appropriate.
(TARGET_CRC32): Define.
* config/aarch64/aarch64.md (UNSPEC_CRC32B, UNSPEC_CRC32H,
UNSPEC_CRC32W, UNSPEC_CRC32X, UNSPEC_CRC32CB, UNSPEC_CRC32CH,
UNSPEC_CRC32CW, UNSPEC_CRC32CX): New unspec values.
(aarch64_<crc_variant>): New pattern.
* config/aarch64/arm_acle.h: New file.
* config/aarch64/iterators.md (CRC): New int iterator.
(crc_variant, crc_mode): New int attributes.
* doc/aarch64-acle-intrinsics.texi: New file.
* doc/extend.texi (aarch64): Document aarch64 ACLE intrinsics.
Include aarch64-acle-intrinsics.texi.

From-SVN: r211440

10 years agore PR tree-optimization/52252 (An opportunity for x86 gcc vectorizer (gain up to...
Evgeny Stupachenko [Wed, 11 Jun 2014 08:37:53 +0000 (08:37 +0000)]
re PR tree-optimization/52252 (An opportunity for x86 gcc vectorizer (gain up to 3 times))

gcc/
* tree-vect-data-refs.c (vect_grouped_store_supported): New
check for stores group of length 3.
(vect_permute_store_chain): New permutations for stores group of
length 3.
* tree-vect-stmts.c (vect_model_store_cost): Change cost
of vec_perm_shuffle for the new permutations.

gcc/testsuite/
PR tree-optimization/52252
* gcc.dg/vect/pr52252-st.c: Test on stores group of size 3.

From-SVN: r211439

10 years agoipa-visibility.c (function_and_variable_visibility): Disable virtual table rewriting...
Jan Hubicka [Wed, 11 Jun 2014 08:15:34 +0000 (10:15 +0200)]
ipa-visibility.c (function_and_variable_visibility): Disable virtual table rewriting temporarily on targets not supporting ONE_ONLY.

* ipa-visibility.c (function_and_variable_visibility): Disable
virtual table rewriting temporarily on targets not supporting
ONE_ONLY.

From-SVN: r211437

10 years agore PR tree-optimization/61437 (wrong code on x86_64-linux-gnu when compile separately)
Richard Biener [Wed, 11 Jun 2014 07:35:36 +0000 (07:35 +0000)]
re PR tree-optimization/61437 (wrong code on x86_64-linux-gnu when compile separately)

2014-06-11  Richard Biener  <rguenther@suse.de>

PR middle-end/61437
Revert
2014-06-04  Richard Biener  <rguenther@suse.de>

* tree.h (may_be_aliased): Trust TREE_ADDRESSABLE from
TREE_PUBLIC and DECL_EXTERNAL decls.

* gcc.dg/torture/20140610-1.c: New testcase.
* gcc.dg/torture/20140610-2.c: Likewise.

From-SVN: r211436

10 years agovarasm.c (set_implicit_section): New function.
Jan Hubicka [Wed, 11 Jun 2014 05:51:23 +0000 (07:51 +0200)]
varasm.c (set_implicit_section): New function.

* varasm.c (set_implicit_section): New function.
(resolve_unique_section): Use it to set implicit section
for aliases, too.
(get_named_text_section): Use symtab_get_node (decl)->implicit_section
(default_function_section): Likewise.
(decl_binds_to_current_def_p): Constify argument.
* varasm.h (decl_binds_to_current_def_p): Update prototype.
* asan.c (asan_protect_global): Use symtab_get_node (decl)->implicit_section.
* symtab.c (dump_symtab_base): Dump implicit sections.
(verify_symtab_base): Verify sanity of sectoins and comdats.
(symtab_resolve_alias): Alias share the section of its target.
(set_section_1): New function.
(symtab_node::set_section): Move here, recurse to aliases.
(verify_symtab): Check for duplicated symtab lists.
* tree-core.h (implicit_section_name_p): Remove.
* tree-vect-data-refs.c: Include varasm.h.
(vect_can_force_dr_alignment_p): Fix conditional on when
decl bints to current definition; use
symtab_get_node (decl)->implicit_section.
* cgraph.c (cgraph_make_node_local_1): Fix section set.
* cgraph.h (struct symtab_node): Add implicit_section.
(set_section): Rename to ...
(set_section_for_node): ... this one.
(set_section): Declare.
* tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): Remove.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
input_overwrite_node, input_varpool_node): Stream implicit_section.
* ipa.c (symtab_remove_unreachable_nodes): Do not check symtab before
removal; it will fail in LTO.

* vtable-class-hierarchy.c: Use symtab_get_node (var_decl)->implicit_section.
* optimize.c (cdtor_comdat_group): Fix handling of aliases.
(maybe_clone_body): Move symbol across comdat groups.
* method.c (use_thunk): Copy implicit section flag.

* go/go-gcc.cc (Gcc_backend::global_variable_set_init): Use
symtab_get_node(var_decl)->implicit_section.

* lto.c (read_cgraph_and_symbols): Remove unreachable symbols.
(do_whole_program_analysis): Use verify_symtab.

From-SVN: r211434

10 years ago4402.cc (test02): Use `wcout' rather than `cout'.
Maciej W. Rozycki [Wed, 11 Jun 2014 00:20:45 +0000 (00:20 +0000)]
4402.cc (test02): Use `wcout' rather than `cout'.

* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
(test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.

From-SVN: r211433

10 years agoDaily bump.
GCC Administrator [Wed, 11 Jun 2014 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211432

10 years agobid128_div.c (BID128_FUNCTION_ARG2): Remove unused variable 'Ql'.
Uros Bizjak [Tue, 10 Jun 2014 18:27:02 +0000 (20:27 +0200)]
bid128_div.c (BID128_FUNCTION_ARG2): Remove unused variable 'Ql'.

* bid128_div.c (BID128_FUNCTION_ARG2): Remove unused variable 'Ql'.
Call __mul_128x128_high instead of __mul_128x128_full.
(TYPE0_FUNCTION_ARGTYPE1_ARGTYPE2): Ditto.
(BID128_FUNCTION_ARGTYPE1_ARG128): Ditto.
(BID128_FUNCTION_ARG128_ARGTYPE2): Ditto.
* bid64_div.c (TYPE0_FUNCTION_ARGTYPE1_ARG128): Ditto.
(TYPE0_FUNCTION_ARG128_ARGTYPE2): Ditto.
(TYPE0_FUNCTION_ARG128_ARG128): Ditto.

From-SVN: r211424

10 years agore PR libstdc++/61390 (error in nested template parameter in ext/pb_ds header file)
Jonathan Wakely [Tue, 10 Jun 2014 18:09:18 +0000 (19:09 +0100)]
re PR libstdc++/61390 (error in nested template parameter in ext/pb_ds header file)

PR libstdc++/61390
* include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
(bin_search_tree_traits): Do not redeclare template-parameters.
* testsuite/util/testsuite_iterators.h (test_container): Likewise.

From-SVN: r211421

10 years ago[AArch64] Fix some reg-to-reg move scheduler types.
Kyrylo Tkachov [Tue, 10 Jun 2014 16:05:17 +0000 (16:05 +0000)]
[AArch64] Fix some reg-to-reg move scheduler types.

* config/aarch64/aarch64-simd.md (move_lo_quad_<mode>):
Change second alternative type to f_mcr.
* config/aarch64/aarch64.md (*movsi_aarch64): Change 11th
and 12th alternatives' types to f_mcr and f_mrc.
(*movdi_aarch64): Same for 12th and 13th alternatives.
(*movsf_aarch64): Change 9th alternatives' type to mov_reg.
(aarch64_movtilow_tilow): Change type to fmov.

From-SVN: r211418

10 years agoAdd myself to MAINTAINERS.
Matthew Fortune [Tue, 10 Jun 2014 15:44:06 +0000 (15:44 +0000)]
Add myself to MAINTAINERS.

2014-06-10  Matthew Fortune  <matthew.fortune@imgtec.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r211417

10 years ago[AArch64] Fix layout of frame layout code.
Jiong Wang [Tue, 10 Jun 2014 14:38:15 +0000 (14:38 +0000)]
[AArch64] Fix layout of frame layout code.

From-SVN: r211416

10 years ago[AArch64] Add a big-endian lane flip at expand-time in saturating math patterns.
Kyrylo Tkachov [Tue, 10 Jun 2014 14:26:20 +0000 (14:26 +0000)]
[AArch64] Add a big-endian lane flip at expand-time in saturating math patterns.

* config/aarch64/aarch64-simd.md (aarch64_sqdmulh_lane<mode>):
New expander.
(aarch64_sqrdmulh_lane<mode>): Likewise.
(aarch64_sq<r>dmulh_lane<mode>): Rename to...
(aarch64_sq<r>dmulh_lane<mode>_internal): ...this.
(aarch64_sqdmulh_laneq<mode>): New expander.
(aarch64_sqrdmulh_laneq<mode>): Likewise.
(aarch64_sq<r>dmulh_laneq<mode>): Rename to...
(aarch64_sq<r>dmulh_laneq<mode>_internal): ...this.
(aarch64_sqdmulh_lane<mode>): New expander.
(aarch64_sqrdmulh_lane<mode>): Likewise.
(aarch64_sq<r>dmulh_lane<mode>): Rename to...
(aarch64_sq<r>dmulh_lane<mode>_internal): ...this.
(aarch64_sqdmlal_lane<mode>): Add lane flip for big-endian.
(aarch64_sqdmlal_laneq<mode>): Likewise.
(aarch64_sqdmlsl_lane<mode>): Likewise.
(aarch64_sqdmlsl_laneq<mode>): Likewise.
(aarch64_sqdmlal2_lane<mode>): Likewise.
(aarch64_sqdmlal2_laneq<mode>): Likewise.
(aarch64_sqdmlsl2_lane<mode>): Likewise.
(aarch64_sqdmlsl2_laneq<mode>): Likewise.
(aarch64_sqdmull_lane<mode>): Likewise.
(aarch64_sqdmull_laneq<mode>): Likewise.
(aarch64_sqdmull2_lane<mode>): Likewise.
(aarch64_sqdmull2_laneq<mode>): Likewise.

From-SVN: r211414

10 years agore PR tree-optimization/61438 (ICE on valid code at -O3 on x86_64-linux-gnu in in...
Richard Biener [Tue, 10 Jun 2014 14:18:50 +0000 (14:18 +0000)]
re PR tree-optimization/61438 (ICE on valid code at -O3 on x86_64-linux-gnu in in loop_preheader_edge, at cfgloop.c:1668)

2014-06-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61438
* tree-ssa-pre.c (eliminate_dom_walker): Add do_pre member.
(eliminate_dom_walker::before_dom_children): Only try to inhibit
insertion of IVs if running PRE.
(eliminate): Adjust.
(pass_pre::execute): Likewise.
(pass_fre::execute): Likewise.

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

From-SVN: r211413

10 years agore PR middle-end/61456 (Bogus "may be used uninitialized" warning)
Richard Biener [Tue, 10 Jun 2014 14:10:57 +0000 (14:10 +0000)]
re PR middle-end/61456 (Bogus "may be used uninitialized" warning)

2014-06-10  Richard Biener  <rguenther@suse.de>

PR middle-end/61456
* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p):
Do not use the main variant for the type comparison.
(ncr_compar): Likewise.
(nonoverlapping_component_refs_p): Likewise.

* g++.dg/opt/pr61456.C: New testcase.

From-SVN: r211411

10 years agoReverting previous commit.
Marcus Shawcroft [Tue, 10 Jun 2014 14:02:56 +0000 (14:02 +0000)]
Reverting previous commit.

From-SVN: r211410

10 years ago[AArch64] Fix layout of frame layout code.
Jiong Wang [Tue, 10 Jun 2014 13:29:12 +0000 (13:29 +0000)]
[AArch64] Fix layout of frame layout code.

From-SVN: r211409

10 years ago[AArch64] Fix REG_CFA_RESTORE mode.
Marcus Shawcroft [Tue, 10 Jun 2014 13:10:10 +0000 (13:10 +0000)]
[AArch64] Fix REG_CFA_RESTORE mode.

From-SVN: r211408

10 years agoi386.c (expand_vec_perm_pblendv): New.
Evgeny Stupachenko [Tue, 10 Jun 2014 12:40:16 +0000 (12:40 +0000)]
i386.c (expand_vec_perm_pblendv): New.

gcc/
        * config/i386/i386.c (expand_vec_perm_pblendv): New.
        * config/i386/i386.c (ix86_expand_vec_perm_const_1): Use
        expand_vec_perm_pblendv.

From-SVN: r211407

10 years agore PR fortran/41936 (Memory leakage with allocatables and user-defined operators)
Dominique d'Humieres [Tue, 10 Jun 2014 11:42:38 +0000 (13:42 +0200)]
re PR fortran/41936 (Memory leakage with allocatables and user-defined operators)

2014-06-10  Dominique d'Humieres <dominiq@lps.ens.fr>
    Mikael Morin <mikael@gcc.gnu.org>

PR fortran/41936
gcc/fortran/
* trans-expr.c (gfc_conv_expr_reference): Deallocate array
components.

gcc/testsuite/
* gfortran.dg/class_array_15.f03: Check memory leaks.

Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r211405

10 years agore PR tree-optimization/57186 (implement load sinking in loops)
Richard Biener [Tue, 10 Jun 2014 10:29:44 +0000 (10:29 +0000)]
re PR tree-optimization/57186 (implement load sinking in loops)

2014-06-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57186
PR tree-optimization/59299
* gcc.dg/tree-ssa/ssa-sink-11.c: New testcase.
* gcc.dg/tree-ssa/ssa-sink-12.c: Likewise.

From-SVN: r211404

10 years ago[ARM][doc] Improve description of AArch32 CRC32 intrinsics.
Kyrylo Tkachov [Tue, 10 Jun 2014 09:50:22 +0000 (09:50 +0000)]
[ARM][doc] Improve description of AArch32 CRC32 intrinsics.

     * doc/arm-acle-intrinsics.texi: Specify when CRC32 intrinsics are
     available.
     Simplify description of __crc32d and __crc32cd intrinsics.
     * doc/extend.texi (ARM ACLE Intrinsics): Remove comment about CRC32
     availability.

From-SVN: r211402

10 years ago[PR lto/61334] Declare prototype for strnlen, if needed.
Thomas Schwinge [Tue, 10 Jun 2014 09:45:00 +0000 (11:45 +0200)]
[PR lto/61334] Declare prototype for strnlen, if needed.

include/
* libiberty.h [defined (HAVE_DECL_STRNLEN) &&
!HAVE_DECL_STRNLEN] (strnlen): New prototype.
gcc/
* configure.ac: Use gcc_AC_CHECK_DECLS to check for strnlen
prototype.
* config.in: Regenerate.
* configure: Likewise.

From-SVN: r211401

10 years agoipa-reference.c (is_proper_for_analysis): Exclude addressable and public vars.
Jan Hubicka [Tue, 10 Jun 2014 06:30:50 +0000 (08:30 +0200)]
ipa-reference.c (is_proper_for_analysis): Exclude addressable and public vars.

* ipa-reference.c (is_proper_for_analysis): Exclude addressable and public
vars.
(intersect_static_var_sets): Remove.
(propagate): Do not prune local statics.

From-SVN: r211398

10 years agore PR fortran/60928 (gfortran issue with allocatable components and OpenMP)
Jakub Jelinek [Tue, 10 Jun 2014 06:05:22 +0000 (08:05 +0200)]
re PR fortran/60928 (gfortran issue with allocatable components and OpenMP)

PR fortran/60928
* omp-low.c (lower_rec_input_clauses) <case OMP_CLAUSE_LASTPRIVATE>:
Set lastprivate_firstprivate even if omp_private_outer_ref
langhook returns true.
<case OMP_CLAUSE_REDUCTION>: When calling omp_clause_default_ctor
langhook, call unshare_expr on new_var and call
build_outer_var_ref to get the last argument.
gcc/c-family/
* c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
(omp_pragmas): ... back here.
gcc/fortran/
* f95-lang.c (gfc_init_builtin_functions): Handle -fopenmp-simd
like -fopenmp.
* openmp.c (resolve_omp_clauses): Remove allocatable components
diagnostics.  Add associate-name and intent(in) pointer
diagnostics for various clauses, diagnose procedure pointers in
reduction clause.
* parse.c (match_word_omp_simd): New function.
(matchs, matcho): New macros.
(decode_omp_directive): Change match macros to either matchs
or matcho.  Handle -fopenmp-simd.
(next_free, next_fixed): Handle -fopenmp-simd like -fopenmp.
* scanner.c (skip_free_comments, skip_fixed_comments, include_line):
Likewise.
* trans-array.c (get_full_array_size): Rename to...
(gfc_full_array_size): ... this.  No longer static.
(duplicate_allocatable): Adjust caller.  Add NO_MEMCPY argument
and handle it.
(gfc_duplicate_allocatable, gfc_copy_allocatable_data): Adjust
duplicate_allocatable callers.
(gfc_duplicate_allocatable_nocopy): New function.
(structure_alloc_comps): Adjust g*_full_array_size and
duplicate_allocatable caller.
* trans-array.h (gfc_full_array_size,
gfc_duplicate_allocatable_nocopy): New prototypes.
* trans-common.c (create_common): Call gfc_finish_decl_attrs.
* trans-decl.c (gfc_finish_decl_attrs): New function.
(gfc_finish_var_decl, create_function_arglist,
gfc_get_fake_result_decl): Call it.
(gfc_allocate_lang_decl): If DECL_LANG_SPECIFIC is already allocated,
don't allocate it again.
(gfc_get_symbol_decl): Set GFC_DECL_ASSOCIATE_VAR_P on
associate-names.
* trans.h (gfc_finish_decl_attrs): New prototype.
(struct lang_decl): Add scalar_allocatable and scalar_pointer
bitfields.
(GFC_DECL_SCALAR_ALLOCATABLE, GFC_DECL_SCALAR_POINTER,
GFC_DECL_GET_SCALAR_ALLOCATABLE, GFC_DECL_GET_SCALAR_POINTER,
GFC_DECL_ASSOCIATE_VAR_P): Define.
(GFC_POINTER_TYPE_P): Remove.
* trans-openmp.c (gfc_omp_privatize_by_reference): Don't check
GFC_POINTER_TYPE_P, instead test GFC_DECL_GET_SCALAR_ALLOCATABLE,
GFC_DECL_GET_SCALAR_POINTER or GFC_DECL_CRAY_POINTEE on decl.
(gfc_omp_predetermined_sharing): Associate-names are predetermined.
(enum walk_alloc_comps): New.
(gfc_has_alloc_comps, gfc_omp_unshare_expr_r, gfc_omp_unshare_expr,
gfc_walk_alloc_comps): New functions.
(gfc_omp_private_outer_ref): Return true for scalar allocatables or
decls with allocatable components.
(gfc_omp_clause_default_ctor, gfc_omp_clause_copy_ctor,
gfc_omp_clause_assign_op, gfc_omp_clause_dtor): Fix up handling of
allocatables, handle also OMP_CLAUSE_REDUCTION, handle scalar
allocatables and decls with allocatable components.
(gfc_trans_omp_array_reduction_or_udr): Don't handle allocatable
arrays here.
(gfc_trans_omp_reduction_list): Call
gfc_trans_omp_array_reduction_or_udr even for allocatable scalars.
(gfc_trans_omp_do_simd): If -fno-openmp, just expand it as OMP_SIMD.
(gfc_trans_omp_parallel_do_simd): Likewise.
* trans-types.c (gfc_sym_type): Don't set GFC_POINTER_TYPE_P.
(gfc_get_derived_type): Call gfc_finish_decl_attrs.
gcc/testsuite/
* gfortran.dg/gomp/allocatable_components_1.f90: Remove dg-error
directives.
* gfortran.dg/gomp/associate1.f90: New test.
* gfortran.dg/gomp/intentin1.f90: New test.
* gfortran.dg/gomp/openmp-simd-1.f90: New test.
* gfortran.dg/gomp/openmp-simd-2.f90: New test.
* gfortran.dg/gomp/openmp-simd-3.f90: New test.
* gfortran.dg/gomp/proc_ptr_2.f90: New test.
libgomp/
* testsuite/libgomp.fortran/allocatable9.f90: New test.
* testsuite/libgomp.fortran/allocatable10.f90: New test.
* testsuite/libgomp.fortran/allocatable11.f90: New test.
* testsuite/libgomp.fortran/allocatable12.f90: New test.
* testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
* testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
* testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
* testsuite/libgomp.fortran/associate1.f90: New test.
* testsuite/libgomp.fortran/associate2.f90: New test.
* testsuite/libgomp.fortran/procptr1.f90: New test.

From-SVN: r211397

10 years agore PR c/60988 ("transparent_union" doesn't appear in the gcc manual index)
Marek Polacek [Tue, 10 Jun 2014 05:09:59 +0000 (05:09 +0000)]
re PR c/60988 ("transparent_union" doesn't appear in the gcc manual index)

PR c/60988
* doc/extend.texi: Add cindex for transparent_union.

From-SVN: r211396

10 years agotree-ssa-math-opts.c (find_bswap_or_nop_load): Check return value of init_symbolic_nu...
Thomas Preud'homme [Tue, 10 Jun 2014 02:10:46 +0000 (02:10 +0000)]
tree-ssa-math-opts.c (find_bswap_or_nop_load): Check return value of init_symbolic_number ().

2014-06-09  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * tree-ssa-math-opts.c (find_bswap_or_nop_load): Check return value of
    init_symbolic_number ().

From-SVN: r211395

10 years agoruntime: Initialize variable to avoid compiler warning.
Ian Lance Taylor [Tue, 10 Jun 2014 00:36:38 +0000 (00:36 +0000)]
runtime: Initialize variable to avoid compiler warning.

From-SVN: r211394

10 years agoDaily bump.
GCC Administrator [Tue, 10 Jun 2014 00:17:31 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211393

10 years agore PR c/36446 (unexplained warning in struct initialization)
Marek Polacek [Mon, 9 Jun 2014 20:33:51 +0000 (20:33 +0000)]
re PR c/36446 (unexplained warning in struct initialization)

PR c/36446
* c-typeck.c (error_init): Call inform instead of error_at.
(pedwarn_init): Call inform instead of pedwarn.
(warning_init): Call inform instead of warning_at.

* gcc.dg/Wcxx-compat-6.c: Change dg-warning to dg-message.
* gcc.dg/array-2.c: Likewise.
* gcc.dg/array-const-2.c: Likewise.
* gcc.dg/ucnid-8.c: Likewise.
* gcc.dg/vla-init-1.c: Likewise.
* gcc.dg/array-const-3.c: Change dg-error to dg-message.
* gcc.dg/c99-flex-array-7.c: Likewise.
* gcc.dg/init-bad-1.c: Likewise.
* gcc.dg/init-bad-3.c: Likewise.
* gcc.dg/init-bad-2.c: Change dg-error and dg-warning to dg-message.
* gcc.dg/pedwarn-init.c: Add dg-warning.
* gcc.dg/pr53119.c: Remove dg-excess-errors.

From-SVN: r211388

10 years agore PR c++/22556 (extern array: compatible declaration at function scope refused)
Paolo Carlini [Mon, 9 Jun 2014 19:28:37 +0000 (19:28 +0000)]
re PR c++/22556 (extern array: compatible declaration at function scope refused)

/cp
2014-06-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/22556
* name-lookup.c (pushdecl_maybe_friend_1): Use comptypes.

/testsuite
2014-06-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/22556
* g++.dg/other/redecl3.C: New.

From-SVN: r211385

10 years agore PR middle-end/61141 (c-common.c:1502:1: ICE: in reset_insn_used_flags, at emit...
John David Anglin [Mon, 9 Jun 2014 16:41:10 +0000 (16:41 +0000)]
re PR middle-end/61141 (c-common.c:1502:1: ICE: in reset_insn_used_flags, at emit-rtl.c:2677)

2014-05-18  John David Anglin  <danglin@gcc.gnu.org>

PR middle-end/61141
* emit-rtl.c (reset_all_used_flags): In a sequence, check that
XVECEXP (pat, 0, i) is an INSN before calling reset_insn_used_flags.
(verify_rtl_sharing): Likewise.

From-SVN: r211380

10 years agore PR c++/54442 (Const overloads resolution failure)
Marc Glisse [Mon, 9 Jun 2014 15:07:24 +0000 (17:07 +0200)]
re PR c++/54442 (Const overloads resolution failure)

2014-06-09  Marc Glisse  <marc.glisse@inria.fr>

PR c++/54442
gcc/
* tree.c (build_qualified_type): Use a canonical type for
TYPE_CANONICAL.
gcc/testsuite/
* g++.dg/pr54442.C: New file.

From-SVN: r211377

10 years agoMakefile.am: Add missing file.
Jonathan Wakely [Mon, 9 Jun 2014 14:47:17 +0000 (15:47 +0100)]
Makefile.am: Add missing file.

* doc/Makefile.am: Add missing file. Use generate.consistent.ids
parameter for DocBook HTML generation.
* doc/Makefile.in: Regenerate.
* doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
* doc/xml/faq.xml: Update content and improve formatting.
* doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
* doc/xml/manual/allocator.xml: Add stable ID attribute.
* doc/xml/manual/bitmap_allocator.xml: Likewise.
* doc/xml/manual/build_hacking.xml: Likewise.
* doc/xml/manual/codecvt.xml: Change URL.
* doc/xml/manual/ctype.xml: Add stable ID attribute.
* doc/xml/manual/debug_mode.xml: Likewise.
* doc/xml/manual/documentation_hacking.xml: Likewise.
* doc/xml/manual/evolution.xml: Likewise.
* doc/xml/manual/extensions.xml: Likewise.
* doc/xml/manual/locale.xml: Likewise.
* doc/xml/manual/messages.xml: Make section id consistent, improve
markup, change URL.
* doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
* doc/xml/manual/profile_mode.xml: Likewise.
* doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
* doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
* doc/xml/manual/status_cxx2011.xml: Likewise.
* doc/xml/manual/status_cxx2014.xml: Likewise.
* doc/xml/manual/status_cxxtr1.xml: Likewise.
* doc/xml/manual/status_cxxtr24733.xml: Likewise.
* doc/xml/manual/using.xml: Likewise.
* doc/html/*: Regenerate.

From-SVN: r211376

10 years agore PR fortran/61406 (ICE on ASSOCIATE construct to literal array expression)
Paul Thomas [Mon, 9 Jun 2014 11:55:55 +0000 (11:55 +0000)]
re PR fortran/61406 (ICE on ASSOCIATE construct to literal array expression)

2014-06-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/61406
* trans-stmt.c (trans_associate_var): Check that array
constructors are constant for direct reference.

2014-06-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/61406
* gfortran.dg/associate_17.f90 : New test

From-SVN: r211374

10 years agobeta_function.tcc: Fix spelling of include guard in comment.
Jonathan Wakely [Mon, 9 Jun 2014 11:52:20 +0000 (12:52 +0100)]
beta_function.tcc: Fix spelling of include guard in comment.

* include/tr1/beta_function.tcc: Fix spelling of include guard in
comment.

From-SVN: r211373

10 years agoavx512f-vaddpd-2.c: Add static void for CALC, void for TEST instead of static void.
Petr Murzin [Mon, 9 Jun 2014 11:32:03 +0000 (11:32 +0000)]
avx512f-vaddpd-2.c: Add static void for CALC, void for TEST instead of static void.

gcc/testsuite/
* gcc.target/i386/avx512f-vaddpd-2.c:  Add static void for CALC,
void for TEST instead of static void.
* gcc.target/i386/avx512f-vaddps-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmps-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf32x4-2.c:Ditto.
* gcc.target/i386/avx512f-vbroadcastf64x4-2.c:Ditto.
* gcc.target/i386/avx512f-vbroadcasti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastsd-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastss-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vdivpd-2.c: Ditto.
* gcc.target/i386/avx512f-vdivps-2.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxps-2.c: Ditto.
* gcc.target/i386/avx512f-vminpd-2.c: Ditto.
* gcc.target/i386/avx512f-vminps-2.c: Ditto.
* gcc.target/i386/avx512f-vmulpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmulps-2.c: Ditto.
* gcc.target/i386/avx512f-vpaddd-2.c: Ditto.
* gcc.target/i386/avx512f-vpaddq-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmd-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastd-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpslld-2.c: Ditto.
* gcc.target/i386/avx512f-vpslldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrad-2.c: Ditto.
* gcc.target/i386/avx512f-vpsradi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubq-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmd-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmq-2.c: Ditto.
* gcc.target/i386/avx512f-vptestnmd-2.c: Ditto.
* gcc.target/i386/avx512f-vptestnmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckldq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpcklqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefpd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefps-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vsubpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsubps-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrld-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpshufd-2.c: Delete variables, void for TEST
instead of static void.
* gcc.target/i386/avx512f-vpcmpged-2.c: Add static void for CALC,
delete unused variables.
* gcc.target/i386/avx512f-vpcmpgeq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpled-2.c: Add static void for CALC,
delete unused variables, void for TEST instead of static void.
* gcc.target/i386/avx512f-vpcmpleq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsd-2.c: Add static void for CALC,
initialize variables.
* gcc.target/i386/avx512f-vpmaxsq-2.c:Ditto.
* gcc.target/i386/avx512f-vpminsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpminsq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si-1.c: Add missed type.
* gcc.target/i386/avx512f-vcvttss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpsd-2.c: Delete unused variables.
* gcc.target/i386/avx512f-vcmpss-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuldq-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalepd-2.c: Ditto.
* gcc.target/i386/i386.exp: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmb2q-2.c: Add static void for CALC,
void for TEST instead of static void, initialize variables.
* gcc.target/i386/avx512cd-vpbroadcastmw2d-2.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictd-2.c: Void for TEST instead of
static void.
* gcc.target/i386/avx512cd-vpconflictq-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntd-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntq-2.c: Ditto.
* gcc.target/i386/avx512f-valignd-2.c: Ditto.
* gcc.target/i386/avx512f-valignq-2.c: Ditto.
* gcc.target/i386/avx512f-vcmppd-2.c: Ditto.
* gcc.target/i386/avx512f-vcmpps-2.c: Ditto.
* gcc.target/i386/avx512f-vcompresspd-2.c: Ditto.
* gcc.target/i386/avx512f-vcompressps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtph2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2ph-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vexpandpd-2.c: Ditto.
* gcc.target/i386/avx512f-vexpandps-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantpd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantps-2.c: Ditto.
* gcc.target/i386/avx512f-vinsertf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vinserti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vmovapd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovaps-2.c: Ditto.
* gcc.target/i386/avx512f-vmovddup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovshdup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovsldup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovupd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovups-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressq-2.c: Ditto.
* gcc.target/i386/avx512f-vpermd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpsi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-imm-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-var-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmulld-2.c: Ditto.
* gcc.target/i386/avx512f-vpord-2.c: Ditto.
* gcc.target/i386/avx512f-vporq-2.c: Ditto.
* gcc.target/i386/avx512f-vpslld-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogd-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogq-2.c: Ditto.
* gcc.target/i386/avx512f-vpxord-2.c: Ditto.
* gcc.target/i386/avx512f-vpxorq-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaleps-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vshufpd-2.c: Ditto.
* gcc.target/i386/avx512f-vshufps-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtps-2.c: Ditto.
* gcc.target/i386/avx512f-vunpckhpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpckhps-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklps-2.c: Ditto.
* gcc.target/i386/avx512f-vprold-2.c: Put parentheses, void for TEST
instead of static void.
* gcc.target/i386/avx512f-vprolq-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvq-2.c: Ditto.
* gcc.target/i386/avx512f-vprord-2.c: Ditto.
* gcc.target/i386/avx512f-vprorq-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvq-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmpd-2.c: Void for TEST instead of
static void, delete unused variables.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexppd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpps-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuludq-2.c: Void for TEST instead of
static void, delete unused variables, Change parameters for
UNION_CHECK, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vcvtpd2dq-2.c: Change type of parameter in
CALC,  void for TEST instead of static void.
* gcc.target/i386/avx512f-vcvtpd2udq-2.c: Change parameters for
UNION_CHECK, MASK_MERGE and MASK_ZERO, void for TEST instead of static
void.
* gcc.target/i386/avx512f-vcvttpd2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2pd-2.c: Void for TEST instead of
static void, change type  of parameter for UNION_TYPE.
* gcc.target/i386/avx512f-vcvtudq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2udq-2.c: Add static void for CALC,
void for TEST instead of static void, delete unused variables, change
parameters for UNION_CHECK, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vcvttps2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxud-2.c: Add static void for CALC,
void for TEST instead of static void, change parameters for UNION_CHECK,
UNION_TYPE, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vpmaxuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpminud-2.c: Ditto.
* gcc.target/i386/avx512f-vpminuq-2.c: Ditto.
* gcc.target/i386/avx512f-additional-reg-names.c: Add
__attribute__((unused)).
* gcc.target/i386/avx512f-dummy.c: Delete unused variables, add
__attribute__((unused)).
* gcc.target/i386/avx512f-kandnw-1.c: Initialize variables.
* gcc.target/i386/avx512f-kandw-1.c: Ditto.
* gcc.target/i386/avx512f-klogic-2.c: Ditto.
* gcc.target/i386/avx512f-knotw-1.c: Ditto.
* gcc.target/i386/avx512f-korw-1.c: Ditto.
* gcc.target/i386/avx512f-kunpckbw-1.c: Ditto.
* gcc.target/i386/avx512f-kxnorw-1.c: Ditto.
* gcc.target/i386/avx512f-kxorw-1.c: Ditto.
* gcc.target/i386/avx512f-kortestw-1.c: Initialize variables,
add __attribute__((unused)).
* gcc.target/i386/avx512f-vcvttsd2si-2.c: Exclude "avx512f-helper.h"
* gcc.target/i386/avx512f-vcvttss2si-2.c:Ditto.
* gcc.target/i386/avx512f-vgetexpsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-2.c: Exclude "avx512f-helper.h",
delete unused variables.
* gcc.target/i386/avx512f-vgetmantss-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-2.c: Ditto.
* gcc.target/i386/avx512f-helper.h: Void for test_512() instead of
static void, mask_merging and zero_masking for unsigned types.
* gcc.target/i386/m128-check.h: Add new unions, CHECK_EXP and
CHECK_ARRAY for unsigned types.
* gcc.target/i386/m256-check.h: Ditto.
* gcc.target/i386/m512-check.h: Ditto.

From-SVN: r211372

10 years agoRemove XFmode from ARM backend.
Ramana Radhakrishnan [Mon, 9 Jun 2014 11:11:52 +0000 (11:11 +0000)]
Remove XFmode from ARM backend.

2014-06-09  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm-modes.def: Remove XFmode.

From-SVN: r211371

10 years agoutils.c (process_attributes): Use set_decl_section_name accessor.
Jan Hubicka [Mon, 9 Jun 2014 10:20:27 +0000 (12:20 +0200)]
utils.c (process_attributes): Use set_decl_section_name accessor.

* gcc-interface/utils.c (process_attributes) <ATTR_LINK_SECTION>: Use
set_decl_section_name accessor.

From-SVN: r211370

10 years agoPR/61062 Fix arm_neon.h ZIP/UZP/TRN for bigendian.
Alan Lawrence [Mon, 9 Jun 2014 10:04:37 +0000 (10:04 +0000)]
PR/61062 Fix arm_neon.h ZIP/UZP/TRN for bigendian.

gcc/ChangeLog:

* config/arm/arm_neon.h (vtrn_s8, vtrn_s16, vtrn_u8, vtrn_u16, vtrn_p8,
vtrn_p16, vtrn_s32, vtrn_f32, vtrn_u32, vtrnq_s8, vtrnq_s16, vtrnq_s32,
vtrnq_f32, vtrnq_u8, vtrnq_u16, vtrnq_u32, vtrnq_p8, vtrnq_p16, vzip_s8,
vzip_s16, vzip_u8, vzip_u16, vzip_p8, vzip_p16, vzip_s32, vzip_f32,
vzip_u32, vzipq_s8, vzipq_s16, vzipq_s32, vzipq_f32, vzipq_u8,
vzipq_u16, vzipq_u32, vzipq_p8, vzipq_p16, vuzp_s8, vuzp_s16, vuzp_s32,
vuzp_f32, vuzp_u8, vuzp_u16, vuzp_u32, vuzp_p8, vuzp_p16, vuzpq_s8,
vuzpq_s16, vuzpq_s32, vuzpq_f32, vuzpq_u8, vuzpq_u16, vuzpq_u32,
vuzpq_p8, vuzpq_p16): Correct mask for bigendian.

gcc/testsuite/ChangeLog:

* gcc.target/arm/pr48252.c (main): Expect same result as endian-neutral.

From-SVN: r211369

10 years agore PR fortran/36096 (F2008 Bessel: Documentation/diagnostic errors)
Francois-Xavier Coudert [Mon, 9 Jun 2014 09:49:01 +0000 (09:49 +0000)]
re PR fortran/36096 (F2008 Bessel: Documentation/diagnostic errors)

PR fortran/36096
* intrinsic.texi: Fix documentation of BESSEL_J0, BESSEL_J1,
BESSEL_Y0, and BESSEL_Y1.

From-SVN: r211368

10 years agore PR fortran/45187 (ICE with CRAY pointer in module)
Francois-Xavier Coudert [Mon, 9 Jun 2014 09:25:14 +0000 (09:25 +0000)]
re PR fortran/45187 (ICE with CRAY pointer in module)

PR fortran/45187

* trans-decl.c (gfc_create_module_variable): Don't create
Cray-pointee decls twice.

* gfortran.dg/cray_pointers_10.f90: New file.

From-SVN: r211367

10 years agoudr6.f90 (f1, f2, f3): Use complex(kind=8) instead of complex(kind=16).
Jakub Jelinek [Mon, 9 Jun 2014 09:11:22 +0000 (11:11 +0200)]
udr6.f90 (f1, f2, f3): Use complex(kind=8) instead of complex(kind=16).

* gfortran.dg/gomp/udr6.f90 (f1, f2, f3): Use complex(kind=8)
instead of complex(kind=16).

From-SVN: r211366

10 years ago* tree-core.h (tree_decl_with_vis): Remove section_name.
Jan Hubicka [Mon, 9 Jun 2014 05:22:36 +0000 (07:22 +0200)]
* tree-core.h (tree_decl_with_vis): Remove section_name.

From-SVN: r211365

10 years agoira.c (ira): Don't call init_caller_save if LRA enabled since LRA use its own infrast...
Kito Cheng [Mon, 9 Jun 2014 04:21:42 +0000 (04:21 +0000)]
ira.c (ira): Don't call init_caller_save if LRA enabled since LRA use its own infrastructure...

* ira.c (ira): Don't call init_caller_save if LRA enabled
since LRA use its own infrastructure to handle that.

From-SVN: r211364

10 years agosymtab.c (dump_symtab_base): Update dumping.
Jan Hubicka [Mon, 9 Jun 2014 02:30:30 +0000 (04:30 +0200)]
symtab.c (dump_symtab_base): Update dumping.

* symtab.c (dump_symtab_base): Update dumping.
(symtab_make_decl_local): Clear only DECL_COMDAT.
* tree-vect-data-refs.c (Check that variable is static before
tampering with sections.
* cgraphclones.c (duplicate_thunk_for_node): Do not clear section name.
(cgraph_create_virtual_clone): Likewise.
* tree.c (decl_comdat_group, decl_comdat_group_id): Constify argument.
(decl_section_name, set_decl_section_name): New accessors.
(find_decls_types_r): Do not walk section name
* tree.h (DECL_SECTION_NAME): Implement using
decl_section_name.
(decl_comdat_group, decl_comdat_group_id): Constify.
(decl_section_name, set_decl_section_name): Update.
* varpool.c (varpool_finalize_named_section_flags): Use
get_section.
* cgraph.c (cgraph_add_thunk): Reset node instead of rebuilding.
(cgraph_make_node_local_1): Clear section and comdat group.
* cgraph.h (set_comdat_group): Sanity check.
(get_section, set_section): New.
* ipa-comdats.c (ipa_comdats): Use get_section.
* ipa.c (ipa_discover_readonly_nonaddressable_var): Likewise.
* lto-streamer-out.c: Do not follow section names.
* c-family/c-common.c (handle_section_attribute):
Update.
* lto-cgraph.c (lto_output_node): Output section.
(lto_output_varpool_node): Likewise.
(read_comdat_group): Rename to ...
(read_identifier): ... this one.
(read_string_cst): New function.
(input_node, input_varpool_node): Input section names.
* tree-emutls.c (get_emutls_init_templ_addr): Update.
(new_emutls_decl): Update.
(secname_for_decl): Check section names only of static
vars.
* config/mep/mep.c (mep_unique_section): Use set_decl_section_name.
* config/i386/winnt.c (i386_pe_unique_section): Likewise.
* config/i386/i386.c (x86_64_elf_unique_section): Likewise.
* config/c6x/c6x.c (c6x_elf_unique_section): Likewise.
* config/rs6000/rs6000.c (rs6000_xcoff_unique_section): Likewise.
* config/mcore/mcore.c (mcore_unique_section): Likewise.
* config/mips/mips.c (mips16_build_function_stub): Likewise.
* config/v850/v850.c (v850_insert_attributes): Likewise.
* config/h8300/h8300.c: (h8300_handle_eightbit_data_attribute):
Likewise.
(h8300_handle_tiny_data_attribute): Likewise.
* config/bfin/bfin.c (bfin_handle_l1_text_attribute): Likewise.
(bfin_handle_l2_attribute): Likewise.
* tree-streamer-in.c (lto_input_ts_decl_with_vis_tree_pointers): Do not read section name.

* lto.c (mentions_vars_p_decl_with_vis, compare_tree_sccs_1,
lto_fixup_prevailing_decls): Skip section names.

* go-gcc.cc (global_variable_set_init): Use
set_decl_section_name.

* gcc-interface/utils.c (process_attributes): Use it.

* c-decl.c (merge_decls): Use set_decl_section_name.
(duplicate_decls): Remove node if it exists.

* class.c (build_utf8_ref): Use set_decl_section_name.
(emit_register_classes_in_jcr_section): Likewise.
(emit_register_classes_in_jcr_section): Likewise.

* method.c (use_thunk): Use set_decl_section_name.
* optimize.c (maybe_clone_body): Use set_decl_section_name.
* decl.c (duplicate_decls): Likewise.
* vtable-class-hierarchy.c: Likewise.

From-SVN: r211363

10 years agoDaily bump.
GCC Administrator [Mon, 9 Jun 2014 00:17:53 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211362

10 years agosymtab.c (symtab_nonoverwritable_alias): Copy VIRTUAL flag; remove static initializer.
Jan Hubicka [Sun, 8 Jun 2014 16:57:19 +0000 (18:57 +0200)]
symtab.c (symtab_nonoverwritable_alias): Copy VIRTUAL flag; remove static initializer.

* symtab.c (symtab_nonoverwritable_alias): Copy VIRTUAL flag;
remove static initializer.

From-SVN: r211358

10 years agovarasm.c (use_blocks_for_decl_p): Check symbol table instead of alias attribute.
Jan Hubicka [Sun, 8 Jun 2014 16:53:25 +0000 (18:53 +0200)]
varasm.c (use_blocks_for_decl_p): Check symbol table instead of alias attribute.

* varasm.c (use_blocks_for_decl_p): Check symbol table instead of alias
attribute.
(place_block_symbol): Recurse on aliases.

From-SVN: r211357

10 years agoipa-visibility.c: Include varasm.h
Jan Hubicka [Sun, 8 Jun 2014 16:47:57 +0000 (18:47 +0200)]
ipa-visibility.c: Include varasm.h

* ipa-visibility.c: Include varasm.h
(can_replace_by_local_alias): Ceck decl_binds_to_current_def_p.

From-SVN: r211356

10 years agognu.ver: Tighten some patterns; tidy.
Paolo Carlini [Sun, 8 Jun 2014 16:03:01 +0000 (16:03 +0000)]
gnu.ver: Tighten some patterns; tidy.

2014-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

* config/abi/pre/gnu.ver: Tighten some patterns; tidy.

From-SVN: r211355

10 years agore PR fortran/38829 (Bogus BIND(C) error message)
Francois-Xavier Coudert [Sun, 8 Jun 2014 15:28:59 +0000 (15:28 +0000)]
re PR fortran/38829 (Bogus BIND(C) error message)

PR fortran/38829
* gfortran.dg/bind_c_usage_29.f90: New file.

From-SVN: r211354

10 years agoPR 56981 Flush buffer at record boundary if possible.
Janne Blomqvist [Sun, 8 Jun 2014 05:43:29 +0000 (08:43 +0300)]
PR 56981 Flush buffer at record boundary if possible.

2014-06-08  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/56981
* io/unix.h (struct stream_vtable): Add new member function,
markeor.
(smarkeor): New inline function.
(flush_if_unbuffered): Remove prototype.
* io/unix.c (raw_markeor): New function.
(raw_vtable): Initialize markeor member.
(buf_markeor): New function.
(buf_vtable): Initialize markeor member.
(mem_vtable): Likewise.
(mem4_vtable): Likewise.
(flush_if_unbuffered): Remove function.
* io/transfer.c (next_record): Call smarkeor instead of
flush_if_unbuffered.

From-SVN: r211353

10 years agocgraphunit.c (assemble_thunks_and_aliases): Expand thunks before outputting aliases.
Jan Hubicka [Sun, 8 Jun 2014 02:29:58 +0000 (04:29 +0200)]
cgraphunit.c (assemble_thunks_and_aliases): Expand thunks before outputting aliases.

* cgraphunit.c (assemble_thunks_and_aliases): Expand thunks before
outputting aliases.

From-SVN: r211352

10 years agoDaily bump.
GCC Administrator [Sun, 8 Jun 2014 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r211351

10 years agogcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers from test_insn...
Steven Bosscher [Sat, 7 Jun 2014 21:12:03 +0000 (21:12 +0000)]
gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers from test_insn into GGC space escape via SET_SRC.

* gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers
from test_insn into GGC space escape via SET_SRC.

From-SVN: r211347

10 years agotree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a call statement...
Eric Botcazou [Sat, 7 Jun 2014 11:59:18 +0000 (11:59 +0000)]
tree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a call statement, if any.

* tree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a
call statement, if any.
(gimple_equal_p) <GIMPLE_CALL>: Compare the static chain of the call
statements, if any.  Tidy up.

From-SVN: r211342

10 years agoDR 2344 - std::quoted doesn't respect padding
Ed Smith-Rowland [Sat, 7 Jun 2014 03:40:30 +0000 (03:40 +0000)]
DR 2344 - std::quoted doesn't respect padding

2014-06-06  Ed Smith-Rowland  <3dw4rd@verizon.net>

DR 2344 - std::quoted doesn't respect padding
* include/std/iomanip: Allow for padding in quoted inserters.
* testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
* testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.

From-SVN: r211340

10 years agoDaily bump.
GCC Administrator [Sat, 7 Jun 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r211339

10 years agore PR target/18343 (mmix-knuth-mmixware testsuite failure: gcc.dg/builtin-return...
Hans-Peter Nilsson [Fri, 6 Jun 2014 23:58:33 +0000 (23:58 +0000)]
re PR target/18343 (mmix-knuth-mmixware testsuite failure: gcc.dg/builtin-return-1.c)

PR target/18343
* gcc.dg/torture/stackalign/builtin-return-1.c (STACK_ARGUMENTS_SIZE):
New macro, 0 for __MMIX__, default 64.
(bar): Pass it to __builtin_apply instead of literal 64.

From-SVN: r211333

10 years agore PR target/61431 (Powerpc tests pack01.c and p8vector-int128-2.c fail on little...
Michael Meissner [Fri, 6 Jun 2014 23:15:36 +0000 (23:15 +0000)]
re PR target/61431 (Powerpc tests pack01.c and p8vector-int128-2.c fail on little endian power8 systems)

2014-06-06  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/61431
* config/rs6000/vsx.md (VSX_LE): Split VSX_D into 2 separate
iterators, VSX_D that handles 64-bit types, and VSX_LE that
handles swapping the two 64-bit double words on little endian
systems.  Include V1TImode and optionally TImode in VSX_LE so that
these types are properly swapped.  Change all of the insns and
splits that do the 64-bit swaps to use VSX_LE.
(vsx_le_perm_load_<mode>): Likewise.
(vsx_le_perm_store_<mode>): Likewise.
(splitters for little endian memory operations): Likewise.
(vsx_xxpermdi2_le_<mode>): Likewise.
(vsx_lxvd2x2_le_<mode>): Likewise.
(vsx_stxvd2x2_le_<mode>): Likewise.

From-SVN: r211329

10 years agolibgo: Merge to master revision 19184.
Ian Lance Taylor [Fri, 6 Jun 2014 22:37:27 +0000 (22:37 +0000)]
libgo: Merge to master revision 19184.

The next revision, 19185, renames several runtime files, and
will be handled in a separate change.

From-SVN: r211328

10 years agoupdate my email address
Sebastian Pop [Fri, 6 Jun 2014 22:22:41 +0000 (22:22 +0000)]
update my email address

2014-06-06  Sebastian Pop  <sebpop@gmail.com>

* MAINTAINERS: Update my email address.

From-SVN: r211327

10 years ago1.cc: Simplify test.
François Dumont [Fri, 6 Jun 2014 20:18:24 +0000 (20:18 +0000)]
1.cc: Simplify test.

2014-06-06  François Dumont  <fdumont@gcc.gnu.org>

* testsuite/23_containers/map/operators/1.cc: Simplify test.

From-SVN: r211324

10 years agoio.c (resolve_tag): Warn on non-default kind for NUMBER...
Francois-Xavier Coudert [Fri, 6 Jun 2014 19:57:51 +0000 (19:57 +0000)]
io.c (resolve_tag): Warn on non-default kind for NUMBER...

* io.c (resolve_tag): Warn on non-default kind for NUMBER,
NEXTREC, RECL, NAMED, OPENED and PENDING I/O specifiers.

* gfortran.dg/io_constraints_11.f90: New file.
* gfortran.dg/io_constraints_12.f90: New file.
* gfortran.dg/io_constraints_13.f90: New file.

From-SVN: r211323

10 years agore PR target/61423 (Incorrect conversion from unsigned int to floating point)
Uros Bizjak [Fri, 6 Jun 2014 17:45:10 +0000 (19:45 +0200)]
re PR target/61423 (Incorrect conversion from unsigned int to floating point)

PR target/61423
* config/i386/i386.md (*floatunssi<mode>2_i387_with_xmm): New
define_insn_and_split pattern, merged from *floatunssi<mode>2_1
and corresponding splitters.  Zero extend general register
or memory input operand to XMM temporary.  Enable for
TARGET_SSE2 and TARGET_INTER_UNIT_MOVES_TO_VEC only.
(floatunssi<mode>2): Update expander predicate.

testsuite/ChangeLog:

PR target/61423
* gcc.target/i386/pr61423.c: New test.

From-SVN: r211321

10 years agore PR rtl-optimization/61325 (aarch64_be build fails)
Vladimir Makarov [Fri, 6 Jun 2014 17:22:34 +0000 (17:22 +0000)]
re PR rtl-optimization/61325 (aarch64_be build fails)

2014-06-06  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* lra-constraints.c (process_address_1): Check scale equal to one
to prevent transformation: base + scale * index => base + new_reg.

From-SVN: r211320

10 years agore PR c++/60184 (g++ does not allow static members of named unions)
Paolo Carlini [Fri, 6 Jun 2014 16:01:37 +0000 (16:01 +0000)]
re PR c++/60184 (g++ does not allow static members of named unions)

/cp
2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60184
* class.c (check_field_decls): In C++11 mode do not reject
static data members and reference-type members in unions.

/testsuite
2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60184
* g++.dg/cpp0x/constexpr-union6.C: New.
* g++.dg/cpp0x/union6.C: Likewise.
* g++.dg/init/ref14.C: Adjust.
* g++.dg/init/union1.C: Likewise.

From-SVN: r211318

10 years agore PR tree-optimization/59299 (We do not sink loads)
Richard Biener [Fri, 6 Jun 2014 15:31:47 +0000 (15:31 +0000)]
re PR tree-optimization/59299 (We do not sink loads)

2014-06-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/59299
* tree-ssa-sink.c (all_immediate_uses_same_place): Work on
a def operand.
(nearest_common_dominator_of_uses): Likewise.
(statement_sink_location): Adjust.  Support sinking loads.

* gcc.dg/tree-ssa/ssa-sink-10.c: New testcase.

From-SVN: r211317

10 years agofaq.xml (faq.stream_reopening_fails): Replace <quote> in code example.
Jonathan Wakely [Fri, 6 Jun 2014 14:36:22 +0000 (15:36 +0100)]
faq.xml (faq.stream_reopening_fails): Replace <quote> in code example.

* doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
code example.
* doc/xml/manual/backwards_compatibility.xml
(backwards.second.stringstreams): Likewise.
* doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
change of default.
* doc/xml/manual/containers.xml (associative.bitset.type_string):
Replace <quote> in code example.
* doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
* doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
fix typos, improve markup.
* doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
<emphasis> with <replaceable>.
* doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
* doc/xml/manual/support.xml (std.support.memory): Replace <quote>
and remove newlines in string literal.

From-SVN: r211316

10 years agoipa-prop.c (get_place_in_agg_contents_list): New function.
Martin Jambor [Fri, 6 Jun 2014 13:26:24 +0000 (15:26 +0200)]
ipa-prop.c (get_place_in_agg_contents_list): New function.

2014-06-06  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (get_place_in_agg_contents_list): New function.
(build_agg_jump_func_from_list): Likewise.
(determine_known_aggregate_parts): Renamed to
determine_locally_known_aggregate_parts.  Moved some functionality
to the two functions above, removed bound checks.

From-SVN: r211315

10 years ago[AArch64] Implement movmem for the benefit of inline memcpy
James Greenhalgh [Fri, 6 Jun 2014 13:16:40 +0000 (13:16 +0000)]
[AArch64] Implement movmem for the benefit of inline memcpy

gcc/

* config/aarch64/aarch64-protos.h (aarch64_expand_movmem): New.
* config/aarch64/aarch64.c (aarch64_move_pointer): New.
(aarch64_progress_pointer): Likewise.
(aarch64_copy_one_part_and_move_pointers): Likewise.
(aarch64_expand_movmen): Likewise.
* config/aarch64/aarch64.h (MOVE_RATIO): Set low.
* config/aarch64/aarch64.md (movmem<mode>): New.

gcc/testsuite/

* gcc.dg/tree-ssa/pr42585.c: Skip for AArch64.
* gcc.dg/tree-ssa/sra-12.c: Likewise.

From-SVN: r211314

10 years agobswap-2.c: Add alignment constraints to bitfield and test wrong results instead of...
Thomas Preud'homme [Fri, 6 Jun 2014 10:42:50 +0000 (10:42 +0000)]
bswap-2.c: Add alignment constraints to bitfield and test wrong results instead of correct...

2014-06-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * gcc.c-torture/execute/bswap-2.c: Add alignment constraints to
    bitfield and test wrong results instead of correct results to make the
    test more portable.

From-SVN: r211313

10 years agore PR c++/60432 (Member pointer resolution within class definition causes segmentatio...
Paolo Carlini [Fri, 6 Jun 2014 10:00:55 +0000 (10:00 +0000)]
re PR c++/60432 (Member pointer resolution within class definition causes segmentation fault)

2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

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

From-SVN: r211312

10 years agotarghooks.c (default_add_stmt_cost): Call target specific hook instead of default...
Bingfeng Mei [Fri, 6 Jun 2014 09:52:51 +0000 (09:52 +0000)]
targhooks.c (default_add_stmt_cost): Call target specific hook instead of default one.

2014-06-06  Bingfeng Mei  <bmei@broadcom.com>

* targhooks.c (default_add_stmt_cost): Call target specific
hook instead of default one.

From-SVN: r211311

10 years agore PR c++/60199 ('error: field initializer is not constant' when initializing static...
Paolo Carlini [Fri, 6 Jun 2014 09:52:33 +0000 (09:52 +0000)]
re PR c++/60199 ('error: field initializer is not constant' when initializing static member function pointer to a function)

2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

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

From-SVN: r211310

10 years agoChangeLog (2014-05-23): Fix ChangeLog entry to refer to target endianness instead...
Thomas Preud'homme [Fri, 6 Jun 2014 08:23:16 +0000 (08:23 +0000)]
ChangeLog (2014-05-23): Fix ChangeLog entry to refer to target endianness instead of host endianness.

2014-06-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * ChangeLog (2014-05-23): Fix ChangeLog entry to refer to target
      endianness instead of host endianness.
    * tree-ssa-math-opts.c (find_bswap_or_nop_1): Likewise in dumps and
      comments.

    gcc/testsuite/
    * gcc.dg/optimize-bswaphi-1.c: Adapt test to change of dump output.
      Specify -march=z900 as an additional option.
    * gcc.dg/optimize-bswapsi-1.c: Likewise for s390 options.
    * gcc.dg/optimize-bswapsi-2.c: Likewise.
    * gcc.dg/optimize-bswapdi-3.c: Likewise for adaptation to dump change.

From-SVN: r211309

10 years agore PR debug/53927 (wrong value for DW_AT_static_link)
Eric Botcazou [Fri, 6 Jun 2014 08:13:24 +0000 (08:13 +0000)]
re PR debug/53927 (wrong value for DW_AT_static_link)

PR debug/53927
* function.c (instantiate_decls): Process the saved static chain.
(expand_function_start): If not optimizing, save the static chain
onto the stack.
* tree-nested.c (convert_all_function_calls): Always create the static
chain for nested functions if not optimizing.

From-SVN: r211308

10 years ago* tree-cfg.c (make_edges) <GIMPLE_RETURN>: Put a location on the edge.
Eric Botcazou [Fri, 6 Jun 2014 07:39:53 +0000 (07:39 +0000)]
* tree-cfg.c (make_edges) <GIMPLE_RETURN>: Put a location on the edge.

From-SVN: r211307

10 years agocfgexpand.c (expand_gimple_cond): Remove check for current_loops.
Richard Biener [Fri, 6 Jun 2014 07:38:07 +0000 (07:38 +0000)]
cfgexpand.c (expand_gimple_cond): Remove check for current_loops.

2014-06-06  Richard Biener  <rguenther@suse.de>

* cfgexpand.c (expand_gimple_cond): Remove check for current_loops.
(construct_init_block): Likewise.
(construct_exit_block): Likewise.
(pass_expand::execute): Likewise.
* graphite.c (graphite_transforms): Replace check for current_loops
with a check for > 1 loops.
(pass_graphite_transforms::execute): Adjust.
* ipa-split.c (split_function): Remove check for current_loops.
* omp-low.c (expand_parallel_call): Likewise.
(expand_omp_for_init_counts): Likewise.
(extract_omp_for_update_vars): Likewise.
(expand_omp_for_generic): Likewise.
(expand_omp_sections): Likewise.
(expand_omp_target): Likewise.
* tracer.c (tail_duplicate): Likewise.
(pass_tracer::execute): Likewise.
* trans-mem.c (expand_transaction): Likewise.
* tree-complex.c (expand_complex_div_wide): Likewise.
* tree-eh.c (lower_resx): Likewise.
(cleanup_empty_eh_merge_phis): Likewise.
* tree-predcom.c (run_tree_predictive_commoning): Replace check for
current_loops with a check for > 1 loops.
(pass_predcom::execute): Adjust.
* tree-scalar-evolution.c (scev_reset): Remove check for current_loops.
* tree-ssa-copy.c (copy_prop_visit_phi_node): Likewise.
* tree-ssa-dom.c (pass_phi_only_cprop::execute): Likewise.
* tree-ssa-tail-merge.c (tail_merge_optimize): Likewise.
* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.
* tree-switch-conversion.c (process_switch): Likewise.
* tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
* tree-vrp.c (vrp_visit_phi_node): Likewise.
(execute_vrp): Likewise.
* ubsan.c (ubsan_expand_null_ifn): Likewise.

From-SVN: r211306

10 years agortl.h (insn_location): Declare.
Eric Botcazou [Fri, 6 Jun 2014 07:32:25 +0000 (07:32 +0000)]
rtl.h (insn_location): Declare.

* rtl.h (insn_location): Declare.
* cfgcleanup.c (try_forward_edges): Compare the locus of locations
with UNKNOWN_LOCATION.
* emit-rtl.c (insn_location): New function.
* final.c (notice_source_line): Check that the instruction has a
location before retrieving it and use insn_location.
* modulo-sched.c (loop_single_full_bb_p): Likewise.
* print-rtl.c (print_rtx): Likewise.

From-SVN: r211305

10 years agopasses.def: Move 2nd VRP pass before phi-only-cprop.
Richard Biener [Fri, 6 Jun 2014 07:29:45 +0000 (07:29 +0000)]
passes.def: Move 2nd VRP pass before phi-only-cprop.

2014-06-06  Richard Biener  <rguenther@suse.de>

* passes.def: Move 2nd VRP pass before phi-only-cprop.

From-SVN: r211304

10 years agodump-parse-tree.c (show_omp_namelist): Dump reduction id in each list item.
Jakub Jelinek [Fri, 6 Jun 2014 07:24:38 +0000 (09:24 +0200)]
dump-parse-tree.c (show_omp_namelist): Dump reduction id in each list item.

gcc/fortran/
* dump-parse-tree.c (show_omp_namelist): Dump reduction
id in each list item.
(show_omp_node): Only handle OMP_LIST_REDUCTION, not
OMP_LIST_REDUCTION_FIRST .. OMP_LIST_REDUCTION_LAST.  Don't
dump reduction id here.
* frontend-passes.c (dummy_code_callback): Renamed to...
(gfc_dummy_code_callback): ... this.  No longer static.
(optimize_reduction): Use gfc_dummy_code_callback instead of
dummy_code_callback.
* gfortran.h (gfc_statement): Add ST_OMP_DECLARE_REDUCTION.
(symbol_attribute): Add omp_udr_artificial_var bitfield.
(gfc_omp_reduction_op): New enum.
(gfc_omp_namelist): Add rop and udr fields.
(OMP_LIST_PLUS, OMP_LIST_REDUCTION_FIRST, OMP_LIST_MULT,
OMP_LIST_SUB, OMP_LIST_AND, OMP_LIST_OR, OMP_LIST_EQV,
OMP_LIST_NEQV, OMP_LIST_MAX, OMP_LIST_MIN, OMP_LIST_IAND,
OMP_LIST_IOR, OMP_LIST_IEOR, OMP_LIST_REDUCTION_LAST): Removed.
(OMP_LIST_REDUCTION): New.
(gfc_omp_udr): New type.
(gfc_get_omp_udr): Define.
(gfc_symtree): Add n.omp_udr field.
(gfc_namespace): Add omp_udr_root field, add omp_udr_ns bitfield.
(gfc_free_omp_udr, gfc_omp_udr_find, gfc_resolve_omp_udrs,
gfc_dummy_code_callback): New prototypes.
* match.h (gfc_match_omp_declare_reduction): New prototype.
* module.c (MOD_VERSION): Increase to 13.
(omp_declare_reduction_stmt): New array.
(mio_omp_udr_expr, write_omp_udr, write_omp_udrs, load_omp_udrs):
New functions.
(read_module): Read OpenMP user defined reductions.
(write_module): Write OpenMP user defined reductions.
* openmp.c: Include arith.h.
(gfc_free_omp_udr, gfc_find_omp_udr): New functions.
(gfc_match_omp_clauses): Handle user defined reductions.
Store reduction kind into gfc_omp_namelist instead of using
several OMP_LIST_* entries.
(match_udr_expr, gfc_omp_udr_predef, gfc_omp_udr_find,
gfc_match_omp_declare_reduction): New functions.
(resolve_omp_clauses): Adjust for reduction clauses being only
in OMP_LIST_REDUCTION list.  Diagnose missing UDRs.
(struct omp_udr_callback_data): New type.
(omp_udr_callback, gfc_resolve_omp_udr, gfc_resolve_omp_udrs): New
functions.
* parse.c (decode_omp_directive): Handle !$omp declare reduction.
(case_decl): Add ST_OMP_DECLARE_REDUCTION.
(gfc_ascii_statement): Print ST_OMP_DECLARE_REDUCTION.
* resolve.c (resolve_fl_variable): Allow len=: or len=* on
sym->attr.omp_udr_artificial_var symbols.
(resolve_types): Call gfc_resolve_omp_udrs.
* symbol.c (gfc_get_uop): If gfc_current_ns->omp_udr_ns,
use parent ns instead of gfc_current_ns.
(gfc_get_sym_tree): Don't insert symbols into
namespaces with omp_udr_ns set.
(free_omp_udr_tree): New function.
(gfc_free_namespace): Call it.
* trans-openmp.c (struct omp_udr_find_orig_data): New type.
(omp_udr_find_orig, gfc_trans_omp_udr_expr): New functions.
(gfc_trans_omp_array_reduction): Renamed to...
(gfc_trans_omp_array_reduction_or_udr): ... this.  Remove SYM
argument, instead pass gfc_omp_namelist pointer N.  Handle
user defined reductions.
(gfc_trans_omp_reduction_list): Remove REDUCTION_CODE argument.
Handle user defined reductions and reduction ops in gfc_omp_namelist.
(gfc_trans_omp_clauses): Adjust for just a single OMP_LIST_REDUCTION
list.
(gfc_split_omp_clauses): Likewise.
gcc/testsuite/
* gfortran.dg/gomp/allocatable_components_1.f90: Adjust for
reduction clause diagnostic changes.
* gfortran.dg/gomp/appendix-a/a.31.3.f90: Likewise.
* gfortran.dg/gomp/reduction1.f90: Likewise.
* gfortran.dg/gomp/reduction3.f90: Likewise.
* gfortran.dg/gomp/udr1.f90: New test.
* gfortran.dg/gomp/udr2.f90: New test.
* gfortran.dg/gomp/udr3.f90: New test.
* gfortran.dg/gomp/udr4.f90: New test.
* gfortran.dg/gomp/udr5.f90: New test.
* gfortran.dg/gomp/udr6.f90: New test.
* gfortran.dg/gomp/udr7.f90: New test.
libgomp/
* testsuite/libgomp.fortran/simd1.f90: New test.
* testsuite/libgomp.fortran/udr1.f90: New test.
* testsuite/libgomp.fortran/udr2.f90: New test.
* testsuite/libgomp.fortran/udr3.f90: New test.
* testsuite/libgomp.fortran/udr4.f90: New test.
* testsuite/libgomp.fortran/udr5.f90: New test.
* testsuite/libgomp.fortran/udr6.f90: New test.
* testsuite/libgomp.fortran/udr7.f90: New test.
* testsuite/libgomp.fortran/udr8.f90: New test.
* testsuite/libgomp.fortran/udr9.f90: New test.
* testsuite/libgomp.fortran/udr10.f90: New test.
* testsuite/libgomp.fortran/udr11.f90: New test.

From-SVN: r211303

10 years agore PR tree-optimization/43934 (LIM should handle PHI nodes)
Christian Bruel [Fri, 6 Jun 2014 07:21:02 +0000 (09:21 +0200)]
re PR tree-optimization/43934 (LIM should handle PHI nodes)

PR tree-optimization/43934
* tree-ssa-loop-im.c (determine_max_movement): Add PHI def constant cost.

From-SVN: r211302

10 years agoChangeLog entry correction.
Marcus Shawcroft [Fri, 6 Jun 2014 07:03:29 +0000 (07:03 +0000)]
ChangeLog entry correction.

Correcting one of the ChangeLog entries committed earlier to recognize
that RenLin Lee also contributed to the patch.

From-SVN: r211301

10 years agoira-lives.c (single_reg_class): Add missing break.
Richard Sandiford [Fri, 6 Jun 2014 06:59:22 +0000 (06:59 +0000)]
ira-lives.c (single_reg_class): Add missing break.

gcc/
* ira-lives.c (single_reg_class): Add missing break.  Explicitly
return NO_REGS for extra address and memory constraints.  Handle
operands that match (or are equivalent to something that matches)
extra constant constraints.  Ignore other non-register operands.

From-SVN: r211300

10 years agopr61391.c: Fix test.
Kirill Yukhin [Fri, 6 Jun 2014 05:31:26 +0000 (05:31 +0000)]
pr61391.c: Fix test.

gcc/testsuite/
* gcc.dg/torture/pr61391.c: Fix test.

From-SVN: r211298

10 years agore PR target/61300 (powerpc64le miscompile with K&R-style function definition at...
Alan Modra [Fri, 6 Jun 2014 01:04:22 +0000 (10:34 +0930)]
re PR target/61300 (powerpc64le miscompile with K&R-style function definition at -O0)

PR target/61300
* doc/tm.texi.in (INCOMING_REG_PARM_STACK_SPACE): Document.
* doc/tm.texi: Regenerate.
* function.c (INCOMING_REG_PARM_STACK_SPACE): Provide default.
Use throughout in place of REG_PARM_STACK_SPACE.
* config/rs6000/rs6000.c (rs6000_reg_parm_stack_space): Add
"incoming" param.  Pass to rs6000_function_parms_need_stack.
(rs6000_function_parms_need_stack): Add "incoming" param, ignore
prototype_p when incoming.  Use function decl when incoming
to handle K&R style functions.
* config/rs6000/rs6000.h (REG_PARM_STACK_SPACE): Adjust.
(INCOMING_REG_PARM_STACK_SPACE): Define.

From-SVN: r211296

10 years agoDaily bump.
GCC Administrator [Fri, 6 Jun 2014 00:17:00 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211294

10 years agore PR c++/43453 (Initialization of char array with string literal fails in mem-initia...
Jason Merrill [Thu, 5 Jun 2014 20:55:44 +0000 (16:55 -0400)]
re PR c++/43453 (Initialization of char array with string literal fails in mem-initializer)

PR c++/43453
* decl.c (check_initializer): Collapse a TREE_LIST here.
* typeck2.c (store_init_value): Not here.

From-SVN: r211290