Jason Merrill
1a9de5b6b5
PR c++/80767 - unnecessary instantiation of generic lambda
...
* call.c (convert_like_real): Call build_user_type_conversion_1 if
cand is null.
(add_conv_candidate): Build a ck_user conversion with no candidate.
From-SVN: r251427
2017-08-29 15:40:55 -04:00
Jason Merrill
b3eae0dd17
Fix lambdas in template default argument of inherited ctor.
...
* method.c (synthesized_method_base_walk): Replace an inherited
template with its specialization.
(synthesized_method_walk): Make inheriting_ctor a pointer.
(maybe_explain_implicit_delete, explain_implicit_non_constexpr)
(deduce_inheriting_ctor, implicitly_declare_fn): Adjust.
From-SVN: r251426
2017-08-29 15:40:41 -04:00
Jason Merrill
4cc20315a7
Adjust C++17 class deduction use of DECL_ABSTRACT_ORIGIN.
...
* pt.c (build_deduction_guide): Set DECL_ABSTRACT_ORIGIN on the
template, not the function.
(template_guide_p): Adjust.
From-SVN: r251425
2017-08-29 15:40:32 -04:00
Jason Merrill
82b0ce2eb3
Support copying local_specializations.
...
* cp-tree.h (enum lss_policy): New.
(local_specialization_stack): Add policy parameter to default ctor.
* pt.c (local_specialization_stack): Copy local_specializations if
lss_copy.
From-SVN: r251424
2017-08-29 15:40:21 -04:00
Jason Merrill
a0ab7ccd21
Add immediate potential_constant_expression variants.
...
* constexpr.c (potential_constant_expression_1): Add "now" parm.
(is_constant_expression, require_constant_expression): New.
(is_static_init_expression, is_nondependent_constant_expression)
(is_nondependent_static_init_expression): Drop "potential".
* except.c (build_must_not_throw_expr): Do type conversion on
value-dependent argument.
* pt.c, semantics.c, typeck2.c: Use variants without "potential".
From-SVN: r251423
2017-08-29 15:40:14 -04:00
Jason Merrill
12659e10c7
Instantiate default arguments/member initializers once.
...
* init.c (get_nsdmi): Remember NSDMI instantiations.
* parser.c (inject_this_parameter): Be more picky about
current_class_ptr.
* pt.c (tsubst_copy): Simplify 'this' handling.
(tsubst_default_argument): Remember default argument
instantiations. Take parameter number.
(tsubst_default_arguments): Pass it.
* call.c (convert_default_arg): Likewise.
From-SVN: r251422
2017-08-29 15:40:08 -04:00
Jason Merrill
1aeafba210
Fix default argument conversion failure and SFINAE.
...
* call.c (build_over_call): Check convert_default_arg result for
error_mark_node.
* parser.c (cp_parser_late_parsing_default_args): Remember
error_mark_node.
From-SVN: r251421
2017-08-29 15:39:18 -04:00
Ian Lance Taylor
a2aa807ef9
runtime: fix lfstack for 64-bit AIX
...
Reviewed-on: https://go-review.googlesource.com/57550
From-SVN: r251420
2017-08-29 18:59:04 +00:00
Uros Bizjak
4e395d91ad
*.c: Remove excess braces from target selectors.
...
* gcc.target/i386/*.c: Remove excess braces from target selectors.
From-SVN: r251419
2017-08-29 20:28:32 +02:00
Alexander Monakov
9f1c93df48
ira-costs: avoid missing base registers in record_address_regs
...
* ira-costs.c (record_address_regs): Handle both operands of PLUS for
MAX_REGS_PER_ADDRESS == 1.
From-SVN: r251418
2017-08-29 20:34:21 +03:00
Uros Bizjak
2ffc0382ff
20030926-1.c: Add dg-additional-options.
...
* gcc.target/i386/20030926-1.c: Add dg-additional-options.
* gcc.target/i386/abi-2.c: Ditto.
* gcc.target/i386/interrupt-sibcall-2.c: Ditto.
* gcc.target/i386/pr22076.c: Ditto.
* gcc.target/i386/pr37216.c: Ditto.
* gcc.target/i386/pr39431.c: Ditto.
* gcc.target/i386/pr40906-1.c: Ditto.
* gcc.target/i386/pr40906-2.c: Ditto.
* gcc.target/i386/pr43766.c: Ditto.
* gcc.target/i386/pr46226.c: Ditto.
* gcc.target/i386/pr46470.c: Ditto.
* gcc.target/i386/pr59929.c: Ditto.
* gcc.target/i386/sse-10.c: Ditto.
* gcc.target/i386/vararg-1.c: Ditto.
* gcc.target/i386/vararg-1.c: Ditto.
* gcc.target/i386/asm-6.c: Compile for fpic target only.
* gcc.target/i386/pr44223.c: Ditto.
* gcc.target/i386/bitfield1.c (dg-options): Remove target selector.
* gcc.target/i386/bitfield2.c (dg-options): Ditto.
* gcc.target/i386/pr67480.c (dg-options): Ditto.
* gcc.target/i386/vect-cond-1.c (dg-options): Ditto.
* gcc.target/i386/bittest.c (scan-assembler-times): Ditto.
* gcc.target/i386/darwin-fpmath.c (dg-do): Simplify target selector.
* gcc.target/i386/mvc9.c: Compile for lto target only.
* gcc.target/i386/pr45234.c: Compile for ia32 target only.
* gcc.target/i386/pr49866.c: Compile for lp64 target only.
* gcc.target/i386/pr57091.c: Ditto.
* gcc.target/i386/pr61599-2.c: Ditto.
From-SVN: r251417
2017-08-29 19:21:21 +02:00
Uros Bizjak
be0ffecc80
i386.opt (flag_fentry): Do not init to -1.
...
* config/i386/i386.opt (flag_fentry): Do not init to -1.
* config/i386/i386.c (ix86_option_override_internal): Simplify
setting of opts->x_flag_entry.
From-SVN: r251416
2017-08-29 18:56:57 +02:00
Bill Schmidt
8eb9186902
re PR tree-optimization/81503 (Wrong code at -O2)
...
[gcc]
2017-08-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Jakub Jelinek <jakub@redhat.com>
Richard Biener <rguenther@suse.de>
PR tree-optimization/81503
* gimple-ssa-strength-reduction.c (replace_mult_candidate): Ensure
folded constant fits in the target type; reorder tests for clarity.
[gcc/testsuite]
2017-08-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/81503
* gcc.c-torture/execute/pr81503.c: New file.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r251414
2017-08-29 14:41:53 +00:00
Martin Liska
9dc3d6a961
Make expansion of balanced binary trees of switches on tree level.
...
2017-08-29 Martin Liska <mliska@suse.cz>
* passes.def: Include pass_lower_switch.
* stmt.c (dump_case_nodes): Remove and move to
tree-switch-conversion.
(case_values_threshold): Likewise.
(expand_switch_as_decision_tree_p): Likewise.
(emit_case_decision_tree): Likewise.
(expand_case): Likewise.
(balance_case_nodes): Likewise.
(node_has_low_bound): Likewise.
(node_has_high_bound): Likewise.
(node_is_bounded): Likewise.
(emit_case_nodes): Likewise.
(struct simple_case_node): New struct.
(add_case_node): Remove.
(emit_case_dispatch_table): Use vector instead of case_list.
(reset_out_edges_aux): Remove.
(compute_cases_per_edge): Likewise.
(expand_case): Build list of simple_case_node.
(expand_sjlj_dispatch_table): Use it.
* tree-switch-conversion.c (struct case_node): Moved from
stmt.c and adjusted.
(emit_case_nodes): Likewise.
(node_has_low_bound): Likewise.
(node_has_high_bound): Likewise.
(node_is_bounded): Likewise.
(case_values_threshold): Likewise.
(reset_out_edges_aux): Likewise.
(compute_cases_per_edge): Likewise.
(add_case_node): Likewise.
(dump_case_nodes): Likewise.
(balance_case_nodes): Likewise.
(expand_switch_as_decision_tree_p): Likewise.
(emit_jump): Likewise.
(emit_case_decision_tree): Likewise.
(try_switch_expansion): Likewise.
(do_jump_if_equal): Likewise.
(emit_cmp_and_jump_insns): Likewise.
(fix_phi_operands_for_edge): New function.
(record_phi_operand_mapping): Likewise.
(class pass_lower_switch): New pass.
(pass_lower_switch::execute): New function.
(make_pass_lower_switch): Likewise.
(conditional_probability):
* timevar.def: Add TV_TREE_SWITCH_LOWERING.
* tree-pass.h: Add make_pass_lower_switch.
2017-08-29 Martin Liska <mliska@suse.cz>
* gcc.dg/tree-prof/update-loopch.c: Scan patterns in
switchlower.
* gcc.dg/tree-ssa/vrp104.c: Likewise.
From-SVN: r251412
2017-08-29 14:12:44 +00:00
Jozef Lawrynowicz
10bcba61fc
re PR target/80993 ([msp430] __attribute__((interrupt)) should imply __attribute__((used)))
...
PR target/80993
* gcc/config/msp430/msp430.c (msp430_attr): Mark interrupt
handlers as used.
From-SVN: r251410
2017-08-29 13:20:54 +00:00
Richard Biener
12d847913a
dwarf2out.c (add_dwarf_attr): When checking is enabled verify we do not add a DW_AT_inline attribute twice.
...
2017-08-29 Richard Biener <rguenther@suse.de>
* dwarf2out.c (add_dwarf_attr): When checking is enabled verify
we do not add a DW_AT_inline attribute twice.
(gen_subprogram_die): Remove code setting DW_AT_inline on
DECL_ABSTRACT_P nodes.
From-SVN: r251409
2017-08-29 12:15:57 +00:00
Martin Liska
0694da45b3
Fix --help=target (Ada) (PR other/39851)
...
2017-08-29 Martin Liska <mliska@suse.cz>
PR other/39851
* gcc-interface/trans.c (Pragma_to_gnu): Set argument to NULL.
From-SVN: r251406
2017-08-29 08:35:46 +00:00
Richard Sandiford
a844293de1
Set the call nothrow flag more often
...
This patch sets the nothrow flag for various calls to internal functions
that are not inherently NOTHROW (and so can't be declared that way in
internal-fn.def) but that are used in contexts that can guarantee
NOTHROWness.
2017-08-29 Richard Sandiford <richard.sandiford@linaro.org>
gcc/
* gimplify.c (gimplify_call_expr): Copy the nothrow flag to
calls to internal functions.
(gimplify_modify_expr): Likewise.
* tree-call-cdce.c (use_internal_fn): Likewise.
* tree-ssa-math-opts.c (pass_cse_reciprocals::execute): Likewise.
(convert_to_divmod): Set the nothrow flag.
* tree-if-conv.c (predicate_mem_writes): Likewise.
* tree-vect-stmts.c (vectorizable_mask_load_store): Likewise.
(vectorizable_call): Likewise.
(vectorizable_store): Likewise.
(vectorizable_load): Likewise.
* tree-vect-patterns.c (vect_recog_pow_pattern): Likewise.
(vect_recog_mask_conversion_pattern): Likewise.
From-SVN: r251401
2017-08-29 07:47:05 +00:00
Martin Liska
130fcab02f
Fix --help=target (PR other/39851).
...
2017-08-29 Martin Liska <mliska@suse.cz>
PR other/39851
* gcc.c (driver_handle_option): Add new argument.
* opts-common.c (handle_option): Pass
target_option_override_hook.
* opts-global.c (lang_handle_option): Add new option.
(set_default_handlers): Add new argument.
(decode_options): Likewise.
* opts.c (target_handle_option): Likewise.
(common_handle_option): Call target_option_override_hook.
* opts.h (struct cl_option_handler_func): Add hook for
target option override.
(struct cl_option_handlers): Likewise.
(set_default_handlers): Add new argument.
(decode_options): Likewise.
(common_handle_option): Likewise.
(target_handle_option): Likewise.
* toplev.c (toplev::main): Pass targetm.target_option.override
hook.
2017-08-29 Martin Liska <mliska@suse.cz>
PR other/39851
* c-common.c (parse_optimize_options): Add argument to function
call.
* c-pragma.c (handle_pragma_diagnostic): Likewise.
From-SVN: r251400
2017-08-29 07:46:10 +00:00
Richard Biener
faa5399be6
tree-vect-slp.c (vect_bb_slp_scalar_cost): Properly confine life to the active subtree.
...
2017-08-29 Richard Biener <rguenther@suse.de>
Dominik Infuehr <dominik.infuehr@theobroma-systems.com>
* tree-vect-slp.c (vect_bb_slp_scalar_cost): Properly confine
life to the active subtree.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-slp.c: New testcase.
Co-Authored-By: Dominik Infuehr <dominik.infuehr@theobroma-systems.com>
From-SVN: r251398
2017-08-29 07:04:31 +00:00
Jeff Law
14d6281388
tree-ssa-dom.c (edge_info::record_simple_equiv): Call derive_equivalences.
...
* tree-ssa-dom.c (edge_info::record_simple_equiv): Call
derive_equivalences.
(derive_equivalences_from_bit_ior, record_temporary_equivalences):
Code moved into....
(edge_info::derive_equivalences): New private member function
* gcc.dg/torture/pr57214.c: Fix type of loop counter.
* gcc.dg/tree-ssa/ssa-sink-16.c: Disable DOM.
* gcc.dg/tree-ssa/ssa-dom-thread-11.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-12.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-13.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-14.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-15.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-16.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-17.c: New test.
From-SVN: r251397
2017-08-28 23:03:36 -06:00
Jeff Law
a09f784a60
tree-ssa-dom.c (class edge_info): Changed from a struct to a class.
...
* tree-ssa-dom.c (class edge_info): Changed from a struct
to a class. Add ctor/dtor, methods and data members.
(edge_info::edge_info): Renamed from allocate_edge_info.
Initialize additional members.
(edge_info::~edge_info): New.
(free_dom_edge_info): Delete the edge info.
(record_edge_info): Use new class & associated member functions.
Tighten forms for testing for edge equivalences.
(record_temporary_equivalences): Iterate over the simple
equivalences rather than assuming there's only one per edge.
(cprop_into_successor_phis): Iterate over the simple
equivalences rather than assuming there's only one per edge.
(optimize_stmt): Use operand_equal_p rather than pointer
equality for mini-DSE code.
From-SVN: r251396
2017-08-28 23:03:22 -06:00
GCC Administrator
f73e77f714
Daily bump.
...
From-SVN: r251395
2017-08-29 00:16:39 +00:00
Janus Weil
c11384aa75
re PR fortran/81770 (Bogus warning: Pointer in pointer assignment might outlive the pointer target)
...
2017-08-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/81770
* expr.c (gfc_check_pointer_assign): Improve the check whether pointer
may outlive pointer target.
2017-08-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/81770
* gfortran.dg/warn_target_lifetime_3.f90: Fix a typo.
* gfortran.dg/warn_target_lifetime_4.f90: New testcase.
From-SVN: r251390
2017-08-28 20:46:28 +02:00
Steve Ellcey
ac9a43e165
dec_init_1.f90 (dummy): Use ichar in print statement.
...
2017-08-25 Steve Ellcey <sellcey@cavium.com>
* gfortran.dg/dec_init_1.f90 (dummy): Use ichar in print statement.
* gfortran.dg/dec_init_2.f90 (dummy): Ditto.
* gfortran.dg/dec_init_3.f90 (dummy): Ditto.
From-SVN: r251389
2017-08-28 16:55:46 +00:00
Nathan Sidwell
d876eb0574
cp-tree.h (lang_type): Replace sorted_fields vector with bindings map.
...
* cp-tree.h (lang_type): Replace sorted_fields vector with
bindings map.
(CLASSTYPE_SORTED_FIELDS): Delete.
(CLASSTYPE_BINDINGS): New.
* decl.c (finish_enum_value_list): Swap args of
insert_late_enum_def_bindings.
* name-lookup.c (lookup_field_1): Replace binary search of sorted
fields with map->get.
(sorted_fields_type_new, count_fields,
add_fields_to_record_type, add_enum_fields_to_record_type): Delete.
(add_class_member, add_class_members): New.
(set_class_bindings): Create map and insert.
(insert_late_enum_def_binding): Swap parms. Use add_clasS_member.
* ptree.c (cxx_print_type): Delete sorted fields printing.
From-SVN: r251388
2017-08-28 16:25:44 +00:00
Nathan Sidwell
41970ff1bc
cp-tree.h (insert_late_enum_def_into_classtype_sorted_fields): Delete.
...
* cp-tree.h (insert_late_enum_def_into_classtype_sorted_fields):
Delete.
* name-lookup.h (set_class_bindings,
insert_late_enum_def_bindings): Declare.
* decl.c (finish_enum_value_list): Adjust for
insert_late_enum_def_bindings name change.
* class.c (finish_struct_1): Call set_class_bindings.
(count_fields, add_fields_to_record_type,
add_enum_fields_to_record_type, sorted_fields_type_new,
insert_into_classtype_sorted_fields,
insert_late_enum_def_into_classtype_sorted_fields): Move to ...
* name-lookup.h (count_fields, add_fields_to_record_type,
add_enum_fields_to_record_type, sorted_fields_type_new,
set_class_bindings, insert_late_enum_def_bindings): ... here.
From-SVN: r251387
2017-08-28 14:51:45 +00:00
Nathan Sidwell
e54c2581c5
gcc.c (execute): Fold SIGPIPE handling into switch statement.
...
* gcc.c (execute): Fold SIGPIPE handling into switch
statement. Adjust internal error message.
From-SVN: r251385
2017-08-28 13:44:39 +00:00
Richard Biener
1963f60adb
re PR lto/81968 (early lto debug objects make Solaris ld SEGV)
...
2017-08-28 Richard Biener <rguenther@suse.de>
PR lto/81968
* simple-object-elf.c (simple_object_elf_copy_lto_debug_section):
Adjust field with for sh_type write, set SHF_EXCLUDE only for
removed sections.
From-SVN: r251384
2017-08-28 13:14:28 +00:00
Richard Biener
950904f8b7
re PR debug/81993 (-gsplit-dwarf removes some symbols, causing some undefined references)
...
2017-08-28 Richard Biener <rguenther@suse.de>
PR debug/81993
* dwarf2out.c (gen_remaining_tmpl_value_param_die_attributes):
Do nothing for removed DIEs.
From-SVN: r251382
2017-08-28 13:13:23 +00:00
Richard Biener
2aa8aa18a6
re PR tree-optimization/81977 (Issue with inline memcpy with optimizations enabled)
...
2017-08-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/81977
* tree-ssa-sccvn.c (vn_reference_lookup_3): Fix look through
memcpy.
* g++.dg/torture/pr81977.C: New testcase.
From-SVN: r251378
2017-08-28 11:42:23 +00:00
Alexander Monakov
5e5ccf0d20
optabs: ensure mem_thread_fence is a compiler barrier
...
PR target/80640
* doc/md.texi (mem_thread_fence): Remove mention of mode. Rewrite.
* optabs.c (expand_mem_thread_fence): Emit a compiler barrier when
using targetm.gen_mem_thread_fence.
testsuite/
* gcc.dg/atomic/pr80640.c: New testcase.
From-SVN: r251377
2017-08-28 13:58:45 +03:00
Jerry DeLisle
bf498b0758
re PR fortran/78387 (OpenMP segfault/stack size exceeded writing to internal file)
...
2017-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/78387
* io/list_read.c (nml_read_obj): Remove use of stash.
* io/transfer.c (st_read_done, st_write_done): Likewise.
* io/unit.c (stash_internal_unit): Delete function.
(get_unit): Remove use of stash.
(init_units): Likewise.
(close_units): Likewise.
* io/write.c (nml_write_obj): Likewise:
From-SVN: r251374
2017-08-28 03:42:47 +00:00
GCC Administrator
77e3203944
Daily bump.
...
From-SVN: r251373
2017-08-28 00:16:28 +00:00
Uros Bizjak
a5df209084
re PR target/81995 (gcc/reg-stack.c:2073:1: error: unrecognizable insn:)
...
PR target/81995
* config/i386/i386.md (*<btsc><mode>): Change operand 2
predicate to register_operand. Reorder operands.
(*btr<mode>): Ditto.
(*<btsc><mode>_mask): Change operand 3 predicate to register_operand.
(*btr<mode>_mask): Ditto.
testsuite/ChangeLog:
PR target/81995
* gcc.target/i386/pr46091-4.c: Add -mregparm=2 for 32bit targets.
* gcc.target/i386/pr46091-4a.c: Ditto.
From-SVN: r251369
2017-08-27 20:01:46 +02:00
Thomas Koenig
86e03ef911
re PR fortran/81974 (ICE verify_gimple failed type mismatch in binary expression)
...
2017-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/81974
* frontend-passes (inline_matumul_assign): Explicity
set typespec for call to CONJG.
2017-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/81974
* gfortran.dg/inline_matmul_19.f90: New test.
From-SVN: r251368
2017-08-27 08:01:25 +00:00
GCC Administrator
3e7b89acd7
Daily bump.
...
From-SVN: r251367
2017-08-27 00:16:41 +00:00
GCC Administrator
f59f6d5b6d
Daily bump.
...
From-SVN: r251362
2017-08-26 00:16:46 +00:00
Steven Munroe
6e4c6a248b
Part 3/3 for contributing PPC64LE support for X86 SSE instrisics.
...
This patch includes testsuite/gcc.target tests for the intrinsics
in xmmintrin.h. For these tests I added -Wno-psabi to dg-options
to suppress warnings associated with the vector ABI change in GCC5.
From-SVN: r251357
2017-08-25 15:23:27 +00:00
Steven Munroe
2025325025
Part 2/3 for contributing PPC64LE support for X86 SSE instrisics.
...
Part 2/3 for contributing PPC64LE support for X86 SSE
instrisics. This patch includes the new (for PPC) xmmintrin.h,
changes x86intrin.h to include xmmintrin.h and associated
config.gcc changes.
From-SVN: r251356
2017-08-25 15:11:50 +00:00
William Schmidt
55d14001d9
re PR target/81504 (gcc-7 regression: vec_st in loop misoptimized)
...
2017-08-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/81504
* config/rs6000/rs6000-p8swap.c (find_alignment_op): Add reference
parameter and_insn and return it.
(recombine_lvx_pattern): Insert a copy to ensure availability of
the base register of the copied masking operation at the point of
the instruction replacement.
(recombine_stvx_pattern): Likewise.
From-SVN: r251355
2017-08-25 15:08:30 +00:00
Michael Meissner
56b26dd409
rs6000.opt (-mpower9-dform-scalar): Delete undocumented switches.
...
[gcc]
2017-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.opt (-mpower9-dform-scalar): Delete
undocumented switches.
(-mpower9-dform-vector): Likewise.
(-mpower9-dform): Likewise.
* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Update
comments to delete references to -mpower9-dform* switches.
* config/rs6000/predicates.md (vsx_quad_dform_memory_operand):
Delete reference to -mpower9-dform* switches, test for
-mpower9-vector instead.
* config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Likewise.
(OTHER_P9_VECTOR_MASKS): Likewise.
(POWERPC_MASKS): Likewise.
* config/rs6000/rs6000.c (rs6000_setup_reg_addr_masks): Change
tests against -mpower9-dform* to -mpower9-vector. Delete code
that checked for -mpower9-dform* consistancy with other options.
Add test for -mpower9-misc to enable other power9 switches.
(rs6000_init_hard_regno_mode_ok): Likewise.
(rs6000_option_override_internal): Likewise.
(rs6000_emit_prologue): Likewise.
(rs6000_emit_epilogue): Likewise.
(rs6000_opt_masks): Delete -mpower9-dform-{scalar,vector}.
(rs6000_disable_incompatiable_switches): Delete -mpower9-dform.
(emit_fusion_p9_load): Change tests for -mpower9-dform-scalar
-mpower9-vector.
(emit_fusion_p9_store): Likewise.
* config/rs6000/rs6000.h (TARGET_P9_DFORM_SCALAR): Delete
resetting these macros if the assembler does not support ISA 3.0
instructions.
(TARGET_P9_DFORM_VECTOR): Likewise.
* config/rs6000/rs6000.md (peepholes to optimize altivec memory):
Change to use -mpower9-vector instead of -mpower9-dform-scalar.
[gcc/testsuite]
2017-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/dform-1.c: Delete -mpower9-dform*
options.
* gcc.target/powerpc/dform-2.c: Likewise.
* gcc.target/powerpc/dform-3.c: Likewise.
* gcc.target/powerpc/pr71656-1.c: Likewise.
* gcc.target/powerpc/pr71656-2.c: Likewise.
* gcc.target/powerpc/pr80103-1.c: Likewise.
* gcc.target/powerpc/pr80098-1.c: Likewise.
From-SVN: r251352
2017-08-25 13:07:10 +00:00
Nathan Sidwell
9cf59597eb
re PR target/81921 (Fails to always-inline intrinsics with -flto)
...
Retabify 2017-08-24 Richard Biener <rguenther@suse.de>
PR target/81921
From-SVN: r251351
2017-08-25 12:32:54 +00:00
Nathan Sidwell
bb5d50b599
class.c (method_name_cmp, [...]): Method names can never be NULL.
...
* class.c (method_name_cmp, resort_method_name_cmp): Method names
can never be NULL.
From-SVN: r251350
2017-08-25 12:27:48 +00:00
Alan Modra
e2da9ffe3c
PR81747, ICE in operator[]
...
PR rtl-optimization/81747
* cse.c (cse_extended_basic_block): Don't attempt to record
equivalences for degenerate conditional branches that branch
to their fall-through.
From-SVN: r251349
2017-08-25 21:51:00 +09:30
Nathan Sidwell
bff8b385e9
Conversion operators have a special name
...
Conversion operators have a special name
* cp-tree.h (CPTI_CONV_OP_MARKER, CPTI_CONV_OP_IDENTIFIER): New.
(conv_op_marker, conv_op_identifier): New.
(CLASSTYPE_FIRST_CONVERSION_SLOT): Delete.
* decl.c (initialize_predefined_identifiers): Add
conv_op_identifier.
(cxx_init_decl_processing): Create conv_op_marker.
* decl2.c (check_classfn): Lookup conv-ops by name.
* class.c (add_method): Use conv_op_identifier & conv_op_marker.
(resort_type_method_vec): Don't skip conv-ops.
(finish_struct_methods, warn_hidden): Likewise.
* name-lookup.h (lookup_all_conversions): Delete.
* name-lookup.c (lookup_conversion_operator): Replace with ...
(extract_conversion_operator): ... this.
(lookup_fnfields_slot_nolazy): Find conv-ops by name.
(lookup_all_conversions): Delete.
* pt.c (check_explicit_specialization): Find conv-ops by name.
* search.c (lookup_conversions_r): Likewise.
From-SVN: r251348
2017-08-25 11:37:10 +00:00
Martin Sebor
6512c0f187
PR middle-end/81908 - FAIL: gfortran.dg/alloc_comp_auto_array_2.f90 -O3 -g -m32
...
gcc/ChangeLog:
PR middle-end/81908
* gimple-fold.c (size_must_be_zero_p): New function.
(gimple_fold_builtin_memory_op): Call it.
gcc/testsuite/ChangeLog:
PR middle-end/81908
* gcc.dg/tree-ssa/builtins-folding-gimple-2.c: New test.
* gcc.dg/tree-ssa/builtins-folding-gimple-3.c: New test.
* gcc.dg/tree-ssa/pr81908.c: New test.
From-SVN: r251347
2017-08-24 18:25:57 -06:00
GCC Administrator
f9dd01fabf
Daily bump.
...
From-SVN: r251346
2017-08-25 00:16:43 +00:00
François Dumont
55500f5d28
stl_list.h [!_GLIBCXX_INLINE_VERSION](_List_base<>::_S_distance): Remove.
...
2017-08-24 François Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_list.h
[!_GLIBCXX_INLINE_VERSION](_List_base<>::_S_distance): Remove.
(_List_impl(_Node_alloc_type&&, _List_impl&&)): New.
(_List_base(_Node_alloc_type&&, _List_base&&)): New, use latter.
[!_GLIBCXX_INLINE_VERSION](_List_base(_Node_alloc_type&&,_List_base&&)):
Remove.
(_List_base(_Node_alloc_type&&)): New.
[!_GLIBCXX_INLINE_VERSION](_List_base<>::_M_distance): Remove.
[!_GLIBCXX_INLINE_VERSION](_List_base<>::_M_node_count): Remove.
(list<>::_M_node_count): New.
(list<>::size()): Adapt to call latter.
(list<>::_S_distance(const_iterator, const_iterator)): New.
(list<>::splice(iterator, list&, const_iterator, const_iterator)):
Adapt to call latter.
(list(list&&, const allocator_type&, true_type)): New.
(list(list&&, const allocator_type&, false_type)): New.
(list(list&&, const allocator_type&)): Adapt to call latters.
From-SVN: r251342
2017-08-24 20:31:53 +00:00
Michael Meissner
db1e5f32c2
rs6000.opt (-mpower9-dform-scalar): Delete undocumented switches.
...
[gcc]
2017-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.opt (-mpower9-dform-scalar): Delete
undocumented switches.
(-mpower9-dform-vector): Likewise.
(-mpower9-dform): Likewise.
* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Update
comments to delete references to -mpower9-dform* switches.
* config/rs6000/predicates.md (vsx_quad_dform_memory_operand):
Delete reference to -mpower9-dform* switches, test for
-mpower9-vector instead.
* config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Likewise.
(OTHER_P9_VECTOR_MASKS): Likewise.
(POWERPC_MASKS): Likewise.
* config/rs6000/rs6000.c (rs6000_setup_reg_addr_masks): Change
tests against -mpower9-dform* to -mpower9-vector. Delete code
that checked for -mpower9-dform* consistancy with other options.
Add test for -mpower9-misc to enable other power9 switches.
(rs6000_init_hard_regno_mode_ok): Likewise.
(rs6000_option_override_internal): Likewise.
(rs6000_emit_prologue): Likewise.
(rs6000_emit_epilogue): Likewise.
(rs6000_opt_masks): Delete -mpower9-dform-{scalar,vector}.
(rs6000_disable_incompatiable_switches): Delete -mpower9-dform.
(emit_fusion_p9_load): Change tests for -mpower9-dform-scalar
-mpower9-vector.
(emit_fusion_p9_store): Likewise.
* config/rs6000/rs6000.h (TARGET_P9_DFORM_SCALAR): Delete
resetting these macros if the assembler does not support ISA 3.0
instructions.
(TARGET_P9_DFORM_VECTOR): Likewise.
* config/rs6000/rs6000.md (peepholes to optimize altivec memory):
Change to use -mpower9-vector instead of -mpower9-dform-scalar.
[gcc/testsuite]
2017-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/dform-1.c: Delete -mpower9-dform*
options.
* gcc.target/powerpc/dform-2.c: Likewise.
* gcc.target/powerpc/dform-3.c: Likewise.
* gcc.target/powerpc/pr71656-1.c: Likewise.
* gcc.target/powerpc/pr71656-2.c: Likewise.
* gcc.target/powerpc/pr80103-1.c: Likewise.
* gcc.target/powerpc/pr80098-1.c: Likewise.
From-SVN: r251341
2017-08-24 19:28:07 +00:00