Jan Hubicka
d5c3d3ef54
cgraph.c (cgraph_turn_edge_to_speculative): Fix debug output.
...
* cgraph.c (cgraph_turn_edge_to_speculative):
Fix debug output.
From-SVN: r201977
2013-08-25 09:47:00 +00:00
Jan Hubicka
4b0809ef53
* g++.dg/ipa/devirt-14.C: Fix typo.
...
From-SVN: r201976
2013-08-25 09:45:34 +00:00
Jan Hubicka
5b1e743577
tree.h (TYPE_FINAL_P, [...]): New macros.
...
* tree.h (TYPE_FINAL_P, DECL_FINAL_P): New macros.
(tree_decl_with_vis): Add FINAL field.
* cp-tree.h (struct lang_type_class): Free is_final bit.
(CLASSTYPE_FINAL): Define using TYPE_FINAL_P.
(DECL_FINAL_P): Remove.
* pt.c (instantiate_class_template_1): Guard that CLASSTYPE_FINAL
is called on CLASS_TYPE_P.
From-SVN: r201975
2013-08-25 09:43:34 +00:00
Gabriel Dos Reis
0691175fe2
c-pretty-print.h (c_pretty_printer::translate_string): Declare.
...
c-family/
* c-pretty-print.h (c_pretty_printer::translate_string): Declare.
* c-pretty-print.c (M_): Remove.
(c_pretty_printer::translate_string): Define.
(pp_c_type_specifier): Use it.
(pp_c_primary_expression): Likewise.
(pp_c_expression): Likewise.
cp/
* cxx-pretty-print.c (M_): Remove.
(pp_cxx_unqualified_id): Use translate_string instead of M_.
(pp_cxx_canonical_template_parameter): Likewise.
From-SVN: r201974
2013-08-25 05:51:54 +00:00
Gabriel Dos Reis
66dfe4c4f8
c-pretty-print.h (c_pretty_printer::id_expression): Now a virtual function.
...
c-family/
* c-pretty-print.h (c_pretty_printer::id_expression): Now a
virtual function.
(pp_c_id_expression): Remove.
(pp_id_expression): Adjust.
* c-pretty-print.c (c_pretty_printer::id_expression): Rename from
pp_c_id_expression. Adjust.
(pp_c_postfix_expression): Use pp_id_expression.
(c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
cp/
* cxx-pretty-print.h (cxx_pretty_printer::id_expression): Declare.
* cxx-pretty-print.c (cxx_pretty_printer::id_expression): Rename
from pp_cxx_id_expression. Adjust.
(pp_cxx_userdef_literal): Use pp_id_expression.
(pp_cxx_primary_expression): Likewise.
(pp_cxx_direct_declarator): Likewise.
(cxx_pretty_printer::cxx_pretty_printer): Do not assign to
id_expression.
From-SVN: r201973
2013-08-25 00:24:27 +00:00
GCC Administrator
84deafd2c3
Daily bump.
...
From-SVN: r201972
2013-08-25 00:16:46 +00:00
Gabriel Dos Reis
ca43e9d547
c-pretty-print.h (c_pretty_printer::constant): Now a virtual member function.
...
* c-pretty-print.h (c_pretty_printer::constant): Now a virtual
member function.
(pp_constant): Adjust.
(pp_c_constant): Remove.
* c-pretty-print.c (c_pretty_printer::constant): Rename from
pp_c_constant. Adjust.
(pp_c_constant)
(pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
(c_pretty_printer::c_pretty_printer): Remove assignment to constant.
cp/
* cxx-pretty-print.h (cxx_pretty_printer::constant): Now a member
function, overriding c_pretty_printer::constant.
* cxx-pretty-print.c (cxx_pretty_printer::constant): Rename from
pp_cxx_constant. Adjust.
(cxx_pretty_printer::cxx_pretty_printer): Do not assign to constant.
From-SVN: r201969
2013-08-24 22:29:37 +00:00
Jeff Law
ead69dac20
tree-ssa-pre.c (do_regular_insertion): Include the expression in the debugging dump when the expression is fully redundant.
...
* tree-ssa-pre.c (do_regular_insertion): Include the expression
in the debugging dump when the expression is fully redundant.
From-SVN: r201963
2013-08-23 22:48:19 -06:00
GCC Administrator
b6e0149fca
Daily bump.
...
From-SVN: r201959
2013-08-24 00:16:49 +00:00
Gabriel Dos Reis
025311c4bb
diagnostic.c (diagnostic_set_caret_max_width): Use pp_buffer.
...
* diagnostic.c (diagnostic_set_caret_max_width): Use pp_buffer.
* gimple-pretty-print.c (gimple_dump_bb_buff): Likewise.
* pretty-print.c (pp_formatted_text_data): Likewise.
(pp_write_text_to_stream): Likewise.
(pp_write_text_as_dot_label_to_stream): Likewise.
(pp_append_r): Likewise.
(pp_format): Likewise.
(pp_flush): Likewise.
(pp_clear_output_area): Likewise.
(pp_append_text): Likewise.
(pp_formatted_text): Likewise.
(pp_remaining_character_count_for_line): Likewise.
(pp_newline): Likewise.
(pp_character): Likewise.
(output_buffer::~output_buffer): Define.
(pretty_printer::~pretty_printer): Destruct output buffer.
* pretty-print.h (output_buffer::~output_buffer): Declare.
(pretty_printer::~pretty_printer): Declare virtual.
c/
* c-objc-common.c (c_tree_printer): Document the nature of the cast.
(c_initialize_diagnostics): Call a destructor for the early printer.
cp/
* cp-objcp-common.c (cxx_initialize_diagnostics): Call a
destructor for the early printer.
* error.c (type_to_string): Use pp_buffer.
From-SVN: r201956
2013-08-23 23:58:55 +00:00
Marc Glisse
0cadbfaa89
re PR other/57324 (Undefined behavior issues found with clang's -fsanitize=undefined)
...
2013-08-24 Marc Glisse <marc.glisse@inria.fr>
PR other/57324
* hwint.h (HOST_WIDE_INT_UC, HOST_WIDE_INT_1U, HOST_WIDE_INT_M1,
HOST_WIDE_INT_M1U): New macros.
* fold-const.c (sign_bit_p, build_range_check, fold_unary_loc,
fold_binary_loc, fold_ternary_loc): Use the new macros. Use an
unsigned -1 for lshift.
* cse.c (cse_insn): Likewise.
* double-int.c (rshift_double, lshift_double): Likewise.
* builtins.c (fold_builtin_bitop): Likewise.
* combine.c (force_to_mode): Likewise.
* tree.c (integer_pow2p, tree_log2, tree_floor_log2): Likewise.
* simplify-rtx.c (simplify_const_unary_operation,
simplify_const_binary_operation): Likewise.
* tree-stdarg.c (va_list_counter_bump, va_list_ptr_read,
check_va_list_escapes): Likewise.
* rtlanal.c (nonzero_bits1): Likewise.
* expmed.c (expand_smod_pow2): Likewise.
* tree-ssa-structalias.c (UNKNOWN_OFFSET): Use HOST_WIDE_INT_MIN.
From-SVN: r201953
2013-08-23 22:16:08 +00:00
Ian Lance Taylor
4500f676e1
compiler: don't export embedded builtins.
...
The panic in test/fixedbugs/bug461.go was caused by the fact that
reflect expects unexported fields in a struct to have a valid
package path. If a struct field is an embedded built-in type, it is
now given the package name of the currently compiling package, so it
remains unexported for purposes of reflect.
Fixed Issue 25.
From-SVN: r201951
2013-08-23 21:04:40 +00:00
Jan Hubicka
009e53539d
cgraph.c (cgraph_turn_edge_to_speculative): Mark target node as having address taken.
...
* cgraph.c (cgraph_turn_edge_to_speculative): Mark target node
as having address taken.
From-SVN: r201948
2013-08-23 18:33:45 +00:00
Mikael Morin
1f65468a21
re PR fortran/57798 (Incorrect handling of sum over first dimension of a product of automatic arrays)
...
fortran/
PR fortran/57798
* trans-array.c (gfc_conv_ss_startstride, set_loop_bounds,
gfc_set_delta): Generate preliminary code before the outermost loop.
testsuite/
PR fortran/57798
* gfortran.dg/inline_sum_5.f90: New.
From-SVN: r201947
2013-08-23 17:49:39 +00:00
Janus Weil
4f7395ffa1
re PR fortran/57843 ([OOP] Type-bound assignment is resolved to non-polymorphic procedure call)
...
2013-08-23 Janus Weil <janus@gcc.gnu.org>
PR fortran/57843
* interface.c (gfc_extend_assign): Look for type-bound assignment
procedures before non-typebound.
2013-08-23 Janus Weil <janus@gcc.gnu.org>
PR fortran/57843
* gfortran.dg/typebound_assignment_7.f90: New.
From-SVN: r201946
2013-08-23 18:43:15 +02:00
Mikael Morin
cf66452262
trans-array.c (gfc_conv_section_startstride): Move &loop->pre access to the callers.
...
2013-08-23 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_conv_section_startstride): Move &loop->pre access
to the callers.
(gfc_conv_ss_startstride, gfc_conv_expr_descriptor): Update callers.
From-SVN: r201945
2013-08-23 16:06:44 +00:00
Jan Hubicka
64cbf23d1f
ipa-utils.h (method_class_type): Declare.
...
* ipa-utils.h (method_class_type): Declare.
* ipa-devirt.c (method_class_type): Export.
* cgraphunit.c (analyze_functions): Do basic devirtualization;
do not walk base classes of anonymous types.
From-SVN: r201944
2013-08-23 15:55:22 +00:00
Jan Hubicka
c4be656862
devirt-13.C: New testcase.
...
* g++.dg/ipa/devirt-13.C: New testcase.
* g++.dg/ipa/devirt-14.C: New testcase.
* cgraphunit.c (analyze_functions): Do basic devirtualization;
do not walk base classes of anonymous types.
From-SVN: r201942
2013-08-23 15:29:04 +00:00
Kaz Kojima
97aba8e901
re PR rtl-optimization/58220 (Many new failures for SH after rev. 201833)
...
2013-08-23 Kaz Kojima <kkojima@gcc.gnu.org>
PR rtl-optimization/58220
PR regression/58221
* final.c (reemit_insn_block_notes): Use NEXT_INSN to
handle SEQUENCE insns properly.
From-SVN: r201941
2013-08-23 14:31:06 +00:00
Gabriel Dos Reis
0fc80001f0
pretty-print.h (pp_newline_and_flush): Declare.
...
* pretty-print.h (pp_newline_and_flush): Declare. Remove macro
definition.
(pp_newline_and_indent): Likewise.
(pp_separate_with): Likewise.
* pretty-print.c (pp_newline_and_flush): Define.
(pp_newline_and_indent): Likewise.
(pp_separate_with): Likewise.
From-SVN: r201940
2013-08-23 10:46:49 +00:00
Jakub Jelinek
520a5868fa
re PR target/58218 (-mcmodel=medium cause assembler warning "ignoring incorrect section type for .lbss")
...
PR target/58218
* config/i386/x86-64.h (TARGET_SECTION_TYPE_FLAGS): Define.
* config/i386/i386.c (x86_64_elf_section_type_flags): New function.
* gcc.target/i386/pr58218.c: New test.
From-SVN: r201938
2013-08-23 11:57:44 +02:00
Kirill Yukhin
e500c62a86
predicates.md (ext_sse_reg_operand): New.
...
* gcc/config/i386/predicates.md (ext_sse_reg_operand): New.
* gcc/config/i386/i386.md (*movti_internal): Use
predicate to determine if EVEX is needed.
(*movsi_internal): Ditto.
(*movdf_internal): Ditto.
(*movsf_internal): Ditto.
* gcc/config/i386/mmx.md (*mov<mode>_internal): Ditto.
From-SVN: r201936
2013-08-23 07:33:00 +00:00
Jakub Jelinek
6b00d7dd17
re PR tree-optimization/58209 (ICE in extract_range_from_binary_expr, at tree-vrp.c:2294)
...
PR tree-optimization/58209
* tree-tailcall.c (process_assignment): Handle POINTER_PLUS_EXPR.
(find_tail_calls): Give up for pointer result types if m is non-NULL.
(adjust_return_value_with_ops): For PLUS_EXPR and pointer result type
emit POINTER_PLUS_EXPR.
(create_tailcall_accumulator): For pointer result type accumulate in
sizetype type.
* gcc.c-torture/execute/pr58209.c: New test.
From-SVN: r201935
2013-08-23 09:30:40 +02:00
Ian Lance Taylor
6e6bbb604e
libgo: Update libtool.m4 from upstream to recognize powerpcle.
...
From-SVN: r201933
2013-08-23 01:08:25 +00:00
GCC Administrator
c1b4a4c79a
Daily bump.
...
From-SVN: r201932
2013-08-23 00:16:58 +00:00
Michael Meissner
bdacc9852a
pr57744.c: Declare abort.
...
2013-08-22 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/pr57744.c: Declare abort.
From-SVN: r201929
2013-08-22 18:16:59 +00:00
Paolo Carlini
4f2a9f9081
configure.ac: Add backslashes missing from the last change.
...
2013-08-22 Paolo Carlini <paolo.carlini@oracle.com>
* configure.ac: Add backslashes missing from the last change.
* configure: Regenerate.
From-SVN: r201927
2013-08-22 16:52:01 +00:00
Paolo Carlini
42306d73c8
re PR c++/56380 (Const/reference mutable members are not always rejected in class templates)
...
/cp
2013-08-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56380
* class.c (check_field_decls): Check for const mutable and const
reference data members.
/testsuite
2013-08-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56380
* g++.dg/template/error54.C: New.
From-SVN: r201925
2013-08-22 16:30:08 +00:00
Jan Hubicka
7bf4274ea7
ipa.c (function_and_variable_visibility): First remember function was global and then make it local.
...
* ipa.c (function_and_variable_visibility): First remember function was global
and then make it local.
From-SVN: r201924
2013-08-22 15:56:01 +00:00
Julian Brown
1bea243d32
configure.ac: Add aarch64 to list of arches which use "nop" in debug_line test.
...
* configure.ac: Add aarch64 to list of arches which use "nop" in
debug_line test.
* configure: Regenerate.
From-SVN: r201923
2013-08-22 15:36:53 +00:00
Andreas Krebbel
bcba7ecc11
linux.h (TARGET_LIBC_HAS_FUNCTION): Define as gnu_libc_has_function.
...
2013-08-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/linux.h (TARGET_LIBC_HAS_FUNCTION): Define as
gnu_libc_has_function.
* config/s390/tpf.h: Likewise.
From-SVN: r201922
2013-08-22 15:28:15 +00:00
Jan Hubicka
4c495b0d99
* timevar.c (validate_phases): Add cast.
...
From-SVN: r201921
2013-08-22 15:25:53 +00:00
Jan Hubicka
5e302bca18
timevar.c (validate_phases): Use size_t for memory.
...
* timevar.c (validate_phases): Use size_t for memory.
* timevar.h (struct timevar_time_def): Use size_t for ggc_mem.
From-SVN: r201920
2013-08-22 14:58:17 +00:00
Janus Weil
a7a6a027f2
re PR fortran/58185 ([OOP] ICE when selector in SELECT TYPE is non-polymorphic)
...
2013-08-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/58185
* match.c (copy_ts_from_selector_to_associate): Only build class
container for polymorphic selector. Some cleanup.
2013-08-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/58185
* gfortran.dg/select_type_34.f90: New.
From-SVN: r201919
2013-08-22 13:49:46 +02:00
Gabriel Dos Reis
da6ca2b5ee
pretty-print.h (output_buffer::output_buffer): Declare.
...
* pretty-print.h (output_buffer::output_buffer): Declare.
(pretty_printer::pretty_printer): Likewise.
(pp_construct): Remove.
* pretty-print.c (output_buffer::output_buffer): Define.
(pretty_printer::pretty_printer): Rename from pp_construct. Simplify.
* gimple-pretty-print.c (print_gimple_stmt): Do not call pp_construct.
(print_gimple_expr): Likewise.
(print_gimple_seq): Likewise.
(gimple_dump_bb): Likewise.
* sched-vis.c (dump_value_slim): Likewise.
(dump_insn_slim): Likewise.
(dump_rtl_slim): Likewise.
(str_pattern_slim): Likewise.
* tree-mudflap.c (mf_varname_tree): Likewise.
* graph.c (print_graph_cfg): Likewise.
(start_graph_dump): Likewise.
* tree-pretty-print.c (maybe_init_pretty_print): Likewise. Use
placement-new.
* diagnostic.c (diagnostic_initialize): Simplify early diagnostic
pretty printer initialization.
* coretypes.h (diagnostic_context): Remove superflous type alias
declaration.
(pretty_printer): Likewise. Declare directly as a class.
(pretty_print_info): Remove declaration as class.
* asan.c (asan_emit_stack_protection): Remove call to pp_construct
and pp_clear_output_area.
(asan_add_global): Likewise.
c/
* c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
printer initialization.
c-family/
* c-pretty-print.h (pp_c_pretty_printer_init): Remove.
(c_pretty_printer::c_pretty_printer): Declare.
* c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
c_pretty_printer_init. Adjust.
(print_c_tree): Do not call c_pretty_printer_init.
* c-ada-spec.c (dump_ads): Remove call to pp_construct.
cp/
* error.c (init_error): Remove calls to pp_construct and
pp_cxx_pretty_printer_init. Initialize cxx_pp with placement-new.
* cxx-pretty-print.h (cxx_pretty_printer::cxx_pretty_printer): Declare.
(cxx_pretty_printer_init): Remove.
* cxx-pretty-print.c (cxx_pretty_printer::cxx_pretty_printer):
Rename from cxx_pretty_printer_init. Adjust.
* cp-objcp-common.c (cxx_initialize_diagnostics): Simplify
initialization of C++ diagnostics pretty printer.
From-SVN: r201918
2013-08-22 10:14:46 +00:00
Jan Hubicka
0e1474e5a6
* cgraphunit.c (analyze_functions) Use update_type_inheritance_graph.
...
* ipa-utils.h (update_type_inheritance_graph): Declare.
(possible_polymorphic_call_target_p): Declare.
(possible_polymorphic_call_target_p): New.
* ipa-devirt.c: Update toplevel comments.
(cached_polymorphic_call_targets): Move up.
(odr_type_d): Move ID down.
(polymorphic_type_binfo_p): Update comment.
(odr_hasher::remove): Likewise;
(get_odr_type): Set anonymous_namespace.
(dump_odr_type): Dump it.
(dump_type_inheritance_graph): Do not ICE when there are no ODR types.
(maybe_record_node): Record node in cached_polymorphic_call_targets.
(record_binfo): Add comment.
(free_polymorphic_call_targets_hash): Do not ICE when cache is not built.
(devirt_node_removal_hook): Do not iCE when cache is freed.
(possible_polymorphic_call_target_p): New predicate.
(update_type_inheritance_graph): New function.
From-SVN: r201917
2013-08-22 09:32:07 +00:00
Tim Shen
e280b6ffe7
regex.h: Replace 8 spaces in indentation with a tab.
...
2013-08-22 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h: Replace 8 spaces in indentation with a tab.
* include/bits/regex_automaton.h: Same.
* include/bits/regex_automaton.tcc: Same.
* include/bits/regex_compiler.h: Same.
* include/bits/regex_compiler.tcc: Same.
* include/bits/regex_constants.h: Same.
* include/bits/regex_executor.h: Same.
* include/bits/regex_executor.tcc: Same.
From-SVN: r201916
2013-08-22 09:01:38 +00:00
Alexander Ivchenko
3f97cb0b27
i386-common.c (OPTION_MASK_ISA_AVX512F_SET): New.
...
* common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512F_SET): New.
(OPTION_MASK_ISA_AVX512CD_SET): Ditto.
(OPTION_MASK_ISA_AVX512PF_SET): Ditto.
(OPTION_MASK_ISA_AVX512ER_SET): Ditto.
(OPTION_MASK_ISA_AVX2_UNSET): Update.
(OPTION_MASK_ISA_AVX512F_UNSET): New.
(OPTION_MASK_ISA_AVX512CD_UNSET): Ditto.
(OPTION_MASK_ISA_AVX512PF_UNSET): Ditto.
(OPTION_MASK_ISA_AVX512ER_UNSET): Ditto.
(ix86_handle_option): Handle OPT_mavx512f, OPT_mavx512cd,
OPT_mavx512pf, OPT_mavx512er cases.
* config/i386/constraints.md (v): New constraint.
(Yi, Yj): Replace SSE_REGS with ALL_SSE_REGS.
* config/i386/cpuid.h (bit_AVX512F, bit_AVX512PF, bit_AVX512ER)
(bit_AVX512CD): New.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect
AVX512F, AVX512ER, AVX512PF, AVX512CD features.
* config/i386/i386-c.c (ix86_target_macros_internal):
Conditionally define __AVX512F__, __AVX512ER__, __AVX512CD__,
__AVX512PF__.
* config/i386/i386-modes.def (VECTOR_MODES (INT, 128))
(VECTOR_MODES (FLOAT, 128), INT_MODE (XI, 64)): New modes.
* config/i386/i386.c (regclass_map, dbx_register_map)
(dbx64_register_map, svr4_dbx_register_map): Add new SSE registers.
(gate_insert_vzeroupper): Disable vzeroupper for TARGET_AVX512F.
(ix86_target_string): Define -mavx512f, -mavx512er, -mavx512cd,
-mavx512pf options.
(ix86_option_override_internal): Define PTA_AVX512F, PTA_AVX512ER,
PTA_AVX512PF, PTA_AVX512CD. Handle -mavx512f, -mavx512er, -mavx512cd,
-mavx512pf options. Fix formatting.
(ix86_conditional_register_usage): Squash EXT_REX_SSE_REGs for 32-bit
targets. Squash EVEX_SSE_REGS if AVX512F is disabled.
(ix86_valid_target_attribute_inner_p): Handle -mavx512f, -mavx512er,
-mavx512cd, -mavx512pf options.
(standard_sse_constant_opcode): Add vpternlogd for 512-bit modes.
(print_reg, ix86_print_operand): Handle 'g' to output 512-bit operands.
(ix86_preferred_output_reload_class): Replace SSE_REGS with
ALL_SSE_REGS.
(ix86_hard_regno_mode_ok): Support 512-bit registers.
(ix86_set_reg_reg_cost): Ditto.
(x86_order_regs_for_local_alloc): Ditto.
(MAX_VECT_LEN): Extend to 64-byte.
(ix86_spill_class): Replace SSE_REGS with ALL_SSE_REGS.
* config/i386/i386.h (TARGET_AVX512F, TARGET_AVX512PF)
(TARGET_AVX512ER, TARGET_AVX512CD): New.
(BIGGEST_ALIGNMENT): Extend to 512-bits.
(FIRST_PSEUDO_REGISTER, FIXED_REGISTERS): Add new registers.
(CALL_USED_REGISTERS, REG_ALLOC_ORDER): Likewise.
(VALID_AVX512F_SCALAR_MODE, VALID_AVX512F_REG_MODE): New.
(SSE_REG_MODE_P): Support new modes.
(FIRST_MMX_REG, FIRST_REX_INT_REG, FIRST_REX_SSE_REG): Add comments.
(FIRST_EXT_REX_SSE_REG, LAST_EXT_REX_SSE_REG): New.
(reg_class, REG_CLASS_NAMES): Add EVEX_SSE_REGS, ALL_SSE_REGS.
(SSE_CLASS_P, MAYBE_SSE_CLASS_P): Replace SSE_REGS with ALL_SSE_REGS.
(REG_CLASS_CONTENTS): Add new registers.
(SSE_REGNO_P, SSE_REGNO, HARD_REGNO_RENAME_OK): Support new registers.
(EXT_REX_SSE_REGNO_P): New.
(HI_REGISTER_NAMES): Add new registers.
* config/i386/i386.md: Define constants for new registers.
(mode): Add new 512-bit modes.
(prefix): Support evex prefix.
(isa): Support avx512f, noavx512f, fma_avx512f.
(ssemodesuffix): Add new 512-bit modes.
(movxi): New.
(*movxi_internal_avx512f): Ditto.
(*movdi_internal): Replace constraint "x" with the new constraint "v".
Support MODE_XI.
(*movsi_internal): Likewise.
(*movdf_internal): Likewise.
(*movsf_internal): Likewise.
(*fop_<mode>_comm_sse): Replace constraint "x" with new constraint "v".
(<code><mode>3): Likewise.
* config/i386/i386.opt (mavx512f, mavx512pf, mavx512er, mavx512cd): New.
* config/i386/mmx.md (*mov<mode>_internal): Replace constraint "x"
with the new constraint "v".
* config/i386/sse.md (*mov<mode>_internal): Support new registers and
modes.
(<sse>_loadu<ssemodesuffix><avxsizesuffix>): Replace constraint "x"
with the new constraint "v".
(<sse2>_loaddqu<avxsizesuffix>): Likewise.
(<sse2>_storedqu<avxsizesuffix>): Likewise.
(*<plusminus_insn><mode>3): Likewise.
(<sse>_vm<plusminus_insn><mode>3): Likewise.
(*mul<mode>3): Likewise.
(<sse>_vmmul<mode>3): Likewise.
(<sse>_div<mode>3): Likewise.
(<sse>_vmdiv<mode>3): Likewise.
(<sse>_sqrt<mode>2): Likewise.
(<sse>_vmsqrt<mode>2): Likewise.
(*<code><mode>3_finite): Likewise.
(*<code><mode>3) <smaxmin>: Likewise.
(<sse>_vm<code><mode>3): Likewise.
(*<code><mode>3) <any_logic>: Likewise.
(*fma_fmadd_<mode>): Likewise.
(*fma_fmsub_<mode>): Likewise.
(*fma_fnmadd_<mode>): Likewise.
(*fma_fnmsub_<mode>): Likewise.
(*fma_fmaddsub_<mode>): Likewise.
(*fma_fmsubadd_<mode>): Likewise.
(*fmai_fmadd_<mode>): Likewise.
(*fmai_fmsub_<mode>): Likewise.
(*fmai_fnmadd_<mode>): Likewise.
(*fmai_fnmsub_<mode>): Likewise.
(sse_cvtsi2ss): Likewise.
(sse_cvtsi2ssq): Likewise.
(sse_cvtss2si): Likewise.
(sse_cvtss2si_2): Likewise.
(sse_cvtss2siq): Likewise.
(sse_cvtss2siq_2): Likewise.
(sse_cvttss2si): Likewise.
(sse_cvtss2siq_2): Likewise.
(float<sseintvecmodelower><mode>2): Likewise.
(sse2_cvtsd2si_2): Likewise.
(sse2_cvtsd2siq_2): Likewise.
(*<plusminus_insn><mode>3): Likewise.
(*<sse2_avx2>_<plusminus_insn><mode>3): Likewise.
(*<sse4_1_avx2>_mul<mode>3): Likewise.
(ashr<mode>3): Likewise.
(<shift_insn><mode>3): Likewise.
(avx2_<code><mode>3): Likewise.
(*avx2_<code><mode>3): Likewise.
(*andnot<mode>3): Likewise.
(*<code><mode>3) <any_logic>: Likewise.
(abs<mode>2): Likewise.
(avx2_permvar<mode>): Likewise.
(avx2_perm<mode>_1): Likewise.
(*avx_vpermilp<mode>): Likewise.
(avx_vpermilvar<mode>3): Likewise.
(avx2_ashrv<mode>): Likewise.
(avx2_<shift_insn>v<mode>): Likewise.
* doc/invoke.texi: Document -mavx512f, -mavx512pf, -mavx512er,
-mavx512cd.
* doc/rtl.texi: Document XImode.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r201915
2013-08-22 06:06:03 +00:00
Tim Shen
1b488e33b6
regex.h: Executor caller.
...
2013-08-22 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h: Executor caller.
* include/bits/regex_executor.h: Fix empty grouping problem.
* include/bits/regex_executor.tcc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/cstring_emptygroup.cc:
New.
From-SVN: r201914
2013-08-22 00:58:28 +00:00
GCC Administrator
9ad30113d6
Daily bump.
...
From-SVN: r201913
2013-08-22 00:16:22 +00:00
Jeff Law
188eb57781
Fix typo.
...
From-SVN: r201908
2013-08-21 13:42:11 -06:00
Jeff Law
b9ebee5df9
tree-flow.h (register_jump_thread): Pass vector of edges instead of each important edge.
...
* tree-flow.h (register_jump_thread): Pass vector of edges
instead of each important edge.
* tree-ssa-threadedge.c (thread_across_edge): Build the jump
thread path into a vector and pass that to register_jump_thread.
* tree-ssa-threadupdate.c (register_jump_thread): Conver the
passed in edge vector to the current 3-edge form.
From-SVN: r201907
2013-08-21 13:27:54 -06:00
Paolo Carlini
98cf9ac919
re PR c++/56130 (__attribute__((deprecated)) does not affect C++ reference)
...
2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
* call.c (build_new_method_call_1): Use INDIRECT_REF_P.
* cp-tree.h (REFERENCE_REF_P): Likewise.
* semantics.c (finish_offsetof): Likewise.
/cp
2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56130
* semantics.c (finish_id_expression): Handle deprecated references.
/testsuite
2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56130
* g++.dg/warn/deprecated-7.C: New.
From-SVN: r201906
2013-08-21 19:06:05 +00:00
Jeff Law
dd5e84232f
Revert:
...
2013-08-20 Alexey Makhalov <makhaloff@gmail.com>
* dce.c (fini_dce): Call df_analyze again just in case
delete_unmarked_insns removed anything.
From-SVN: r201905
2013-08-21 12:35:01 -06:00
Paolo Carlini
9835f8a1f8
pr57451.C: Remove spurious dg-do directive.
...
2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/tree-prof/pr57451.C: Remove spurious dg-do directive.
From-SVN: r201902
2013-08-21 15:28:09 +00:00
Joern Rennecke
445dc8dfd8
reload.h (struct reg_equivs): Rename to ..
...
* reload.h (struct reg_equivs): Rename to ..
(struct reg_equivs_s): .. this.
From-SVN: r201901
2013-08-21 15:38:35 +01:00
Martin Liska
e0df53dd42
* ipa.c (ipa_profile_read_summary): Fix buffer overflow.
...
From-SVN: r201900
2013-08-21 14:27:10 +00:00
Rainer Orth
e7d1d3ebe7
Don't nest comment in gcc/config/sol2.h.
...
* config/sol2-10.h (TARGET_LIBC_HAS_FUNCTION): Don't nest
comment.
From-SVN: r201899
2013-08-21 14:25:44 +00:00
Jeff Law
5562e26eaf
tree-vrp.c (simplify_stmt_for_jump_threading): Try to simplify assignments too.
...
* tree-vrp.c (simplify_stmt_for_jump_threading): Try to
simplify assignments too. If the RHS collapses to a singleton
range, then return the value for the range.
* gcc.dg/tree-ssa/ssa-vrp-thread-1.c: New test.
From-SVN: r201898
2013-08-21 06:36:36 -06:00
Paolo Carlini
8724cfdd3b
re PR c++/56134 (ICE: alias attribute on c++ static class member;)
...
2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56134
* g++.dg/ext/attr-alias-3.C: New.
From-SVN: r201897
2013-08-21 11:20:15 +00:00