Jason Merrill [Tue, 20 May 2014 17:37:57 +0000 (13:37 -0400)]
typeck.c (get_member_function_from_ptrfunc): Don't try to look up a virtual function in a dummy object.
* typeck.c (get_member_function_from_ptrfunc): Don't try to look
up a virtual function in a dummy object.
From-SVN: r210651
Alexey Merzlyakov [Tue, 20 May 2014 17:25:26 +0000 (17:25 +0000)]
re PR target/61223 (libstdc++ build fail due to pop lr register)
2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
PR libstdc++/61223
Revert:
2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
PR libstdc++/60758
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
and add unwind directives.
From-SVN: r210650
Eric Botcazou [Tue, 20 May 2014 17:01:35 +0000 (17:01 +0000)]
tree-ssa-dom.c (hashable_expr_equal_p): Also compare the EH region of calls to pure functions that can throw an exception.
* tree-ssa-dom.c (hashable_expr_equal_p) <EXPR_CALL>: Also compare the
EH region of calls to pure functions that can throw an exception.
* tree-ssa-sccvn.c (vn_reference_eq): Remove duplicated test.
(copy_reference_ops_from_call): Also copy the EH region of the call if
it can throw an exception.
From-SVN: r210649
Nick Clifton [Tue, 20 May 2014 16:51:58 +0000 (16:51 +0000)]
msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
* config/msp430/msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(msp430_gimplify_va_arg_expr): New function.
(msp430_print_operand): Handle (CONST (ZERO_EXTRACT)).
From-SVN: r210648
Paolo Carlini [Tue, 20 May 2014 15:16:48 +0000 (15:16 +0000)]
re PR c++/60373 (half warning: visibility attribute ignored because it)
/cp
2014-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60373
* decl.c (duplicate_decls): Replace pair of warning_at with
warning_at + inform.
(maybe_commonize_var): Likewise.
/testsuite
2014-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60373
* g++.dg/cpp0x/Wattributes1.C: New.
* g++.dg/ext/visibility/redecl1.C: Adjust.
* g++.dg/ext/visibility/visibility-7.C: Likewise.
From-SVN: r210646
Richard Sandiford [Tue, 20 May 2014 14:18:44 +0000 (14:18 +0000)]
re PR bootstrap/61210 (bootstrap failure with clang)
gcc/cp/
PR bootstrap/61210
* pt.c (tsubst_copy, tsubst_omp_for_iterator, tsubst_expr)
(tsubst_copy_and_build): Perform recursive substitutions in a
deterministic order.
From-SVN: r210645
Bill Schmidt [Tue, 20 May 2014 14:14:21 +0000 (14:14 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Optimize case of nested VEC_SELECTs that are inverses of each other.
[gcc]
2014-05-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* simplify-rtx.c (simplify_binary_operation_1): Optimize case of
nested VEC_SELECTs that are inverses of each other.
[gcc/testsuite]
2014-05-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/vsxcopy.c: New test.
From-SVN: r210644
Richard Biener [Tue, 20 May 2014 13:54:06 +0000 (13:54 +0000)]
tree-ssa-sccvn.c (process_scc): Dump SCC here, when iterating,
2014-05-20 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c (process_scc): Dump SCC here, when
iterating,
(extract_and_process_scc_for_name): not here.
(cond_dom_walker::before_dom_children): Only process
stmts that end the BB in interesting ways.
(run_scc_vn): Mark param uses as visited.
From-SVN: r210643
Paolo Carlini [Tue, 20 May 2014 13:30:40 +0000 (13:30 +0000)]
re PR c++/58664 ([c++11] ICE initializing array of incomplete type within union)
/cp
2014-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58664
* typeck2.c (cxx_incomplete_type_inform): New.
(cxx_incomplete_type_diagnostic): Use it.
* decl.c (grokdeclarator): Check the element type of an
incomplete array type; call the above.
* cp-tree.h (cxx_incomplete_type_inform): Declare.
/testsuite
2014-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58664
* g++.dg/cpp0x/nsdmi-union6.C: New.
* g++.dg/parse/pr58664.C: Likewise.
* g++.dg/cpp0x/nsdmi6.C: Tweak.
* g++.dg/parse/crash31.C: Likewise.
* g++.dg/template/error2.C: Likewise.
* g++.dg/template/inherit8.C: Likewise.
* g++.dg/template/offsetof2.C: Likewise.
From-SVN: r210642
Kyrylo Tkachov [Tue, 20 May 2014 13:16:21 +0000 (13:16 +0000)]
[ARM] Adjust arith_shiftsi for -mrestrict-it.
* config/arm/arm.md (arith_shiftsi): Do not predicate for
arm_restrict_it.
From-SVN: r210640
Richard Sandiford [Tue, 20 May 2014 10:08:59 +0000 (10:08 +0000)]
dg-extract-results.py (parse_run): Handle warnings that are printed before a test harness is run.
contrib/
* dg-extract-results.py (parse_run): Handle warnings that are printed
before a test harness is run.
From-SVN: r210637
Nick Clifton [Tue, 20 May 2014 09:38:00 +0000 (09:38 +0000)]
msp430.md (zero_extendpsisi2): Use + constraint on operand 0 in order to prevent confusion about the number of...
* config/msp430/msp430.md (zero_extendpsisi2): Use + constraint on
operand 0 in order to prevent confusion about the number of
registers involved.
From-SVN: r210636
Sebastian Huber [Tue, 20 May 2014 08:20:06 +0000 (08:20 +0000)]
libffi.exp (load_gcc_lib): Register loaded libs.
2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
libffi/
* testsuite/lib/libffi.exp (load_gcc_lib): Register loaded libs.
libjava/
* testsuite/lib/libjava.exp (load_gcc_lib): Register loaded libs.
libstdc++-v3/
* testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
From-SVN: r210634
Richard Biener [Tue, 20 May 2014 08:16:13 +0000 (08:16 +0000)]
re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)
2014-05-20 Richard Biener <rguenther@suse.de>
PR tree-optimization/61221
* tree-ssa-pre.c (el_to_update): Remove.
(eliminate_dom_walker::before_dom_children): Handle released
VDEFs by value-numbering them to the associated VUSE. Update
stmt immediately for substituted call address.
(eliminate): Remove delayed stmt updating code.
* tree-ssa-sccvn.c (vuse_ssa_val): New function valueizing
possibly late re-numbered vuses.
(vn_reference_lookup_2): Adjust.
(vn_reference_lookup_pieces): Likewise.
(vn_reference_lookup): Likewise.
From-SVN: r210633
Richard Biener [Tue, 20 May 2014 08:01:32 +0000 (08:01 +0000)]
config.gcc: Remove need_64bit_hwint.
2014-05-20 Richard Biener <rguenther@suse.de>
gcc/
* config.gcc: Remove need_64bit_hwint.
* configure.ac: Do not define NEED_64BIT_HOST_WIDE_INT.
* hwint.h: Do not check NEED_64BIT_HOST_WIDE_INT but assume
it to be true.
* config.in: Regenerate.
* configure: Likewise.
libcpp/
* configure.ac: Copy gcc logic of detecting a 64bit type.
Remove HOST_WIDE_INT define.
* include/cpplib.h: typedef cpp_num_part to a 64bit type,
similar to how hwint.h does it.
* config.in: Regenerate.
* configure: Likewise.
From-SVN: r210632
Joern Rennecke [Tue, 20 May 2014 07:08:01 +0000 (08:08 +0100)]
* mode-switching.c (optimize_mode_switching): Fix comment typo.
From-SVN: r210631
Tim Shen [Tue, 20 May 2014 04:31:54 +0000 (04:31 +0000)]
re PR libstdc++/61227 ([C++11] Regex [\w] does not work)
2014-05-20 Tim Shen <timshen91@gmail.com>
PR libstdc++/61227
* include/bits/regex_compiler.h
(_BracketMatcher<>::_M_add_character_class): Add negative character
class support.
* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
Add more testcases.
From-SVN: r210630
GCC Administrator [Tue, 20 May 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210629
Jonathan Wakely [Mon, 19 May 2014 21:43:13 +0000 (22:43 +0100)]
* python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
From-SVN: r210625
Jason Merrill [Mon, 19 May 2014 18:41:24 +0000 (14:41 -0400)]
re PR c++/58761 (ICE with a lambda capturing this in a NSDMI)
PR c++/58761
* pt.c (tsubst_copy): Don't check at_function_scope_p.
(instantiate_class_template_1): Don't push_to_top_level in an nsdmi.
From-SVN: r210624
Paolo Carlini [Mon, 19 May 2014 17:51:31 +0000 (17:51 +0000)]
typeck2.c (cxx_incomplete_type_diagnostic): Use inform.
/cp
2014-05-19 Paolo Carlini <paolo.carlini@oracle.com>
* typeck2.c (cxx_incomplete_type_diagnostic): Use inform.
* parser.c (cp_parser_enum_specifier): Likewise.
/testsuite
2014-05-19 Paolo Carlini <paolo.carlini@oracle.com>
* c-c++-common/gomp/simd4.c: Adjust for inform.
* g++.dg/cpp0x/decltype-call1.C: Likewise.
* g++.dg/cpp0x/forw_enum6.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-ice7.C: Likewise.
* g++.dg/cpp0x/noexcept15.C: Likewise.
* g++.dg/cpp0x/variadic-ex2.C: Likewise.
* g++.dg/eh/spec6.C: Likewise.
* g++.dg/expr/cast1.C: Likewise.
* g++.dg/expr/dtor1.C: Likewise.
* g++.dg/ext/is_base_of_diagnostic.C: Likewise.
* g++.dg/ext/unary_trait_incomplete.C: Likewise.
* g++.dg/gomp/pr49223-2.C: Likewise.
* g++.dg/gomp/udr-4.C: Likewise.
* g++.dg/init/delete1.C: Likewise.
* g++.dg/other/crash-2.C: Likewise.
* g++.dg/parse/crash24.C: Likewise.
* g++.dg/parse/crash25.C: Likewise.
* g++.dg/parse/crash31.C: Likewise.
* g++.dg/parse/crash49.C: Likewise.
* g++.dg/parse/crash50.C: Likewise.
* g++.dg/parse/crash54.C: Likewise.
* g++.dg/parse/dtor7.C: Likewise.
* g++.dg/parse/error40.C: Likewise.
* g++.dg/parse/fused-params1.C: Likewise.
* g++.dg/parse/new1.C: Likewise.
* g++.dg/template/crash35.C: Likewise.
* g++.dg/template/crash59.C: Likewise.
* g++.dg/template/crash77.C: Likewise.
* g++.dg/template/error51.C: Likewise.
* g++.dg/template/incomplete1.C: Likewise.
* g++.dg/template/incomplete3.C: Likewise.
* g++.dg/template/incomplete4.C: Likewise.
* g++.dg/template/incomplete5.C: Likewise.
* g++.dg/template/inherit8.C: Likewise.
* g++.dg/template/instantiate1.C: Likewise.
* g++.dg/template/instantiate3.C: Likewis: Likewise.
* g++.dg/template/offsetof2.C: Likewise.
* g++.dg/tm/pr51928.C: Likewise.
* g++.dg/warn/Wdelete-incomplete-1.C: Likewise.
* g++.dg/warn/incomplete1.C: Likewise.
* g++.dg/warn/incomplete2.C: Likewise.
* g++.old-deja/g++.brendan/friend4.C: Likewise.
* g++.old-deja/g++.bugs/900121_01.C: Likewise.
* g++.old-deja/g++.bugs/900214_01.C: Likewise.
* g++.old-deja/g++.eh/catch1.C: Likewise.
* g++.old-deja/g++.eh/spec6.C: Likewise.
* g++.old-deja/g++.mike/p7868.C: Likewise.
* g++.old-deja/g++.other/crash38.C: Likewise.
* g++.old-deja/g++.other/enum2.C: Likewise.
* g++.old-deja/g++.other/incomplete.C: Likewise.
* g++.old-deja/g++.other/vaarg3.C: Likewise.
* g++.old-deja/g++.pt/crash9.C: Likewise.
* g++.old-deja/g++.pt/niklas01a.C: Likewise.
* g++.old-deja/g++.pt/typename8.C: Likewise.
* g++.old-deja/g++.robertl/ice990323-1.C: Likewise.
From-SVN: r210623
David Wohlferd [Mon, 19 May 2014 17:40:40 +0000 (17:40 +0000)]
extend.texi: Create Label Attributes section, move all label attributes into it and reference it.
2014-05-19 David Wohlferd <dw@LimeGreenSocks.com>
* doc/extend.texi: Create Label Attributes section,
move all label attributes into it and reference it.
From-SVN: r210621
Mike Stump [Mon, 19 May 2014 17:12:53 +0000 (17:12 +0000)]
+ * MAINTAINERS: Add wide-int reviewers.
From-SVN: r210620
Richard Earnshaw [Mon, 19 May 2014 16:09:49 +0000 (16:09 +0000)]
arm.c (thumb1_reorg): When scanning backwards skip anything that's not a proper insn.
* arm.c (thumb1_reorg): When scanning backwards skip anything
that's not a proper insn.
From-SVN: r210618
Joseph Myers [Mon, 19 May 2014 15:50:40 +0000 (16:50 +0100)]
* lib/target-supports.exp
(check_effective_target_vect_sizes_32B_16B): Return false if
128-bit AVX vectors preferred.
From-SVN: r210617
Mike Stump [Mon, 19 May 2014 15:32:22 +0000 (15:32 +0000)]
target-supports.exp (check_effective_target_avx): Early out if not x86 to prevent x86 flags on non-x86 targets.
* lib/target-supports.exp (check_effective_target_avx): Early out
if not x86 to prevent x86 flags on non-x86 targets.
From-SVN: r210616
Richard Henderson [Mon, 19 May 2014 14:41:18 +0000 (07:41 -0700)]
libitm: Enable aarch64
From-SVN: r210615
Richard Biener [Mon, 19 May 2014 14:33:31 +0000 (14:33 +0000)]
re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)
2014-05-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/61221
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Do nothing for unreachable blocks.
* tree-ssa-sccvn.c (cond_dom_walker::before_dom_children):
Improve unreachability detection.
* gcc.dg/torture/pr61221.c: New testcase.
From-SVN: r210614
Richard Biener [Mon, 19 May 2014 14:32:23 +0000 (14:32 +0000)]
re PR middle-end/61209 (internal compiler error: in fold_convert_loc, at fold-const.c:1950)
2014-05-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/61209
* tree-ssa-sccvn.c (visit_phi): Avoid setting expr to VN_TOP.
* gfortran.dg/pr61209.f90: New testcase.
From-SVN: r210613
Nick Clifton [Mon, 19 May 2014 13:27:25 +0000 (13:27 +0000)]
except.c (init_eh): Fix computation of builtin setjmp buffer size to allow for targets where...
* except.c (init_eh): Fix computation of builtin setjmp buffer
size to allow for targets where POINTER_SIZE > BITS_PER_WORD.
From-SVN: r210612
Richard Biener [Mon, 19 May 2014 12:32:15 +0000 (12:32 +0000)]
re PR tree-optimization/61184 (wrong code (that hangs) by LTO on x86_64-linux-gnu)
2014-05-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/61184
* tree-vrp.c (is_negative_overflow_infinity): Use
TREE_OVERFLOW_P and do that check first.
(is_positive_overflow_infinity): Likewise.
(is_overflow_infinity): Likewise.
(vrp_operand_equal_p): Properly treat operands with
differing overflow as not equal.
* c-c++-common/torture/pr61184.c: New testcase.
From-SVN: r210611
Bernd Schmidt [Mon, 19 May 2014 11:38:14 +0000 (11:38 +0000)]
Fix an error in a CONST_INT_P patch from 2009.
* simplify-rtx.c (simplify_unary_operation_1): Use CONST_INT_P in
shift simplification where it was intended.
From-SVN: r210610
Christian Bruel [Mon, 19 May 2014 08:04:22 +0000 (10:04 +0200)]
re PR target/61195 (single precision fmov does not need to switch mode)
PR target/61195
* config/sh/sh.md (movsf_ie): Unset fp_mode for fmov
From-SVN: r210608
Richard Sandiford [Mon, 19 May 2014 07:25:25 +0000 (07:25 +0000)]
re PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)
gcc/
PR target/61084
* config/sparc/sparc.c (sparc_fold_builtin): Use widest_int rather
than wide_int.
From-SVN: r210604
Richard Sandiford [Mon, 19 May 2014 06:49:58 +0000 (06:49 +0000)]
reg-notes.def (CROSSING_JUMP): Likewise.
gcc/
* reg-notes.def (CROSSING_JUMP): Likewise.
* rtl.h (rtx_def): Update comment for jump flag.
(CROSSING_JUMP_P): Define.
* cfgcleanup.c (try_forward_edges, try_optimize_cfg): Use it instead
of a REG_CROSSING_JUMP note.
* cfghooks.c (tidy_fallthru_edges): Likewise.
* cfgrtl.c (fixup_partition_crossing, rtl_verify_edges): Likewise.
* emit-rtl.c (try_split): Likewise.
* haifa-sched.c (sched_create_recovery_edges): Likewise.
* ifcvt.c (find_if_case_1, find_if_case_2): Likewise.
* jump.c (redirect_jump_2): Likewise.
* reorg.c (follow_jumps, fill_slots_from_thread): Likewise.
(relax_delay_slots): Likewise.
* config/arc/arc.md (jump_i, cbranchsi4_scratch, *bbit): Likewise.
(bbit_di): Likewise.
* config/arc/arc.c (arc_reorg, arc_can_follow_jump): Likewise.
* config/sh/sh.md (jump_compact): Likewise.
* bb-reorder.c (rotate_loop): Likewise.
(pass_duplicate_computed_gotos::execute): Likewise.
(add_reg_crossing_jump_notes): Rename to...
(update_crossing_jump_flags): ...this.
(pass_partition_blocks::execute): Update accordingly.
From-SVN: r210603
Richard Sandiford [Mon, 19 May 2014 06:47:03 +0000 (06:47 +0000)]
tree.h: Remove extraneous template <>.
gcc/
* tree.h: Remove extraneous template <>.
From-SVN: r210602
Wei Mi [Mon, 19 May 2014 05:25:45 +0000 (05:25 +0000)]
re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64)
2014-05-18 Wei Mi <wmi@google.com>
PR target/58066
* gcc.target/i386/pr58066.c: Replace pattern matching of .cfi
directive with rtl insns. Add effective-target of fpic and
tls_native.
From-SVN: r210601
Xinliang David Li [Mon, 19 May 2014 01:41:16 +0000 (01:41 +0000)]
Add new test case
From-SVN: r210599
Jan Hubicka [Mon, 19 May 2014 01:01:12 +0000 (03:01 +0200)]
ipa.c (symtab_remove_unreachable_nodes): Remove symbol from comdat group if its body was eliminated.
* ipa.c (symtab_remove_unreachable_nodes): Remove
symbol from comdat group if its body was eliminated.
(comdat_can_be_unshared_p_1): Static symbols can always
be privatized.
* symtab.c (symtab_remove_from_same_comdat_group): Break out
from ...
(symtab_unregister_node): ... this one.
(verify_symtab_base): More strict checking of comdats.
* cgraph.h (symtab_remove_from_same_comdat_group): Declare.
From-SVN: r210598
Jan Hubicka [Mon, 19 May 2014 00:58:43 +0000 (02:58 +0200)]
tree-pass.h (make_pass_ipa_comdats): New pass.
* tree-pass.h (make_pass_ipa_comdats): New pass.
* timevar.def (TV_IPA_COMDATS): New timevar.
* passes.def (pass_ipa_comdats): Add.
* Makefile.in (OBJS): Add ipa-comdats.o
* ipa-comdats.c: New file.
* g++.dg/ipa/comdat.C: New file.
From-SVN: r210597
GCC Administrator [Mon, 19 May 2014 00:18:24 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r210596
Jan Hubicka [Sun, 18 May 2014 21:16:08 +0000 (23:16 +0200)]
ipa.c (update_visibility_by_resolution_info): New function.
* ipa.c (update_visibility_by_resolution_info): New function.
(function_and_variable_visibility): Use it.
From-SVN: r210592
Eric Botcazou [Sun, 18 May 2014 21:12:42 +0000 (21:12 +0000)]
trans.c (Subprogram_Body_to_gnu): Rework comment and set function_start_locus.
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Rework comment and
set function_start_locus.
From-SVN: r210591
Eric Botcazou [Sun, 18 May 2014 21:08:14 +0000 (21:08 +0000)]
utils.c (gnat_write_global_declarations): Adjust the flags put on dummy_global.
* utils.c (gnat_write_global_declarations): Adjust the flags put on
dummy_global.
From-SVN: r210589
Eric Botcazou [Sun, 18 May 2014 21:02:59 +0000 (21:02 +0000)]
decl.c (change_qualified_type): New static function.
* gcc-interface/decl.c (change_qualified_type): New static function.
(gnat_to_gnu_entity): Use it throughout to add qualifiers on types.
<E_Array_Type>: Set TYPE_VOLATILE on the array type directly.
<E_Array_Subtype>: Likewise.
Do not set flags on an UNCONSTRAINED_ARRAY_TYPE directly.
(gnat_to_gnu_component_type): Likewise.
(gnat_to_gnu_param): Likewise.
From-SVN: r210588
Eric Botcazou [Sun, 18 May 2014 20:52:45 +0000 (20:52 +0000)]
fe.h (Set_Present_Expr): Move around.
* fe.h (Set_Present_Expr): Move around.
(End_Location): New macro.
* gcc-interface/trans.c (Case_Statement_to_gnu): Use End_Location.
From-SVN: r210587
Jan Hubicka [Sun, 18 May 2014 19:11:58 +0000 (21:11 +0200)]
cgraph.h (symtab_first_defined_symbol, [...]): New functions.
* cgraph.h (symtab_first_defined_symbol, symtab_next_defined_symbol):
New functions.
(FOR_EACH_DEFINED_SYMBOL): New macro.
(varpool_first_static_initializer, varpool_next_static_initializer,
varpool_first_defined_variable, varpool_next_defined_variable): Fix comments.
(symtab_in_same_comdat_p): Correctly deal with inline functions.
From-SVN: r210586
Eric Botcazou [Sun, 18 May 2014 17:59:58 +0000 (17:59 +0000)]
decl.c (gnat_to_gnu_entity): Use Underlying_Type in lieu of more verbose construct.
* gcc-interface/decl.c (gnat_to_gnu_entity): Use Underlying_Type in
lieu of more verbose construct.
* gcc-interface/trans.c (Call_to_gnu): Likewise.
(gnat_to_gnu): Likewise. Remove obsolete code.
From-SVN: r210585
Eric Botcazou [Sun, 18 May 2014 17:51:15 +0000 (17:51 +0000)]
decl.c (gnat_to_gnu_entity): Do not consider that regular packed arrays can never be superflat.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Do not
consider that regular packed arrays can never be superflat.
From-SVN: r210583
Uros Bizjak [Sun, 18 May 2014 10:29:30 +0000 (12:29 +0200)]
libgomp.texi (Runitme Library Routines): Remove multiple @menu.
* libgomp.texi (Runitme Library Routines): Remove multiple @menu.
(Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
texts according to their @menu entry positions.
From-SVN: r210580
Andreas Schwab [Sun, 18 May 2014 07:25:33 +0000 (07:25 +0000)]
* gcc.target/ia64/visibility-1.c (variable_l): Add used attribute.
From-SVN: r210579
Uros Bizjak [Sun, 18 May 2014 07:24:24 +0000 (09:24 +0200)]
ChangeLog: Fix.
* ChangeLog: Fix.
* testsuite/ChangeLog: Ditto.
From-SVN: r210578
Uros Bizjak [Sun, 18 May 2014 07:17:06 +0000 (09:17 +0200)]
extend.texi (Size of an asm): Really move node to its position.
* doc/extend.texi (Size of an asm): Really move node to its position.
From-SVN: r210577
Jerry DeLisle [Sun, 18 May 2014 02:34:02 +0000 (02:34 +0000)]
re PR libfortran/52539 (I/O: Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write)
2014-05-17 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/52539
* gfortran.dg/namelist_utf8.f90: New test.
From-SVN: r210575
Jerry DeLisle [Sun, 18 May 2014 02:29:27 +0000 (02:29 +0000)]
re PR libfortran/52539 (I/O: Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write)
2014-05-17 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/52539
* io/io.h (gfc_unit): New function pointers *next_char_fn_ptr
and *push_char_fn_ptr.
*io/list_read.c (next_char): Create macro with this name to call
the new function pointer. Split the original next_char function
into three new functions. (next_char_default, next_char_internal,
next_char_utf8): New functions. (push_char): Create macro with
this name to call new function pointer. Split the original
push_char into three new functions. (push_char_default,
push_char_internal, push_char4): New functions. (set_workers):
New function to initilize the function pointers depending on the
type of IO to be performed. (list_formatted_read_scalar): Use
set_workers function. (finish_list_read): Likewise.
(namelist_read): Likewise.
(nml_get_obj_data): Use push_char_default.
From-SVN: r210574
GCC Administrator [Sun, 18 May 2014 00:17:09 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210573
Trevor Saunders [Sat, 17 May 2014 23:15:55 +0000 (23:15 +0000)]
comment ggc_handle_finalizers
* ggc-page.c (ggc_handle_finalizers): Add comment.
From-SVN: r210569
Trevor Saunders [Sat, 17 May 2014 23:08:00 +0000 (23:08 +0000)]
add finalizers to ggc
This implements finalizers by keeping a list of registered finalizers
and after every mark but before sweeping check to see if any of them are
for unmarked blocks.
gcc/ChangeLog:
* ggc-common.c (ggc_internal_cleared_alloc): Adjust.
* ggc-none.c (ggc_internal_alloc): Assert if a finalizer is passed.
(ggc_internal_cleared_alloc): Likewise.
* ggc-page.c (finalizer): New class.
(vec_finalizer): Likewise.
(globals::finalizers): New member.
(globals::vec_finalizers): Likewise.
(ggc_internal_alloc): Record the finalizer if any for the block being
allocated.
(ggc_handle_finalizers): New function.
(ggc_collect): Call ggc_handle_finalizers.
* ggc.h (ggc_internal_alloc): Add arguments to allow installing a
finalizer.
(ggc_internal_cleared_alloc): Likewise.
(finalize): New function.
(need_finalization_p): Likewise.
(ggc_alloc): Install the type's destructor as the finalizer if it
might do something.
(ggc_cleared_alloc): Likewise.
(ggc_vec_alloc): Likewise.
(ggc_cleared_vec_alloc): Likewise.
From-SVN: r210568
Trevor Saunders [Sat, 17 May 2014 23:07:43 +0000 (23:07 +0000)]
remove unused function
gcc/ChangeLog:
*ggc.h (ggc_alloc_cleared_simd_clone_stat): Remove function.
From-SVN: r210567
Trevor Saunders [Sat, 17 May 2014 23:07:23 +0000 (23:07 +0000)]
use templates instead of gengtype for typed allocation functions
gcc/ChangeLog:
* alias.c (record_alias_subset): Adjust.
* bitmap.c (bitmap_element_allocate): Likewise.
(bitmap_gc_alloc_stat): Likewise.
* cfg.c (init_flow): Likewise.
(alloc_block): Likewise.
(unchecked_make_edge): Likewise.
* cfgloop.c (alloc_loop): Likewise.
(flow_loops_find): Likewise.
(rescan_loop_exit): Likewise.
* cfgrtl.c (init_rtl_bb_info): Likewise.
* cgraph.c (insert_new_cgraph_node_version): Likewise.
(cgraph_allocate_node): Likewise.
(cgraph_create_edge_1): Likewise.
(cgraph_allocate_init_indirect_info): Likewise.
* cgraphclones.c (cgraph_clone_edge): Likewise.
* cgraphunit.c (add_asm_node): Likewise.
(init_lowered_empty_function): Likewise.
* config/aarch64/aarch64.c (aarch64_init_machine_status):
Likewise.
* config/alpha/alpha.c (alpha_init_machine_status): Likewise.
(alpha_use_linkage): Likewise.
* config/arc/arc.c (arc_init_machine_status): Likewise.
* config/arm/arm.c (arm_init_machine_status): Likewise.
* config/avr/avr.c (avr_init_machine_status): Likewise.
* config/bfin/bfin.c (bfin_init_machine_status): Likewise.
* config/c6x/c6x.c (c6x_init_machine_status): Likewise.
* config/cris/cris.c (cris_init_machine_status): Likewise.
* config/darwin.c (machopic_indirection_name): Likewise.
(darwin_build_constant_cfstring): Likewise.
(darwin_enter_string_into_cfstring_table): Likewise.
* config/epiphany/epiphany.c (epiphany_init_machine_status):
* Likewise.
* config/frv/frv.c (frv_init_machine_status): Likewise.
* config/i386/i386.c (get_dllimport_decl): Likewise.
(ix86_init_machine_status): Likewise.
(assign_386_stack_local): Likewise.
* config/i386/winnt.c (i386_pe_record_external_function):
Likewise.
(i386_pe_maybe_record_exported_symbol): Likewise.
(i386_pe_record_stub): Likewise.
* config/ia64/ia64.c (ia64_init_machine_status): Likewise.
* config/iq2000/iq2000.c (iq2000_init_machine_status): Likewise.
* config/m32c/m32c.c (m32c_init_machine_status): Likewise.
(m32c_note_pragma_address): Likewise.
* config/mep/mep.c (mep_init_machine_status): Likewise.
(mep_note_pragma_flag): Likewise.
* config/mips/mips.c (mflip_mips16_use_mips16_p): Likewise.
(mips16_local_alias): Likewise.
(mips_init_machine_status): Likewise.
* config/mmix/mmix.c (mmix_init_machine_status): Likewise.
* config/moxie/moxie.c (moxie_init_machine_status): Likewise.
* config/msp430/msp430.c (msp430_init_machine_status): Likewise.
* config/nds32/nds32.c (nds32_init_machine_status): Likewise.
* config/nios2/nios2.c (nios2_init_machine_status): Likewise.
* config/pa/pa.c (pa_init_machine_status): Likewise.
(pa_get_deferred_plabel): Likewise.
* config/rl78/rl78.c (rl78_init_machine_status): Likewise.
* config/rs6000/rs6000.c (builtin_function_type): Likewise.
(rs6000_init_machine_status): Likewise.
(output_toc): Likewise.
* config/s390/s390.c (s390_init_machine_status): Likewise.
* config/score/score.c (score_output_external): Likewise.
* config/sparc/sparc.c (sparc_init_machine_status): Likewise.
* config/spu/spu.c (spu_init_machine_status): Likewise.
* config/tilegx/tilegx.c (tilegx_init_machine_status): Likewise.
* config/tilepro/tilepro.c (tilepro_init_machine_status):
* Likewise.
* config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
* coverage.c (coverage_end_function): Likewise.
* dbxout.c (dbxout_init): Likewise.
* doc/gty.texi: Don't mention variable_size attribute.
* dwarf2cfi.c (new_cfi): Adjust.
(new_cfi_row): Likewise.
(copy_cfi_row): Likewise.
(create_cie_data): Likewise.
* dwarf2out.c (dwarf2out_alloc_current_fde): Likewise.
(new_loc_descr): Likewise.
(find_AT_string_in_table): Likewise.
(add_addr_table_entry): Likewise.
(new_die): Likewise.
(add_var_loc_to_decl): Likewise.
(clone_die): Likewise.
(clone_as_declaration): Likewise.
(break_out_comdat_types): Likewise.
(new_loc_list): Likewise.
(add_loc_descr_to_each): Likewise.
(add_location_or_const_value_attribute): Likewise.
(add_linkage_name): Likewise.
(lookup_filename): Likewise.
(dwarf2out_var_location): Likewise.
(new_line_info_table): Likewise.
(dwarf2out_init): Likewise.
(mem_loc_descriptor): Likewise.
(loc_descriptor): Likewise.
(add_const_value_attribute): Likewise.
(tree_add_const_value_attribute): Likewise.
(comp_dir_string): Likewise.
(dwarf2out_vms_debug_main_pointer): Likewise.
(string_cst_pool_decl): Likewise.
* emit-rtl.c (set_mem_attrs): Likewise.
(get_reg_attrs): Likewise.
(start_sequence): Likewise.
(init_emit): Likewise.
(init_emit_regs): Likewise.
* except.c (init_eh_for_function): Likewise.
(gen_eh_region): Likewise.
(gen_eh_region_catch): Likewise.
(gen_eh_landing_pad): Likewise.
(add_call_site): Likewise.
* function.c (add_frame_space): Likewise.
(insert_temp_slot_address): Likewise.
(assign_stack_temp_for_type): Likewise.
(get_hard_reg_initial_val): Likewise.
(allocate_struct_function): Likewise.
(prepare_function_start): Likewise.
(types_used_by_var_decl_insert): Likewise.
* gengtype.c (variable_size_p): Remove function.
(enum alloc_quantity): Remove enum.
(write_typed_alloc_def): Remove function.
(write_typed_struct_alloc_def): Likewise.
(write_typed_typedef_alloc_def): Likewise.
(write_typed_alloc_defns): Likewise.
(main): Adjust.
* ggc-common.c (ggc_cleared_alloc_htab_ignore_args): Adjust.
(ggc_cleared_alloc_ptr_array_two_args): Likewise.
* ggc.h (ggc_alloc): new function.
(ggc_cleared_alloc): Likewise.
(ggc_vec_alloc): Template on type of vector element, and remove
element size argument.
(ggc_cleared_vec_alloc): Likewise.
* gimple.c (gimple_build_omp_for): Adjust.
(gimple_copy): Likewise.
* ipa-cp.c (get_replacement_map): Likewise.
(find_aggregate_values_for_callers_subset): Likewise.
(known_aggs_to_agg_replacement_list): Likewise.
* ipa-devirt.c (get_odr_type): Likewise.
* ipa-prop.c (ipa_node_duplication_hook): Likewise.
(read_agg_replacement_chain): Likewise.
* loop-iv.c (get_simple_loop_desc): Likewise.
* lto-cgraph.c (input_node_opt_summary): Likewise.
* lto-section-in.c (lto_new_in_decl_state): Likewise.
* lto-streamer-in.c (lto_input_eh_catch_list): Likewise.
(input_eh_region): Likewise.
(input_eh_lp): Likewise.
(input_cfg): Likewise.
* optabs.c (set_optab_libfunc): Likewise.
(init_tree_optimization_optabs): Likewise.
(set_conv_libfunc): Likewise.
* passes.c (do_per_function_toporder): Likewise.
* rtl.h: Don't use variable_size gty attribute.
* sese.c (if_region_set_false_region): Adjust.
* stringpool.c (gt_pch_save_stringpool): Likewise.
* target-globals.c (save_target_globals): Likewise.
* toplev.c (general_init): Likewise.
* trans-mem.c (record_tm_replacement): Likewise.
(split_bb_make_tm_edge): Likewise.
* tree-cfg.c (move_sese_region_to_fn): Likewise.
* tree-data-ref.h (lambda_vector_new): Likewise.
* tree-eh.c (add_stmt_to_eh_lp_fn): Likewise.
* tree-iterator.c (tsi_link_before): Likewise.
(tsi_link_after): Likewise.
* tree-scalar-evolution.c (new_scev_info_str): Likewise.
* tree-ssa-loop-niter.c (record_estimate): Likewise.
* tree-ssa-operands.c (ssa_operand_alloc): Likewise.
* tree-ssa-operands.h: Don't use variable_size gty attribute.
* tree-ssa.c (init_tree_ssa): Adjust.
* tree-ssanames.c (set_range_info): Likewise.
(get_ptr_info): Likewise.
(duplicate_ssa_name_ptr_info): Likewise.
(duplicate_ssa_name_range_info): Likewise.
* tree-streamer-in.c (unpack_ts_real_cst_value_fields): Likewise.
(unpack_ts_fixed_cst_value_fields): Likewise.
* tree.c (build_fixed): Likewise.
(build_real): Likewise.
(build_string): Likewise.
(decl_priority_info): Likewise.
(decl_debug_expr_insert): Likewise.
(decl_value_expr_insert): Likewise.
(decl_debug_args_insert): Likewise.
(type_hash_add): Likewise.
(build_omp_clause): Likewise.
* ubsan.c (decl_for_type_insert): Likewise.
* varasm.c (get_unnamed_section): Likewise.
(get_noswitch_section): Likewise.
(get_section): Likewise.
(get_block_for_section): Likewise.
(create_block_symbol): Likewise.
(build_constant_desc): Likewise.
(create_constant_pool): Likewise.
(force_const_mem): Likewise.
(record_tm_clone_pair): Likewise.
* varpool.c (varpool_create_empty_node): Likewise.
gcc/c/ChangeLog:
* c-decl.c (finish_struct): Adjust.
(finish_enum): Likewise.
(bind): Adjust.
(record_inline_static): Likewise.
(push_scope): Likewise.
(make_label): Likewise.
(lookup_label_for_goto): Likewise.
(finish_struct): Likewise.
(finish_enum): Likewise.
(store_parm_decls): Likewise.
(c_push_function_context): Likewise.
* c-lang.h: Remove usage of variable_size gty attribute.
* c-parser.c (c_parse_init): Adjust.
(c_parse_file): Likewise.
gcc/java/ChangeLog:
* class.c (add_method_1): Adjust.
(java_treetreehash_new): Likewise.
* constants.c (set_constant_entry): Likewise.
(cpool_for_class): Likewise.
* decl.c (make_binding_level): Likewise.
(java_dup_lang_specific_decl): Likewise.
* expr.c (add_type_assertion): Likewise.
* java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): Likewise.
(lang_decl): don't use variable_size gty attribute.
(MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Adjust.
(lang_type): Don't use variable_size gty attribute.
* jcf-parse.c (java_parse_file): Adjust.
(process_zip_dir): Likewise.
* jcf.h: Remove usage of variable_size gty attribute.
* jcf-reader.c (jcf_parse_constant_pool): Adjust.
(jcf_parse_bootstrap_methods): Likewise.
gcc/objc/ChangeLog:
* objc-act.c (objc_build_string_object): Adjust.
(continue_class): Likewise.
* objc-act.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Likewise.
* objc-map.c (objc_map_alloc_ggc): Likewise.
(objc_map_private_resize): Likewise.
* objc-next-runtime-abi-02.c (objc_next_runtime_abi_02_init):
Likewise.
(hash_name_enter): Likewise.
gcc/cp/ChangeLog:
* class.c (sorted_fields_type_new): Adjust.
* cp-cilkplus.c (cilk_install_body_with_frame_cleanup): Likewise.
* cp-objcp-common.c (decl_shadowed_for_var_insert): Likewise.
* cp-tree.h: Remove usage of variable_size gty attribute.
* decl.c (make_label_decl): Adjust.
(check_goto): Likewise.
(start_preparsed_function): Likewise.
(save_function_data): Likewise.
* lex.c (init_reswords): Likewise.
(retrofit_lang_decl): Likewise.
(cxx_dup_lang_specific_decl): Likewise.
(copy_lang_type): Likewise.
(cxx_make_type): Likewise.
* name-lookup.c (binding_entry_make): Likewise.
(binding_table_construct): Likewise.
(binding_table_new): Likewise.
(cxx_binding_make): Likewise.
(pushdecl_maybe_friend_1): Likewise.
(begin_scope): Likewise.
(push_to_top_level): Likewise.
* parser.c (cp_lexer_alloc): Likewise.
(cp_lexer_new_from_tokens): Likewise.
(cp_token_cache_new): Likewise.
(cp_parser_context_new): Likewise.
(cp_parser_new): Likewise.
(cp_parser_nested_name_specifier_opt): Likewise.
(cp_parser_template_id): Likewise.
* pt.c (maybe_process_partial_specialization): Likewise.
(register_specialization): Likewise.
(add_pending_template): Likewise.
(lookup_template_class_1): Likewise.
(push_tinst_level): Likewise.
* semantics.c (register_constexpr_fundef): Likewise.
(cxx_eval_call_expression): Likewise.
* typeck2.c (abstract_virtuals_error_sfinae): Likewise.
gcc/fortran/ChangeLog:
* f95-lang.c (pushlevel): Adjust.
* trans-decl.c (gfc_allocate_lang_decl): Adjust.
(gfc_find_module): Likewise.
* trans-types.c (gfc_get_nodesc_array_type): Likewise.
(gfc_get_array_type_bounds): Likewise.
(gfc_nonrestricted_type): Likewise.
* trans.h: Don't use variable_size gty attribute.
gcc/ada/ChangeLog:
* gcc-interface/ada-tree.h: Remove usage of variable_size gty
annotation.
* gcc-interface/decl.c (annotate_value): Adjust.
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
(push_range_check_info): Likewise.
(Loop_Statement_to_gnu): Likewise.
(Subprogram_Body_to_gnu): Likewise.
(Compilation_Unit_to_gnu): Likewise.
(start_stmt_group): Likewise.
* gcc-interface/utils.c (init_gnat_utils): Likewise.
(gnat_pushlevel): Likewise.
(maybe_pad_type): Likewise.
gcc/go/ChangeLog:
* go-lang.c (struct GTY): Don't use variable_size gty attribute.
gcc/c-family/ChangeLog:
* c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
* c-pragma.c (push_alignment): Adjust.
(handle_pragma_push_options): Likewise.
gcc/lto/ChangeLog:
* lto-tree.h: Don't use variable_size gty attribute.
* lto.c (lto_read_in_decl_state): Adjust.
(create_subid_section_table): Likewise.
(lto_flatten_files): Likewise.
(read_cgraph_and_symbols): Likewise.
gcc/objcp/ChangeLog:
* objcp-decl.h: Adjust.
From-SVN: r210566
Trevor Saunders [Sat, 17 May 2014 23:06:33 +0000 (23:06 +0000)]
rm a bunch of _stat allocation functions
Now that we can use c++ default arguments there's no reason to use
functions and wrapper macros.
gcc/ChangeLog:
* dwarf2out.c (tree_add_const_value_attribute): Call
ggc_internal_cleared_alloc instead of ggc_alloc_cleared_atomic.
* gengtype.c (write_typed_alloc_def): Call ggc_internal_<x>alloc
instead of ggc_internal_<x>alloc_stat.
* ggc-common.c (ggc_internal_cleared_alloc): Drop _stat suffix.
(ggc_realloc): Likewise.
* ggc-none.c (ggc_internal_alloc): Likewise.
(ggc_internal_cleared_alloc): Likewise.
* ggc-page.c: Likewise.
* ggc.h (ggc_internal_alloc_stat): Likewise.
(ggc_internal_alloc): Remove macro.
(ggc_internal_cleared_alloc_stat): Drop _stat suffix.
(ggc_internal_cleared_alloc): Remove macro.
(GGC_RESIZEVEC): Adjust.
(ggc_resizevar): Remove macro.
(ggc_internal_vec_alloc_stat): Drop _stat suffix.
(ggc_internal_cleared_vec_alloc_stat): Likewise.
(ggc_internal_vec_cleared_alloc): Remove macro.
(ggc_alloc_atomic_stat): Drop _stat suffix.
(ggc_alloc_atomic): Remove macro.
(ggc_alloc_cleared_atomic): Remove macro.
(ggc_alloc_string_stat): Drop _stat suffix.
(ggc_alloc_string): Remove macro.
(ggc_alloc_rtx_def_stat): Adjust.
(ggc_alloc_tree_node_stat): Likewise.
(ggc_alloc_cleared_tree_node_stat): Likewise.
(ggc_alloc_cleared_gimple_statement_stat): Likewise.
(ggc_alloc_cleared_simd_clone_stat): Likewise.
* gimple.c (gimple_build_omp_for): Likewise.
(gimple_copy): Likewise.
* stringpool.c (ggc_alloc_string_stat): Drop _stat suffix.
* toplev.c (realloc_for_line_map): Adjust.
* tree-data-ref.h (lambda_vector_new): Likewise.
* tree-phinodes.c (allocate_phi_node): Likewise.
* tree.c (grow_tree_vec_stat): Likewise.
* vec.h (va_gc::reserve): Adjust.
gcc/java/ChangeLog:
* constants.c (set_constant_entry): Adjust.
From-SVN: r210565
Paolo Carlini [Sat, 17 May 2014 20:22:30 +0000 (20:22 +0000)]
re PR c++/52875 (ADL failure + ICE in decltype)
2014-05-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52875
* g++.dg/cpp0x/decltype58.C: New.
From-SVN: r210562
Dominique d'Humieres [Sat, 17 May 2014 17:54:50 +0000 (19:54 +0200)]
check.c (gfc_check_fn_rc2008): move "argument" to the right place.
2014-05-17 Dominique d'Humieres <dominiq@lps.ens.fr>
* check.c (gfc_check_fn_rc2008): move "argument" to the right
place.
From-SVN: r210561
Marc Glisse [Sat, 17 May 2014 17:47:36 +0000 (19:47 +0200)]
new_op.cc: Factor the calls to malloc, use __builtin_expect.
2014-05-17 Marc Glisse <marc.glisse@inria.fr>
* libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
* libsupc++/new_opnt.cc: Likewise.
From-SVN: r210560
Ajit Agarwal [Sat, 17 May 2014 15:12:38 +0000 (15:12 +0000)]
ChangeLog:
2014-05-17 Ajit Agarwal <ajitkum@xilinx.com>
* config/microblaze/microblaze.c
(break_handler): New Declaration.
(microblaze_break_function_p,microblaze_is_break_handler) : New functions.
(compute_frame_size): use of microblaze_break_function_p. Add the test of break_handler.
(microblaze_function_prologue) : Add the test of variable
break_handler. Check the fnname by BREAK_HANDLER_NAME.
(microblaze_function_epilogue) : Add the test of break_handler.
(microblaze_globalize_label) : Add the test of break_handler. Check the
name by BREAK_HANDLER_NAME.
* config/microblaze/microblaze.h (BREAK_HANDLER_NAME) : New macro
* config/microblaze/microblaze.md :
(*<optab>,<optab>_internal): Add microblaze_is_break_handler () test.
(call_internal1,call_value_intern) : Use of microblaze_break_function_p.
Use of SYMBOL_REF_DECL.
* config/microblaze/microblaze-protos.h
(microblaze_break_function_p,microblaze_is_break_handler) : New Declaration.
* testsuite/gcc.target/microblaze/others/break_handler.c : New.
* doc/extend.texi( MicroBlaze break_handler Functions): Document new
MicroBlaze break_handler functions.
From-SVN: r210559
Jonathan Wakely [Sat, 17 May 2014 12:58:46 +0000 (13:58 +0100)]
re PR libstdc++/60966 (std::call_once sometime hangs)
PR libstdc++/60966
* include/std/future (__future_base::_State_baseV2::_M_set_result):
Pass lock into _M_do_set and hold it until the function returns.
Signal condition variable after call_once completes.
(__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
signal here.
* testsuite/30_threads/promise/60966.cc: New.
From-SVN: r210556
Uros Bizjak [Sat, 17 May 2014 12:58:34 +0000 (14:58 +0200)]
extend.texi (Size of an asm): Move node text according to its @menu entry position.
* doc/extend.texi (Size of an asm): Move node text according
to its @menu entry position.
From-SVN: r210555
Marc Glisse [Sat, 17 May 2014 12:37:58 +0000 (14:37 +0200)]
re PR tree-optimization/61140 (wrong code at -O1 and above on x86_64-linux-gnu)
2014-05-17 Marc Glisse <marc.glisse@inria.fr>
PR tree-optimization/61140
PR tree-optimization/61150
PR tree-optimization/61197
gcc/
* tree-ssa-phiopt.c (value_replacement): Punt on multiple phis.
gcc/testsuite/
* gcc.dg/tree-ssa/pr61140.c: New file.
* gcc.dg/tree-ssa/pr61150.c: New file.
* gcc.dg/tree-ssa/pr61197.c: New file.
From-SVN: r210554
Uros Bizjak [Sat, 17 May 2014 11:28:39 +0000 (13:28 +0200)]
invoke.texi (free): Mention Alpha.
* doc/invoke.texi (free): Mention Alpha. Also enabled at -Os.
From-SVN: r210552
Uros Bizjak [Sat, 17 May 2014 11:03:31 +0000 (13:03 +0200)]
pr60969.C: Compile for all ilp32 x86 targets.
* g++.dg/pr60969.C: Compile for all ilp32 x86 targets.
(dg-options): Add -mfpmath=387.
(dg-final): Check that no MMX registers are used.
From-SVN: r210550
Uros Bizjak [Sat, 17 May 2014 10:33:43 +0000 (12:33 +0200)]
ChangeLog: Fix.
* ChangeLog: Fix.
* testsuite/ChangeLog: Ditto.
From-SVN: r210548
Richard Sandiford [Sat, 17 May 2014 08:30:14 +0000 (08:30 +0000)]
wide-int.cc: Only include longlong.h if W_TYPE_SIZE==32 or __SIZEOF_INT128__ is defined.
gcc/
* wide-int.cc: Only include longlong.h if W_TYPE_SIZE==32 or
__SIZEOF_INT128__ is defined.
From-SVN: r210546
Andreas Schwab [Sat, 17 May 2014 07:48:07 +0000 (07:48 +0000)]
* gcc.target/ia64/visibility-1.c (variable_i): Add used attribute.
From-SVN: r210545
Richard Sandiford [Sat, 17 May 2014 07:34:57 +0000 (07:34 +0000)]
rs6000.c (rs6000_real_tls_symbol_ref_p): New function.
gcc/
* config/rs6000/rs6000.c (rs6000_real_tls_symbol_ref_p): New function.
(rs6000_delegitimize_address): Use it.
From-SVN: r210544
Richard Sandiford [Sat, 17 May 2014 07:00:02 +0000 (07:00 +0000)]
emit-rtl.h (replace_equiv_address, [...]): Add an inplace argument.
gcc/
* emit-rtl.h (replace_equiv_address, replace_equiv_address_nv): Add an
inplace argument. Store the new address in the original MEM when true.
* emit-rtl.c (change_address_1): Likewise.
(adjust_address_1, adjust_automodify_address_1, offset_address):
Update accordingly.
* rtl.h (plus_constant): Add an inplace argument.
* explow.c (plus_constant): Likewise. Try to reuse the original PLUS
when true. Avoid generating (plus X (const_int 0)).
* function.c (instantiate_virtual_regs_in_rtx): Adjust the PLUS
in-place. Pass true to plus_constant.
(instantiate_virtual_regs_in_insn): Pass true to replace_equiv_address.
From-SVN: r210543
GCC Administrator [Sat, 17 May 2014 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210542
Dehao Chen [Fri, 16 May 2014 23:16:13 +0000 (23:16 +0000)]
tree-cfg.c (gimple_merge_blocks): Updates bb count with max count.
2014-05-16 Dehao Chen <dehao@google.com>
* tree-cfg.c (gimple_merge_blocks): Updates bb count with max count.
From-SVN: r210538
Oleg Endo [Fri, 16 May 2014 23:12:19 +0000 (23:12 +0000)]
re PR target/54089 ([SH] Refactor shift patterns)
gcc/
PR target/54089
* config/sh/predicates.md (negt_reg_shl31_operand): Match additional
patterns.
* config/sh/sh.md (*negt_msb): Merge SH2A and non-SH2A variants.
From-SVN: r210537
Dehao Chen [Fri, 16 May 2014 23:01:26 +0000 (23:01 +0000)]
ira-int.h (REG_FREQ_FROM_EDGE_FREQ): Use optimize_function_for_size_p.
2014-05-16 Dehao Chen <dehao@google.com>
* ira-int.h (REG_FREQ_FROM_EDGE_FREQ): Use optimize_function_for_size_p.
* regs.h (REG_FREQ_FROM_BB): Likewise.
From-SVN: r210536
Oleg Endo [Fri, 16 May 2014 22:54:32 +0000 (22:54 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
gcc/
PR target/51244
* config/sh/sh.c (sh_eval_treg_value): Handle t_reg_operand and
negt_reg_operand cases.
* config/sh/sh.md (*cset_zero): Likewise by using cbranch_treg_value
predicate.
* config/sh/predicates.md (cbranch_treg_value): Simplify.
From-SVN: r210535
Oleg Endo [Fri, 16 May 2014 22:21:52 +0000 (22:21 +0000)]
sh.c (sh_option_override): Set branch cost to 2 for all target variants.
gcc/
* config/sh/sh.c (sh_option_override): Set branch cost to 2 for all
target variants.
From-SVN: r210534
David Malcolm [Fri, 16 May 2014 21:39:22 +0000 (21:39 +0000)]
Revert r209902 "Dump the return type of functions in gimple dumps"
This commit reverts r209902 aka
1f09cb43ee8e199dca339233fb1b92b7ffdbc660
due to issues described in
https://gcc.gnu.org/ml/gcc-patches/2014-05/msg01271.html
gcc/
2014-05-16 David Malcolm <dmalcolm@redhat.com>
Revert:
2014-04-29 David Malcolm <dmalcolm@redhat.com>
* tree-cfg.c (dump_function_to_file): Dump the return type of
functions, in a line to itself before the function body, mimicking
the layout of a C function.
gcc/testsuite
2014-05-16 David Malcolm <dmalcolm@redhat.com>
Revert:
2014-04-29 David Malcolm <dmalcolm@redhat.com>
* gcc.dg/tree-ssa/pr23401.c: Update the expected number of
occurrences of "int" in the gimple dump to reflect that the return
types of functions now show up in such dumps.
* gcc.dg/tree-ssa/pr27810.c: Likewise.
From-SVN: r210533
Iain Sandoe [Fri, 16 May 2014 20:56:03 +0000 (20:56 +0000)]
abi.exp: Defer setting of baseline_subdir until after checking that the test is eligible...
2014-05-16 Iain Sandoe <iain@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
libstdc++-v3/
* testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
until after checking that the test is eligible to be run.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210531
Dehao Chen [Fri, 16 May 2014 20:40:29 +0000 (20:40 +0000)]
cfghooks.c (make_forwarder_block): Use direct computation to get fall-through edge's count and frequency.
2014-05-16 Dehao Chen <dehao@google.com>
* cfghooks.c (make_forwarder_block): Use direct computation to
get fall-through edge's count and frequency.
From-SVN: r210528
Janne Blomqvist [Fri, 16 May 2014 20:37:13 +0000 (23:37 +0300)]
PR 61187 Fix use of uninitialized memory.
2014-05-16 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/61187
* io/unix.c (raw_close): Check if s->fd is -1.
(fd_to_stream): Check return value of fstat(), handle error.
From-SVN: r210527
Benno Schulenberg [Fri, 16 May 2014 19:52:17 +0000 (19:52 +0000)]
arc.c (arc_init): Fix typo in error message.
2014-02-07 Benno Schulenberg <bensberg@justemail.net>
* config/arc/arc.c (arc_init): Fix typo in error message.
* config/i386/i386.c (ix86_expand_builtin): Likewise.
(split_stack_prologue_scratch_regno): Likewise.
* fortran/check.c (gfc_check_fn_rc2008): Remove duplicate
word from error message.
From-SVN: r210526
Zhouyi Zhou [Fri, 16 May 2014 18:22:44 +0000 (18:22 +0000)]
ira-costs.c: Fix typo in comment.
2014-05-16 Zhouyi Zhou <yizhouzhou@ict.ac.cn>
* ira-costs.c: Fix typo in comment.
From-SVN: r210525
David Wohlferd [Fri, 16 May 2014 18:20:38 +0000 (18:20 +0000)]
extend.texi: (Visibility Pragmas) Fix misplaced @xref
2014-05-14 David Wohlferd <dw@LimeGreenSocks.com>
* doc/extend.texi: (Visibility Pragmas) Fix misplaced @xref
From-SVN: r210524
Jan Hubicka [Fri, 16 May 2014 17:49:06 +0000 (19:49 +0200)]
varpool.c (dump_varpool_node): Dump write-only flag.
* varpool.c (dump_varpool_node): Dump write-only flag.
* lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Stream
write-only flag.
* tree-cfg.c (execute_fixup_cfg): Remove statements setting write-only variables.
* gcc.c-torture/execute/
20101011-1.c: Update testcase.
* gcc.dg/ira-shrinkwrap-prep-1.c: Update testcase.
* gcc.dg/tree-ssa/writeonly.c: New testcase.
* gcc.dg/tree-ssa/ssa-dse-6.c: Update testcase.
* gcc.dg/tree-ssa/pr21559.c: Update testcase.
* gcc.dg/debug/pr35154.c: Update testcase.
* gcc.target/i386/vectorize1.c: Update testcase.
* ipa.c (process_references): New function.
(set_readonly_bit): New function.
(set_writeonly_bit): New function.
(clear_addressable_bit): New function.
(ipa_discover_readonly_nonaddressable_var): Mark write only variables; fix
handling of aliases.
* cgraph.h (struct varpool_node): Add writeonly flag.
From-SVN: r210522
Paolo Carlini [Fri, 16 May 2014 17:42:23 +0000 (17:42 +0000)]
re PR c++/51640 (Misleading error if the type in the catch() is ambiguous)
/cp
2014-05-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51640
* parser.c (cp_parser_diagnose_invalid_type_name): Early return
when cp_parser_lookup_name sets ambiguous_decls.
/testsuite
2014-05-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51640
* g++.dg/parse/error54.C: New.
From-SVN: r210521
Vladimir Makarov [Fri, 16 May 2014 17:37:17 +0000 (17:37 +0000)]
re PR rtl-optimization/60969 (ICE in output_129 in MMXMOV of mode MODE_SF for march=pentium4)
2014-05-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60969
* ira-costs.c (record_reg_classes): Allow only memory for pseudo.
Calculate costs for this case.
2014-05-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60969
* g++.dg/pr60969.C: New.
From-SVN: r210520
Eric Botcazou [Fri, 16 May 2014 16:59:38 +0000 (16:59 +0000)]
fold-const (fold_unary_loc): New case.
* fold-const (fold_unary_loc) <NON_LVALUE_EXPR>: New case.
<CASE_CONVERT>: Pass arg0 instead of op0 to fold_convert_const.
From-SVN: r210518
Jonathan Wakely [Fri, 16 May 2014 14:55:45 +0000 (15:55 +0100)]
typedefs-1.cc: Fix test for 32-bit target.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
test for 32-bit target.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
Fix test.
From-SVN: r210517
Alexey Merzlyakov [Fri, 16 May 2014 13:16:33 +0000 (13:16 +0000)]
re PR libstdc++/60758 (Infinite backtrace in __cxa_end_cleanup)
2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
PR libstdc++/60758
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
and add unwind directives.
From-SVN: r210515
Richard Biener [Fri, 16 May 2014 11:21:11 +0000 (11:21 +0000)]
re PR tree-optimization/61194 (vectorization failed with "bit-precision arithmetic not supported" even if conversion to int is requested)
2014-05-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/61194
* tree-vect-patterns.c (adjust_bool_pattern): Also handle
bool patterns ending in a COND_EXPR.
* gcc.dg/vect/pr61194.c: New testcase.
From-SVN: r210514
Jonathan Wakely [Fri, 16 May 2014 11:08:49 +0000 (12:08 +0100)]
parse_numbers.h (__parse_int::_Number_help): Check for overflow.
* include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
overflow.
* include/std/chrono (chrono_literals::__select_type::_Select_type):
Remove.
(chrono_literals::_Checked_integral_constant): Define.
Simplify UDL operator templates and check for overflow.
* testsuite/20_util/duration/literals/range.cc: New.
From-SVN: r210513
James Greenhalgh [Fri, 16 May 2014 10:15:54 +0000 (10:15 +0000)]
[AArch64 costs] Fixup to costing of FNMUL
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Fix FNMUL case.
From-SVN: r210512
Ed Smith-Rowland [Fri, 16 May 2014 09:30:57 +0000 (09:30 +0000)]
re PR libstdc++/61166 (overflow when parse number in std::duration operator"")
2014-05-15 Ed Smith-Rowland <3dw4rd@verizon.net>
Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/61166
* include/bits/parse_numbers.h: Use integral_constant to remove
duplication and simplify.
* testsuite/20_util/duration/literals/61166.cc: New.
Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r210511
James Greenhalgh [Fri, 16 May 2014 09:27:55 +0000 (09:27 +0000)]
[AArch64 costs 18/18] Dump a message if we are unable to cost an insn.
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle the case
where we were unable to cost an RTX.
From-SVN: r210510
James Greenhalgh [Fri, 16 May 2014 09:25:48 +0000 (09:25 +0000)]
[AArch64 costs 17/18] Cost for SYMBOL_REF, HIGH and LO_SUM
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost SYMBOL_REF,
HIGH, LO_SUM.
From-SVN: r210509