Age | Commit message (Collapse) | Author | Files | Lines |
|
Using []* fails with the awk that is part of busybox:
https://groups.google.com/d/msg/gofrontend-dev/NbQsG_AMDpY/sXCc03kkwn4J
From-SVN: r201455
|
|
generated reload insns per insn is achieved (90))
2013-08-02 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/58048
* lra-constraints.c (process_alt_operands): Don't check asm
operand on register.
2013-08-02 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/58048
* gcc.target/i386/pr58048.c: New.
From-SVN: r201454
|
|
atomic operations if before.
* config/sparc/sparc.c (sparc_emit_membar_for_model) <SMM_TSO>: Add
the implied StoreLoad barrier for atomic operations if before.
From-SVN: r201450
|
|
* go-gcc.cc (immutable_struct_set_init): Always call
resolve_unique_section.
From-SVN: r201446
|
|
This lets the linker GC them.
From-SVN: r201442
|
|
2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* configure.tgt: Add -msoft-float to XCFLAGS.
From-SVN: r201441
|
|
* cgraph.c (cgraph_function_body_availability): Do not check cgrpah flags.
* cgraph.h (symtab_for_node_and_aliases, symtab_nonoverwritable_alias,
symtab_node_availability): Declare.
* ipa.c (can_replace_by_local_alias): New.
(function_and_variable_visibility): Use it.
* symtab.c (symtab_for_node_and_aliases, symtab_nonoverwritable_alias_1,
symtab_nonoverwritable_alias): New.
Co-Authored-By: Martin Liska <marxin.liska@gmail.com>
From-SVN: r201439
|
|
2013-08-02 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/57963
* lra-constraints.c (reverse_equiv_p, contains_reloaded_insn_p):
New.
(lra_constraints): Use them.
From-SVN: r201438
|
|
* config/arm/types.md (define_attr "type"): Add "load_acq" and "store_rel".
* config/arm/cortex-a53.md (cortex_a53_load1): Update for attribute
changes.
(cortex_a53_store1): Likewise.
From-SVN: r201436
|
|
2013-08-02 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/neon-for-64bits-2.c: Delete.
From-SVN: r201435
|
|
needed.
* ipa.c (symtab_remove_unreachable_nodes): Nodes in other partitions are
not needed.
From-SVN: r201431
|
|
2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/functions.h (__foreign_iterator_aux4):
Initialize __l and __ge.
From-SVN: r201428
|
|
2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.h (finish_stmt): Do not declare.
* decl.c (finish_stmt): Do not define.
* parser.c (cp_parser_expression_statement,
cp_parser_declaration_statement,
cp_parser_transaction_cancel): Don't call finish_stmt.
* semantics.c (finish_expr_stmt, finish_if_stmt,
finish_while_stmt, finish_do_stmt, finish_return_stmt,
finish_for_stmt, finish_switch_stmt, finish_compound_stmt,
finish_transaction_stmt): Likewise.
From-SVN: r201427
|
|
2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/functions.h (__foreign_iterator_aux4):
Initialize __l and __ge.
From-SVN: r201426
|
|
libstdc++/57779)
2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/58049
* include/debug/functions.h: Include <bits/move.h>; minor formatting
changes.
(__foreign_iterator_aux4): Declare __l and __ge constexpr.
* include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
Use __addressof.
* include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
operator->): Likewise.
From-SVN: r201424
|
|
From-SVN: r201423
|
|
* config/aarch64/sfp-machine.h, config/aarch64/sync-cache.c,
* config/i386/cpuinfo.c, config/ia64/unwind-ia64.h,
* config/mips/vr4120-div.S: Fix license from GPL-3.0+ to
GPL-3.0-with-GCC-exception.
From-SVN: r201417
|
|
into *this in debug mode)
2013-08-01 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/57779
* include/debug/formatter.h (_Debug_msg_id): Add
__msg_insert_itself_range entry.
* include/debug/functions.h (_Insert_range_from_self_is_safe<>):
New, indicate container types supporting self range insertion in
GNU implementation.
(__foreign_iterator): New, check if an iterator points to a given
sequence.
* include/debug/macros.h (__glibcxx_check_insert_range): Add check
using __foreign_iterator.
(__gibcxx_check_insert_range_after): Likewise.
* include/debug/string (_Insert_range_from_self_is_safe<>):
Partially specialized to mark __gnu_debug::basic_string<> as
supporting self range insert.
* include/debug/list (_Insert_range_from_self_is_safe<>):
Partially specialized to mark std::list as supporting self range
insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
* include/debug/forward_list (_Insert_range_from_self_is_safe<>):
Likewise.
* src/c++11/debug.cc (_S_debug_messages): Add
__msg_insert_itself_range_entry message.
(_Error_formatter::_Parameter::_M_print_description): Display
iterator sequence address rather than sequence address when the
parameter type is an iterator.
(_Error_formatter::_M_print_word): Enhance behavior when
displaying a word with an appended '\n'.
* testsuite/util/debug/checks.h (check_insert4<>): New.
* testsuite/23_containers/deque/debug/insert5_neg.cc: New.
* testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
* testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
* testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
* testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
* testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
Likewise.
From-SVN: r201416
|
|
* config/i386/i386.h (MAYBE_NON_Q_CLASS_P): New.
* config/i386/i386.c (ix86_secondary_reload): Use INTEGER_CLASS_P and
MAYBE_NON_Q_CLASS_P where appropriate.
From-SVN: r201415
|
|
gcc/cp/
PR c++/54537
* cp-tree.h: Check OVL_USED with OVERLOAD_CHECK.
* name-lookup.c (do_nonmember_using_decl): Make sure we have an
OVERLOAD before calling OVL_USED. Call diagnose_name_conflict
instead of issuing an error without mentioning the conflicting
declaration.
libstdc++-v3/
PR c++/54537
* include/tr1/cmath: Remove pow(double,double) overload, remove a
duplicated comment about DR 550. Add a comment to explain the
issue.
* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.
gcc/testsuite/
PR c++/54537
* g++.dg/overload/using3.C: New.
* g++.dg/overload/using2.C: Adjust.
* g++.dg/lookup/using9.C: Likewise.
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r201414
|
|
* cgraph.h (release_function_body): Declare.
* tree.c (free_lang_data_in_decl): Free, parameters and return values
of unused delcarations.
From-SVN: r201413
|
|
a constant.
2013-08-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (minmax_arithsi_non_canon): Emit canonical RTL form
when subtracting a constant.
From-SVN: r201412
|
|
with negated immediate instead of minus where...
[gcc]
2013-08-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (peepholes for eq (reg1) (reg2/imm)):
Generate canonical plus rtx with negated immediate instead of minus
where appropriate.
* config/arm/arm.c (thumb2_reorg): Handle ADCS <Rd>, <Rn> case.
[gcc/testsuite]
* gcc.target/arm/pr46972-2.c: New test.
From-SVN: r201411
|
|
* cgraph.c (cgraph_release_function_body): Use used_as_abstract_origin.
(cgraph_release_function_body): Likewise.
(cgraph_can_remove_if_no_direct_calls_p): Likewise.
* cgraph.h (cgrpah_node): Rename abstract_and_needed
to used_as_abstract_origin.
* tree-inline-transfrom.c (can_remove_node_now_p_1): Do not remove
symbols used as abstract origins.
* cgraphunit.c (analyze_functions): Update.
* ipa.c (symtab_remove_unreachable_nodes): Recompute used_as_abstract_origin.
* tree-inline.c (tree_function_versioning): Update
used_as_abstract_origin; be ready for DECL_RESULT and DECL_ARGUMENTS to be
NULL.
* lto-symtab.c (lto_symtab_merge_symbols): Merge duplicated nodes for abstract functions.
* cgraph.h (symtab_real_symbol_p): Abstract declarations are not real symbols.
From-SVN: r201408
|
|
* gcc.dg/vect/vect-iv-5.c: Make xfail conditional with !arm_neon_ok.
From-SVN: r201406
|
|
From-SVN: r201401
|
|
* config.gcc (aarch64*-*-*): Add aarch-common.o to extra_objs. Add
aarch-common-protos.h to extra_headers.
(aarch64*-*-*): Add arm/aarch-common-protos.h to tm_p_file.
* config/aarch64/aarch64.md: Include "../arm/cortex-a53.md"
* config/aarch64/t-aarch64 (aarch-common.o): Define.
From-SVN: r201400
|
|
* config/aarch64/aarch64.md (define_attr "type"): Delete.
Include "../arm/types.md". Define "type" attribute for all patterns.
* config/aarch64/aarch64-simd.md (move_lo_quad_<mode>): Update for
attribute changes.
From-SVN: r201399
|
|
From-SVN: r201397
|
|
2013-07-31 Tim Shen <timshen91@gmail.com>
Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: New.
From-SVN: r201391
|
|
[gcc]
2013-07-31 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/predicates.md (fusion_gpr_addis): New predicates
to support power8 load fusion.
(fusion_gpr_mem_load): Likewise.
* config/rs6000/rs6000-modes.def (PTImode): Update a comment.
* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): New
declarations for power8 load fusion.
(emit_fusion_gpr_load): Likewise.
* config/rs6000/rs6000.c (rs6000_option_override_internal): If
tuning for power8, turn on fusion mode by default. Turn on sign
extending fusion mode if normal fusion mode is on, and we are at
-O2 or -O3.
(fusion_gpr_load_p): New function, return true if we can fuse an
addis instruction with a dependent load to a GPR.
(emit_fusion_gpr_load): Emit the instructions for power8 load
fusion to GPRs.
* config/rs6000/vsx.md (VSX_M2): New iterator for fusion
peepholes.
(VSX load fusion peepholes): New peepholes to fuse together an
addi instruction with a VSX load instruction.
* config/rs6000/rs6000.md (GPR load fusion peepholes): New
peepholes to fuse an addis instruction with a load to a GPR base
register. If we are supporting sign extending fusions, convert
sign extending loads to zero extending loads and add an explicit
sign extension.
[gcc/testsuite]
2013-07-31 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/fusion.c: New file, test power8 fusion
support.
From-SVN: r201385
|
|
addressing!=absolute when...
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Test for mabicalls
rather than addressing!=absolute when deciding how to handle MIPS16
when the test forces an ABI.
From-SVN: r201380
|
|
for error_mark_node.
2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
* parser.c (cp_parser_sizeof_pack): Check cp_parser_identifier
return value for error_mark_node.
From-SVN: r201379
|
|
2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/56627
* include/bits/stl_bvector.h: Use friend struct hash intead of
friend class hash to work around useless warnings produced by
some compilers.
* include/std/bitset: Likewise.
From-SVN: r201377
|
|
* config.gcc (arm*-*-*): Add aarch-common.o to extra_objs. Add
aarch-common-protos.h to extra_headers.
(arm*-*-*): Add arm/aarch-common-protos.h to tm_p_file.
* config/arm/arm.c (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common.c: ... here. New file.
* config/arm/arm-protos.h (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common-protos.h: ... here. New file.
* config/arm/t-arm (aarch-common.o): Define.
From-SVN: r201376
|
|
* config/arm/arm.md: Include new file "types.md".
(define_attr "type"): Move from here to ...
(define_attr "mul32"): Likewise.
(define_attr "mul64"): Likewise.
* config/arm/types.md: ... here. New file.
From-SVN: r201375
|
|
2013-07-31 Sebastian Huber <sebastian.huber@embedded-brains.de>
* config.gcc (*-*-rtems*): Use __cxa_atexit by default.
* config/rs6000/rtems.h (TARGET_LIBGCC_SDATA_SECTION): Define.
From-SVN: r201370
|
|
2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
* src/c++11/functexcept.cc: Do not include the whole <regex>.
* src/c++11/regex.cc: Likewise.
From-SVN: r201369
|
|
From-SVN: r201365
|
|
2013-07-31 Jan-Benedict Glaw <jbglaw@owl.de>
* gen-pass-instances.awk: Fix offset of substr().
From-SVN: r201364
|
|
From-SVN: r201360
|
|
Introduce a new gen-pass-instances.awk script, and use it at build time
to make a pass-instances.def from passes.def.
gcc/
* Makefile.in (pass-instances.def): New.
(passes.o): Replace dependency on passes.def with one on
pass-instances.def
* gen-pass-instances.awk: New.
* passes.c (pass_manager::pass_manager): Use pass-instances.def
rather than passes.def, updating local definition of NEXT_PASS
macro to add an extra NUM parameter (currently unused).
From-SVN: r201359
|
|
2013-07-31 Tim Shen <timshen91@gmail.com>
Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: New.
From-SVN: r201358
|
|
From-SVN: r201357
|
|
/cp
2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57673
* parser.c (cp_parser_cache_defarg): In an NSDMI don't stop when
token->type == CPP_ELLIPSIS.
/testsuite
2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57673
* g++.dg/cpp0x/nsdmi-sizeof.C: New.
From-SVN: r201354
|
|
2013-07-30 Steve Ellcey <sellcey@mips.com>
* gcc.target/mips/code-readable-1.c: Increase switch size.
* gcc.target/mips/code-readable-2.c: Ditto.
* gcc.target/mips/code-readable-3.c: Ditto.
* gcc.target/mips/code-readable-4.c: Ditto.
From-SVN: r201353
|
|
This patch introduces a gcc::pass_manager class and moves various non-GTY
globals relating to pass management into it. The gcc::context gains its
first field: a pointer to the gcc::pass_manager instance.
gcc/
* Makefile.in (PASS_MANAGER_H): New.
(lto-cgraph.o): Depend on CONTEXT_H and PASS_MANAGER_H.
(passes.o): Likewise.
(statistics.o): Likewise.
(cgraphunit.o): Likewise.
(context.o): Depend on PASS_MANAGER_H.
* pass_manager.h: New.
* cgraphunit.c (cgraph_add_new_function): Update for moves
of globals to fields of pass_manager.
(analyze_function): Likewise.
(expand_function): Likewise.
(ipa_passes): Likewise.
(compile): Likewise.
* context.c (context::context): New.
* context.h (context::context): New.
(context::get_passes): New.
(context::passes_): New.
* lto-cgraph.c (input_node): Update for moves of globals to
fields of pass_manager.
* passes.c (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_late_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(set_pass_for_id): Convert to...
(pass_manager::set_pass_for_id): ...method.
(get_pass_for_id): Convert to...
(pass_manager::get_pass_for_id): ...method.
(register_one_dump_file): Move body of implementation into...
(pass_manager::register_one_dump_file): ...here.
(register_dump_files_1): Convert to...
(pass_manager::register_dump_files_1): ...method.
(register_dump_files): Convert to...
(pass_manager::register_dump_files): ...method.
(create_pass_tab): Update for moves of globals to fields of
pass_manager.
(dump_passes): Move body of implementation into...
(pass_manager::dump_passes): ...here.
(register_pass): Move body of implementation into...
(pass_manager::register_pass): ...here.
(init_optimization_passes): Convert into...
(pass_manager::pass_manager): ...constructor for new
pass_manager class, and initialize the pass_lists array.
(check_profile_consistency): Update for moves of globals to
fields of pass_manager.
(dump_profile_report): Move body of implementation into...
(pass_manager::dump_profile_report): ...here.
(ipa_write_summaries_1): Update for moves of pass lists from
being globals to fields of pass_manager.
(ipa_write_optimization_summaries): Likewise.
(ipa_read_summaries): Likewise.
(ipa_read_optimization_summaries): Likewise.
(execute_all_ipa_stmt_fixups): Likewise.
* statistics.c (statistics_fini): Update for moves of globals to
fields of pass_manager.
* toplev.c (general_init): Replace call to
init_optimization_passes with construction of the pass_manager
instance.
* tree-pass.h (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(all_late_ipa_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(get_pass_for_id): Remove.
gcc/lto/
* Make-lang.in (lto/lto.o:): Depend on CONTEXT_H and
PASS_MANAGER_H.
* lto.c (do_whole_program_analysis): Update for move of
all_regular_ipa_passes from a global to a field of class
pass_manager.
From-SVN: r201351
|
|
* config/mips/mips16.S (DELAYf): Alias to DELAYt for the MIPS IV
ISA and up.
From-SVN: r201350
|
|
Revert last commit.
From-SVN: r201349
|
|
Revert last commit.
From-SVN: r201348
|