gcc.git
10 years agotrans-array.c (gfc_conv_section_startstride): Move &loop->pre access to the callers.
Mikael Morin [Fri, 23 Aug 2013 16:06:44 +0000 (16:06 +0000)]
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

10 years agoipa-utils.h (method_class_type): Declare.
Jan Hubicka [Fri, 23 Aug 2013 15:55:22 +0000 (17:55 +0200)]
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

10 years agodevirt-13.C: New testcase.
Jan Hubicka [Fri, 23 Aug 2013 15:29:04 +0000 (17:29 +0200)]
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

10 years agore PR rtl-optimization/58220 (Many new failures for SH after rev. 201833)
Kaz Kojima [Fri, 23 Aug 2013 14:31:06 +0000 (14:31 +0000)]
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

10 years agopretty-print.h (pp_newline_and_flush): Declare.
Gabriel Dos Reis [Fri, 23 Aug 2013 10:46:49 +0000 (10:46 +0000)]
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

10 years agore PR target/58218 (-mcmodel=medium cause assembler warning "ignoring incorrect secti...
Jakub Jelinek [Fri, 23 Aug 2013 09:57:44 +0000 (11:57 +0200)]
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

10 years agopredicates.md (ext_sse_reg_operand): New.
Kirill Yukhin [Fri, 23 Aug 2013 07:33:00 +0000 (07:33 +0000)]
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

10 years agore PR tree-optimization/58209 (ICE in extract_range_from_binary_expr, at tree-vrp...
Jakub Jelinek [Fri, 23 Aug 2013 07:30:40 +0000 (09:30 +0200)]
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

10 years agolibgo: Update libtool.m4 from upstream to recognize powerpcle.
Ian Lance Taylor [Fri, 23 Aug 2013 01:08:25 +0000 (01:08 +0000)]
libgo: Update libtool.m4 from upstream to recognize powerpcle.

From-SVN: r201933

10 years agoDaily bump.
GCC Administrator [Fri, 23 Aug 2013 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201932

10 years agopr57744.c: Declare abort.
Michael Meissner [Thu, 22 Aug 2013 18:16:59 +0000 (18:16 +0000)]
pr57744.c: Declare abort.

2013-08-22  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/pr57744.c: Declare abort.

From-SVN: r201929

10 years agoconfigure.ac: Add backslashes missing from the last change.
Paolo Carlini [Thu, 22 Aug 2013 16:52:01 +0000 (16:52 +0000)]
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

10 years agore PR c++/56380 (Const/reference mutable members are not always rejected in class...
Paolo Carlini [Thu, 22 Aug 2013 16:30:08 +0000 (16:30 +0000)]
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

10 years agoipa.c (function_and_variable_visibility): First remember function was global and...
Jan Hubicka [Thu, 22 Aug 2013 15:56:01 +0000 (15:56 +0000)]
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

10 years agoconfigure.ac: Add aarch64 to list of arches which use "nop" in debug_line test.
Julian Brown [Thu, 22 Aug 2013 15:36:53 +0000 (15:36 +0000)]
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

10 years agolinux.h (TARGET_LIBC_HAS_FUNCTION): Define as gnu_libc_has_function.
Andreas Krebbel [Thu, 22 Aug 2013 15:28:15 +0000 (15:28 +0000)]
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

10 years ago* timevar.c (validate_phases): Add cast.
Jan Hubicka [Thu, 22 Aug 2013 15:25:53 +0000 (15:25 +0000)]
* timevar.c (validate_phases): Add cast.

From-SVN: r201921

10 years agotimevar.c (validate_phases): Use size_t for memory.
Jan Hubicka [Thu, 22 Aug 2013 14:58:17 +0000 (14:58 +0000)]
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

10 years agore PR fortran/58185 ([OOP] ICE when selector in SELECT TYPE is non-polymorphic)
Janus Weil [Thu, 22 Aug 2013 11:49:46 +0000 (13:49 +0200)]
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

10 years agopretty-print.h (output_buffer::output_buffer): Declare.
Gabriel Dos Reis [Thu, 22 Aug 2013 10:14:46 +0000 (10:14 +0000)]
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

10 years ago* cgraphunit.c (analyze_functions) Use update_type_inheritance_graph.
Jan Hubicka [Thu, 22 Aug 2013 09:32:07 +0000 (11:32 +0200)]
* 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

10 years agoregex.h: Replace 8 spaces in indentation with a tab.
Tim Shen [Thu, 22 Aug 2013 09:01:38 +0000 (09:01 +0000)]
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

10 years agoi386-common.c (OPTION_MASK_ISA_AVX512F_SET): New.
Alexander Ivchenko [Thu, 22 Aug 2013 06:06:03 +0000 (06:06 +0000)]
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

10 years agoregex.h: Executor caller.
Tim Shen [Thu, 22 Aug 2013 00:58:28 +0000 (00:58 +0000)]
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

10 years agoDaily bump.
GCC Administrator [Thu, 22 Aug 2013 00:16:22 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201913

10 years agoFix typo.
Jeff Law [Wed, 21 Aug 2013 19:42:11 +0000 (13:42 -0600)]
Fix typo.

From-SVN: r201908

10 years agotree-flow.h (register_jump_thread): Pass vector of edges instead of each important...
Jeff Law [Wed, 21 Aug 2013 19:27:54 +0000 (13:27 -0600)]
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

10 years agore PR c++/56130 (__attribute__((deprecated)) does not affect C++ reference)
Paolo Carlini [Wed, 21 Aug 2013 19:06:05 +0000 (19:06 +0000)]
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

10 years agoRevert:
Jeff Law [Wed, 21 Aug 2013 18:35:01 +0000 (12:35 -0600)]
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

10 years agopr57451.C: Remove spurious dg-do directive.
Paolo Carlini [Wed, 21 Aug 2013 15:28:09 +0000 (15:28 +0000)]
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

10 years agoreload.h (struct reg_equivs): Rename to ..
Joern Rennecke [Wed, 21 Aug 2013 14:38:35 +0000 (14:38 +0000)]
reload.h (struct reg_equivs): Rename to ..

        * reload.h (struct reg_equivs): Rename to ..
        (struct reg_equivs_s): .. this.

From-SVN: r201901

10 years ago* ipa.c (ipa_profile_read_summary): Fix buffer overflow.
Martin Liska [Wed, 21 Aug 2013 14:27:10 +0000 (14:27 +0000)]
* ipa.c (ipa_profile_read_summary): Fix buffer overflow.

From-SVN: r201900

10 years agoDon't nest comment in gcc/config/sol2.h.
Rainer Orth [Wed, 21 Aug 2013 14:25:44 +0000 (14:25 +0000)]
Don't nest comment in gcc/config/sol2.h.

* config/sol2-10.h (TARGET_LIBC_HAS_FUNCTION): Don't nest
comment.

From-SVN: r201899

10 years agotree-vrp.c (simplify_stmt_for_jump_threading): Try to simplify assignments too.
Jeff Law [Wed, 21 Aug 2013 12:36:36 +0000 (06:36 -0600)]
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

10 years agore PR c++/56134 (ICE: alias attribute on c++ static class member;)
Paolo Carlini [Wed, 21 Aug 2013 11:20:15 +0000 (11:20 +0000)]
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

10 years agosse.md (V16): Rename to...
Kirill Yukhin [Wed, 21 Aug 2013 08:34:56 +0000 (08:34 +0000)]
sse.md (V16): Rename to...

        * config/i386/sse.md (V16): Rename to...
        (VMOVE): this.
        (mov<mode>): Update iterator name.
        (*mov<mode>_internal): Ditto.
        (push<mode>1): Ditto.
        (movmisalign<mode>): Ditto.

From-SVN: r201895

10 years agoDaily bump.
GCC Administrator [Wed, 21 Aug 2013 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201894

10 years agore PR bootstrap/58186 (LTO profiledbootstrap fails in stage feedback for fortran...
Jan Hubicka [Tue, 20 Aug 2013 21:41:36 +0000 (23:41 +0200)]
re PR bootstrap/58186 (LTO profiledbootstrap fails in stage feedback for fortran/frontend-passes.c with "edge ... has no corresponding call_stmt")

PR bootstrap/58186
* cgraph.c (cgraph_add_edge_to_call_site_hash): Overwrite hash
entry for direct edges.
(cgraph_turn_edge_to_speculative): Fix setting of can_throw_external.

From-SVN: r201891

10 years agoFix logging to not use /tmp or the current directory...
Caroline Tice [Tue, 20 Aug 2013 20:43:16 +0000 (13:43 -0700)]
Fix logging to not use /tmp or the current directory...

Fix logging to not use /tmp or the current directory; get
the location for writing log files from an environment
variable; use secure getenv whenever possible.

From-SVN: r201890

10 years agoMAINTAINERS: Add myself as RTL optimizers reviewer.
Steven Bosscher [Tue, 20 Aug 2013 19:23:24 +0000 (19:23 +0000)]
MAINTAINERS: Add myself as RTL optimizers reviewer.

* MAINTAINERS: Add myself as RTL optimizers reviewer.

From-SVN: r201889

10 years agore PR libstdc++/53477 (pretty printer fails with: Python Exception <type 'exceptions...
Phil Muldoon [Tue, 20 Aug 2013 19:20:42 +0000 (19:20 +0000)]
re PR libstdc++/53477 (pretty printer fails with: Python Exception <type 'exceptions.IndexError'> list index out of range)

2013-08-20  Phil Muldoon  <pmuldoon@redhat.com>

PR libstdc++/53477
http://sourceware.org/bugzilla/show_bug.cgi?id=15195

* python/libstdcxx/v6/printers.py (Printer.__call__): If a value
is a reference, fetch referenced value.
(RxPrinter.invoke): Ditto.
* testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add -O0
flag. Add referenced value tests.

From-SVN: r201888

10 years agoRevert my last two changes, r201865 and r201864
David Malcolm [Tue, 20 Aug 2013 15:51:18 +0000 (15:51 +0000)]
Revert my last two changes, r201865 and r201864

2013-08-20  David Malcolm  <dmalcolm@redhat.com>

Revert my last two changes, r201865 and r201864:

Revert r201865:
2013-08-20  David Malcolm  <dmalcolm@redhat.com>

Make opt_pass and gcc::pass_manager be GC-managed, so that pass
instances can own GC refs.

* Makefile.in (GTFILES): Add pass_manager.h and tree-pass.h.
* context.c (gcc::context::gt_ggc_mx): Traverse passes_.
(gcc::context::gt_pch_nx): Likewise.
(gcc::context::gt_pch_nx):  Likewise.
* ggc.h (gt_ggc_mx <T>): New.
(gt_pch_nx_with_op <T>): New.
(gt_pch_nx <T>): New.
* passes.c (opt_pass::gt_ggc_mx): New.
(opt_pass::gt_pch_nx): New.
(opt_pass::gt_pch_nx_with_op): New.
(pass_manager::gt_ggc_mx): New.
(pass_manager::gt_pch_nx): New.
(pass_manager::gt_pch_nx_with_op): New.
(pass_manager::operator new): Use
ggc_internal_cleared_alloc_stat rather than xcalloc.
* pass_manager.h (class pass_manager): Add GTY((user)) marking.
(pass_manager::gt_ggc_mx): New.
(pass_manager::gt_pch_nx): New.
(pass_manager::gt_pch_nx_with_op): New.
* tree-pass.h (class opt_pass): Add GTY((user)) marking.
(opt_pass::operator new): New.
(opt_pass::gt_ggc_mx): New.
(opt_pass::gt_pch_nx): New.
(opt_pass::gt_pch_nx_with_op): New.

Revert r201864:
2013-08-20  David Malcolm  <dmalcolm@redhat.com>

* Makefile.in (GTFILES): Add context.h.
* context.c (gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
* context.h (gcc::context): Add GTY((user)) marking.
(gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
(g): Add GTY marking.
(gt_ggc_mx (gcc::context *)): New.
(gt_pch_nx (gcc::context *)): New.
(gt_pch_nx (gcc::context *ctxt, gt_pointer_operator op,
void *cookie)): New.
* gengtype.c (open_base_files) <ifiles>: Add context.h.

From-SVN: r201887

10 years agodce.c (fini_dce): Call df_analyze again just in case delete_unmarked_insns removed...
Alexey Makhalov [Tue, 20 Aug 2013 15:14:49 +0000 (15:14 +0000)]
dce.c (fini_dce): Call df_analyze again just in case delete_unmarked_insns removed anything.

       * dce.c (fini_dce): Call df_analyze again just in case
       delete_unmarked_insns removed anything.

From-SVN: r201886

10 years agore PR fortran/53655 ([F03] "default initializer" warnings)
Janus Weil [Tue, 20 Aug 2013 14:16:26 +0000 (16:16 +0200)]
re PR fortran/53655 ([F03] "default initializer" warnings)

2013-08-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53655
* trans-decl.c (generate_local_decl): Check if type has any components.

2013-08-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53655
* gfortran.dg/intent_out_8.f90: New.

From-SVN: r201884

10 years agore PR rtl-optimization/57451 (Incorrect debug ranges emitted for -freorder-blocks...
Teresa Johnson [Tue, 20 Aug 2013 13:29:53 +0000 (13:29 +0000)]
re PR rtl-optimization/57451 (Incorrect debug ranges emitted for -freorder-blocks-and-partition -g)

2013-08-20  Teresa Johnson  <tejohnson@google.com>

PR rtl-optimizations/57451
* final.c (reemit_insn_block_notes): Prevent lexical blocks
from crossing split section boundaries.

* testsuite/g++.dg/tree-prof/pr57451.C: New test.

From-SVN: r201883

10 years agore PR c++/58119 (Invalid ambiguous default type conversion with only a single invalid...
Jason Merrill [Tue, 20 Aug 2013 12:58:47 +0000 (08:58 -0400)]
re PR c++/58119 (Invalid ambiguous default type conversion with only a single invalid conversion listed.)

PR c++/58119
* cvt.c (build_expr_type_conversion): Don't complain about a
template that can't match the desired type category.

From-SVN: r201880

10 years agolinux-elf.h (MULTILIB_DEFAULTS): Remove definition.
Matthew Gretton-Dann [Tue, 20 Aug 2013 12:18:36 +0000 (12:18 +0000)]
linux-elf.h (MULTILIB_DEFAULTS): Remove definition.

2013-08-20  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

* config/arm/linux-elf.h (MULTILIB_DEFAULTS): Remove definition.
* config/arm/t-linux-eabi (MULTILIB_OPTIONS): Document association
with MULTLIB_DEFAULTS.

From-SVN: r201879

10 years agotarget.def (narrow_volatile_bitfield): Note that the default value is false, not...
Nick Clifton [Tue, 20 Aug 2013 12:17:16 +0000 (12:17 +0000)]
target.def (narrow_volatile_bitfield): Note that the default value is false, not !TARGET_STRICT_ALIGN.

* target.def (narrow_volatile_bitfield): Note that the default
value is false, not !TARGET_STRICT_ALIGN.
* doc/tm.texi: Regenerate.

From-SVN: r201878

10 years ago2013-08-20 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 20 Aug 2013 11:53:34 +0000 (11:53 +0000)]
2013-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix ChangeLog.

From-SVN: r201875

10 years agore PR c++/58190 (FAIL: g++.dg/pr57878.C (test for excess errors) on x86_64-apple...
Paolo Carlini [Tue, 20 Aug 2013 11:39:15 +0000 (11:39 +0000)]
re PR c++/58190 (FAIL: g++.dg/pr57878.C (test for excess errors) on x86_64-apple-darwin10)

2013-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58190
* g++.dg/pr57878.C: Use __SIZE_TYPE__.

From-SVN: r201874

10 years agoerror.c (pp_ggc_formatted_text): New.
Gabriel Dos Reis [Tue, 20 Aug 2013 11:23:30 +0000 (11:23 +0000)]
error.c (pp_ggc_formatted_text): New.

* error.c (pp_ggc_formatted_text): New.
(type_as_string): Use it in lieu of pp_formatted_text.
(type_as_string_translate): Likewise.
(expr_as_string): Likewise.
(decl_as_string): Likewise.
(decl_as_string_translate): Likewise.
(lang_decl_name): Likewise.
(decl_to_string): Likewise.
(expr_to_string): Likewise.
(fndecl_to_string): Likewise.
(parm_to_string): Likewise.
(type_to_string): Likewise.
(args_to_string): Likewise.
(subst_to_string): Likewise.

From-SVN: r201873

10 years agoregex_constants.h: Add underlying `unsigned int` for enum syntax_option_type.
Tim Shen [Tue, 20 Aug 2013 10:36:42 +0000 (10:36 +0000)]
regex_constants.h: Add underlying `unsigned int` for enum syntax_option_type.

2013-08-20  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_constants.h: Add underlying `unsigned int` for
  enum syntax_option_type.

From-SVN: r201872

10 years agoFix LIB_SPEC for systems without libpthread.
Pavel Chupin [Tue, 20 Aug 2013 08:31:40 +0000 (08:31 +0000)]
Fix LIB_SPEC for systems without libpthread.

* config/gnu-user.h: Introduce GNU_USER_TARGET_NO_PTHREADS_LIB_SPEC.
* config/arm/linux-eabi.h: Use GNU_USER_TARGET_NO_PTHREADS_LIB_SPEC
for Android.
* config/i386/linux-common.h: Likewise.
* config/mips/linux-common.h: Likewise.

From-SVN: r201871

10 years agotree-ssa-ccp.c (get_default_value): Remove redundant condition checks.
Zhouyi Zhou [Tue, 20 Aug 2013 06:25:10 +0000 (06:25 +0000)]
tree-ssa-ccp.c (get_default_value): Remove redundant condition checks.

       * tree-ssa-ccp.c (get_default_value): Remove redundant condition
       checks.

From-SVN: r201870

10 years agofloatformat.h (floatformat_ibm_long_double): Delete.
Alan Modra [Tue, 20 Aug 2013 05:31:41 +0000 (15:01 +0930)]
floatformat.h (floatformat_ibm_long_double): Delete.

include/
* floatformat.h (floatformat_ibm_long_double): Delete.
(floatformat_ibm_long_double_big): Declare.
(floatformat_ibm_long_double_little): Declare.
libiberty/
* floatformat.c (floatformat_ibm_long_double): Rename to..
(floatformat_ibm_long_double_big): ..this.
(floatformat_ibm_long_double_little): New.

From-SVN: r201869

10 years agoMAINTAINERS: Update name, email.
Benjamin De Kosnik [Tue, 20 Aug 2013 03:10:19 +0000 (03:10 +0000)]
MAINTAINERS: Update name, email.

2013-08-19  Benjamin De Kosnik  <bkoz@gnu.org>

* MAINTAINERS: Update name, email.

From-SVN: r201868

10 years agore PR c/57490 (ICE on c-c++-common/cilk-plus/AN/an-if.c)
Balaji V. Iyer [Tue, 20 Aug 2013 01:10:56 +0000 (01:10 +0000)]
re PR c/57490 (ICE on c-c++-common/cilk-plus/AN/an-if.c)

Fix for PR c/57490.

gcc/c/ChangeLog
+2013-08-19  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57490
+       * c-array-notation.c (fix_conditional_array_notations_1): Added a
+       check for truth values.
+       (expand_array_notation_exprs): Added truth values case.  Removed an
+       unwanted else.  Added for-loop to walk through subtrees in default
+       case.
+

gcc/cp/ChangeLog
+2013-08-19  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57490
+       * cp-array-notation.c (cp_expand_cond_array_notations): Added a
+       check for truth values.
+       (expand_array_notation_exprs): Added truth values case.  Removed an
+       unwanted else.  Added for-loop to walk through subtrees in default
+       case.
+       * call.c (build_cxx_call): Inherited the type of the array notation for
+       certain built-in array notation functions.
+

gcc/testsuite/ChangeLog
+2013-08-19  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57490
+       * c-c++-common/cilk-plus/AN/pr57490.c: New test.
+

From-SVN: r201867

10 years agoMake opt_pass and gcc::pass_manager be GC-managed
David Malcolm [Tue, 20 Aug 2013 00:54:49 +0000 (00:54 +0000)]
Make opt_pass and gcc::pass_manager be GC-managed

2013-08-20  David Malcolm  <dmalcolm@redhat.com>

Make opt_pass and gcc::pass_manager be GC-managed, so that pass
instances can own GC refs.

* Makefile.in (GTFILES): Add pass_manager.h and tree-pass.h.
* context.c (gcc::context::gt_ggc_mx): Traverse passes_.
(gcc::context::gt_pch_nx): Likewise.
(gcc::context::gt_pch_nx):  Likewise.
* ggc.h (gt_ggc_mx <T>): New.
(gt_pch_nx_with_op <T>): New.
(gt_pch_nx <T>): New.
* passes.c (opt_pass::gt_ggc_mx): New.
(opt_pass::gt_pch_nx): New.
(opt_pass::gt_pch_nx_with_op): New.
(pass_manager::gt_ggc_mx): New.
(pass_manager::gt_pch_nx): New.
(pass_manager::gt_pch_nx_with_op): New.
(pass_manager::operator new): Use
ggc_internal_cleared_alloc_stat rather than xcalloc.
* pass_manager.h (class pass_manager): Add GTY((user)) marking.
(pass_manager::gt_ggc_mx): New.
(pass_manager::gt_pch_nx): New.
(pass_manager::gt_pch_nx_with_op): New.
* tree-pass.h (class opt_pass): Add GTY((user)) marking.
(opt_pass::operator new): New.
(opt_pass::gt_ggc_mx): New.
(opt_pass::gt_pch_nx): New.
(opt_pass::gt_pch_nx_with_op): New.

From-SVN: r201865

10 years agoMake gcc::context be GC-managed
David Malcolm [Tue, 20 Aug 2013 00:48:14 +0000 (00:48 +0000)]
Make gcc::context be GC-managed

* Makefile.in (GTFILES): Add context.h.
* context.c (gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
* context.h (gcc::context): Add GTY((user)) marking.
(gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
(g): Add GTY marking.
(gt_ggc_mx (gcc::context *)): New.
(gt_pch_nx (gcc::context *)): New.
(gt_pch_nx (gcc::context *ctxt, gt_pointer_operator op,
void *cookie)): New.
* gengtype.c (open_base_files) <ifiles>: Add context.h.

From-SVN: r201864

10 years agoDaily bump.
GCC Administrator [Tue, 20 Aug 2013 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201863

10 years agore PR target/57865 (Broken _save64gpr and _rest64gpr usage)
Alan Modra [Mon, 19 Aug 2013 23:39:05 +0000 (09:09 +0930)]
re PR target/57865 (Broken _save64gpr and _rest64gpr usage)

PR target/57865
* config/rs6000/rs6000.c (rs6000_emit_prologue): Correct ool_adjust.
(rs6000_emit_epilogue): Likewise.

From-SVN: r201860

10 years agovalue-prof.c (gimple_ic): Fix the bug of adding EH edge.
Dehao Chen [Mon, 19 Aug 2013 22:14:00 +0000 (22:14 +0000)]
value-prof.c (gimple_ic): Fix the bug of adding EH edge.

2013-08-19  Dehao Chen (dehao@google.com)

        * value-prof.c (gimple_ic): Fix the bug of adding EH edge.

From-SVN: r201859

10 years agodwarf2.def (DW_AT_GNU_discriminator): New attribute.
Dehao Chen [Mon, 19 Aug 2013 20:11:09 +0000 (20:11 +0000)]
dwarf2.def (DW_AT_GNU_discriminator): New attribute.

2013-08-19  Dehao Chen  <dehao@google.com>

* dwarf2.def (DW_AT_GNU_discriminator): New attribute.

From-SVN: r201855

10 years agobuiltins.def (BUILT_IN_FABSD32): New DFP ABS builtin.
Peter Bergner [Mon, 19 Aug 2013 17:49:33 +0000 (12:49 -0500)]
builtins.def (BUILT_IN_FABSD32): New DFP ABS builtin.

gcc/
* builtins.def (BUILT_IN_FABSD32): New DFP ABS builtin.
(BUILT_IN_FABSD64): Likewise.
(BUILT_IN_FABSD128): Likewise.
* builtins.c (expand_builtin): Add support for new DFP ABS builtins.
(fold_builtin_1): Likewise.
* config/rs6000/dfp.md (*negtd2_fpr): Handle non-overlapping destination
and source operands.
(*abstd2_fpr): Likewise.
(*nabstd2_fpr): Likewise.

gcc/testsuite/
* gcc.target/powerpc/dfp-dd-2.c: New test.
* gcc.target/powerpc/dfp-td-2.c: Likewise.
* gcc.target/powerpc/dfp-td-3.c: Likewise.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r201849

10 years agomulsize-1.c: Check for SLL as well as SUBU.
Richard Sandiford [Mon, 19 Aug 2013 17:35:57 +0000 (17:35 +0000)]
mulsize-1.c: Check for SLL as well as SUBU.

gcc/testsuite/
* gcc.target/mips/mulsize-1.c: Check for SLL as well as SUBU.
* gcc.target/mips/mulsize-2.c: Check for ADDU rather than SUBU.
Check for SLL too.

From-SVN: r201848

10 years agomips.c (mips_adjust_insn_length): Add checks for JUMP_P and INSN_P.
Richard Sandiford [Mon, 19 Aug 2013 17:29:59 +0000 (17:29 +0000)]
mips.c (mips_adjust_insn_length): Add checks for JUMP_P and INSN_P.

gcc/
* config/mips/mips.c (mips_adjust_insn_length): Add checks for
JUMP_P and INSN_P.

From-SVN: r201847

10 years agoinvoke.texi (-fcilkplus): Clarify that implementation is incomplete.
Aldy Hernandez [Mon, 19 Aug 2013 17:19:38 +0000 (17:19 +0000)]
invoke.texi (-fcilkplus): Clarify that implementation is incomplete.

* doc/invoke.texi (-fcilkplus): Clarify that implementation is
incomplete.

From-SVN: r201846

10 years ago* gcc.dg/tree-ssa/vrp87.c [avr-*-*] (dg-additional-options): New.
Joern Rennecke [Mon, 19 Aug 2013 17:01:23 +0000 (17:01 +0000)]
* gcc.dg/tree-ssa/vrp87.c [avr-*-*] (dg-additional-options): New.

From-SVN: r201845

10 years agore PR testsuite/52641 (Test cases fail for 16-bit int targets)
Joern Rennecke [Mon, 19 Aug 2013 15:16:45 +0000 (15:16 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)

        PR testsuite/52641
        * gcc.dg/tree-ssa/pr31261.c [int16]: Change expected unsigned type.
        * gcc.dg/tree-ssa/ssa-pre-21.c [! size32plus]: Mark as xfail.
        * gcc.dg/tree-ssa/vector-4.c (SItype): New typedef.
        (v4si): Use it.
        * gcc.dg/tree-ssa/ssa-pre-30.c: Test requires int32.
        * gcc.dg/tree-ssa/vrp58.c: Adjust scan expression for int16.

From-SVN: r201844

10 years agovrp55.c: Use keeps_null_pointer_checks to determine correct test response.
Joern Rennecke [Mon, 19 Aug 2013 15:13:33 +0000 (15:13 +0000)]
vrp55.c: Use keeps_null_pointer_checks to determine correct test response.

        * gcc.dg/tree-ssa/vrp55.c: Use keeps_null_pointer_checks to determine
        correct test response.

From-SVN: r201843

10 years agossa-dom-thread-4.c [avr-*-*]: Expect 6 times "Threaded".
Joern Rennecke [Mon, 19 Aug 2013 15:11:55 +0000 (15:11 +0000)]
ssa-dom-thread-4.c [avr-*-*]: Expect 6 times "Threaded".

        * gcc.dg/tree-ssa/ssa-dom-thread-4.c [avr-*-*]: Expect 6 times
        "Threaded".

From-SVN: r201842

10 years agoparser.c (cp_parser_lambda_introducer, [...]): Use cp_parser_lookup_name_simple.
Paolo Carlini [Mon, 19 Aug 2013 14:23:37 +0000 (14:23 +0000)]
parser.c (cp_parser_lambda_introducer, [...]): Use cp_parser_lookup_name_simple.

2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_lambda_introducer, cp_parser_decltype_expr):
Use cp_parser_lookup_name_simple.

2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* name-lookup.h (pop_bindings_and_leave_scope): Declare.
* name-lookup.c (pop_bindings_and_leave_scope): Define.
* parser.c (cp_parser_lambda_declarator_opt,
cp_parser_direct_declarator, cp_parser_cache_defarg): Use it.

From-SVN: r201839

10 years agotarget.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
Alexander Ivchenko [Mon, 19 Aug 2013 12:21:26 +0000 (12:21 +0000)]
target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.

* target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
* builtins.c (default_libc_has_function): New.
(gnu_libc_has_function): Ditto.
(no_c99_libc_has_function): Ditto.
(expand_builtin_cexpi): Using new target hook TARGET_LIBC_HAS_FUNCTION
instead of TARGET_HAS_SINCOS and TARGET_C99_FUNCTIONS.
(fold_builtin_sincos): Likewise.
(fold_builtin_cexp): Likewise.
* builtins.def (DEF_C94_BUILTIN): Likewise.
(DEF_C99_BUILTIN): Likewise.
(DEF_C99_C90RES_BUILTIN): Likewise.
(DEF_C99_COMPL_BUILTIN): New define. Change all complex c99 builtin
definitions to using this define.
* config/darwin-protos.h (darwin_libc_has_function): New.
* config/darwin.c: (darwin_libc_has_function: Ditto.
* config/alpha/linux.h: Remove TARGET_C99_FUNCTIONS and
TARGET_HAS_SINCOS. Redefine TARGET_LIBC_HAS_FUNCTION.
* config/darwin.h: Ditto.
* config/elfos.h: Ditto.
* config/freebsd.h: Ditto.
* config/i386/cygming.h: Ditto.
* config/i386/djgpp.h: Ditto.
* config/i386/i386-interix.h: Ditto.
* config/microblaze/microblaze.h: Ditto.
* config/mmix/mmix.h: Ditto.
* config/gnu-user.h: Ditto.
* config/ia64/hpux.h: Ditto.
* config/pa/pa-hpux.h: Ditto.
* config/pdp11/pdp11.h: Ditto.
* config/picochip/picochip.h: Ditto.
* config/linux.h: Ditto.
* config/netbsd.h: Ditto.
* config/openbsd.h: Ditto.
* config/rs6000/aix43.h: Ditto.
* config/rs6000/aix51.h: Ditto.
* config/rs6000/aix52.h: Ditto.
* config/rs6000/aix53.h: Ditto.
* config/rs6000/aix61.h: Ditto.
* config/rs6000/darwin.h: Ditto.
* config/rs6000/linux.h: Ditto.
* config/rs6000/linux64.h: Ditto.
* config/s390/tpf.h: Ditto.
* config/sol2-10.h: Ditto.
* config/sol2.h: Ditto.
* config/vms/vms.h: Ditto.
* config/vxworks.h: Ditto.
* config/linux-android.c (linux_android_libc_has_function):
New linux-specific implementation of TARGET_LIBC_HAS_FUNCTION.
* config/linux-protos.h (linux_android_libc_has_function):
New declaration.
* config/i386/i386.c (ix86_libc_has_function): New.
* config/i386/i386-protos.h
(ix86_libc_has_function): New declaration.
* config/i386/i386.md
("isinfxf2"): Change condition for TARGET_LIBC_HAS_FUNCTION.
("isinf<mode>2): Likewise.
* convert.c (convert_to_integer): Using new target hook
TARGET_LIBC_HAS_FUNCTION istead of TARGET_HAS_SINCOS and
TARGET_C99_FUNCTIONS.
* fortran/f95-lang.c (gfc_init_builtin_functions): Ditto.
* tree-ssa-math-opts.c (execute_cse_sincos): Ditto.
* coretypes.h (function_class): New enum for different
classes of functions.
* defaults.h: Remove TARGET_C99_FUNCTIONS and TARGET_HAS_SINCOS.
* doc/tm.texi.in (TARGET_C99_FUNCTIONS): Remove documentation.
(TARGET_HAS_SINCOS): Likewise.
(TARGET_LIBC_HAS_FUNCTION): New.
* doc/tm.texi: Regenerated.
* targhooks.h (default_libc_has_function): New declaration.
(no_c99_libc_has_function): Ditto.
(gnu_libc_has_function): Ditto.
* system.h: Add the poisoning of TARGET_C99_FUNCTIONS
and TARGET_HAS_SINCOS.

From-SVN: r201838

10 years ago* gcc.target/avr/progmem-error-1.cpp: Update linenumber of error.
Joern Rennecke [Mon, 19 Aug 2013 11:59:39 +0000 (11:59 +0000)]
* gcc.target/avr/progmem-error-1.cpp: Update linenumber of error.

From-SVN: r201837

10 years agoMakeifle-in (ipa-devirt.o): New.
Jan Hubicka [Mon, 19 Aug 2013 10:14:06 +0000 (12:14 +0200)]
Makeifle-in (ipa-devirt.o): New.

* Makeifle-in (ipa-devirt.o): New.
(GTFILES): Add ipa-utils.h and ipa-devirt.c
* cgraphunit.c (decide_is_symbol_needed): Do not care about virtuals.
(analyze_functions): Look into possible targets of polymorphic call.
* dumpfile.c (dump_files): Add type-inheritance dump.
* dumpfile.h (TDI_inheritance): New.
* ipa-devirt.c: New file.
* ipa-utils.h (odr_type_d): Forward declare.
(odr_type): New type.
(build_type_inheritance_graph): Declare.
(possible_polymorphic_call_targets): Declare and introduce inline
variant when only edge is pased.
(dump_possible_polymorphic_call_targets): Likewise.
* timevar.def (TV_IPA_INHERITANCE, TV_IPA_VIRTUAL_CALL): New.
* tree.c (type_in_anonymous_namespace_p): Break out from ...
(types_same_for_odr): ... here.
* tree.h (type_in_anonymous_namespace_p): Declare.

* g++.dg/ipa/type-inheritance-1.C: New testcase.

From-SVN: r201836

10 years agore PR fortran/46271 ([F03] OpenMP default(none) and procedure pointers)
Janus Weil [Mon, 19 Aug 2013 09:03:20 +0000 (11:03 +0200)]
re PR fortran/46271 ([F03] OpenMP default(none) and procedure pointers)

2013-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46271
* openmp.c (resolve_omp_clauses): Bugfix for procedure pointers.

2013-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46271
* gfortran.dg/gomp/proc_ptr_1.f90: New.

From-SVN: r201835

10 years agoDaily bump.
GCC Administrator [Mon, 19 Aug 2013 00:16:48 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201832

10 years agore PR gcov-profile/58127 (37 failures in gcc.dg/tree-prof/ for x86_64-apple-darwin10)
Iain Sandoe [Sun, 18 Aug 2013 15:50:17 +0000 (15:50 +0000)]
re PR gcov-profile/58127 (37 failures in gcc.dg/tree-prof/ for x86_64-apple-darwin10)

libgcc:

PR gcov-profile/58127
* libgcov.c (__gcov_indirect_call_callee): Don't make this a
__thread var for emulated TLS.
(__gcov_indirect_call_counters): Likewise.

From-SVN: r201829

10 years agore PR tree-optimization/58006 (ICE compiling VegaStrike with -ffast-math -ftree-paral...
Jakub Jelinek [Sun, 18 Aug 2013 15:23:24 +0000 (17:23 +0200)]
re PR tree-optimization/58006 (ICE compiling VegaStrike with -ffast-math -ftree-parallelize-loops=2)

PR tree-optimization/58006
* tree-parloops.c (take_address_of): Don't ICE if get_name
returns NULL.
(eliminate_local_variables_stmt): Remove clobber stmts.

* g++.dg/opt/pr58006.C: New test.

From-SVN: r201827

10 years agocgraphunit.c (handle_alias_pairs): Reset the alias flag after the error message is...
Eric Botcazou [Sun, 18 Aug 2013 14:58:58 +0000 (14:58 +0000)]
cgraphunit.c (handle_alias_pairs): Reset the alias flag after the error message is issued for an alias to...

* cgraphunit.c (handle_alias_pairs): Reset the alias flag after the
error message is issued for an alias to undefined symbol.

From-SVN: r201826

10 years agoregex_automaton.h: _S_opcode_backref.
Tim Shen [Sun, 18 Aug 2013 13:55:48 +0000 (13:55 +0000)]
regex_automaton.h: _S_opcode_backref.

2013-08-18  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_automaton.h: _S_opcode_backref.
* include/bits/regex_automaton.tcc: Backref automaton support.
* include/bits/regex_compiler.tcc: Parsing support.
* include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
* include/bits/regex_executor.tcc: Add _S_opcode_backref support.
* testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.

From-SVN: r201825

10 years agocgraph.c (cgraph_create_indirect_edge): Discover polymorphic calls and record basic...
Jan Hubicka [Sun, 18 Aug 2013 09:22:42 +0000 (11:22 +0200)]
cgraph.c (cgraph_create_indirect_edge): Discover polymorphic calls and record basic info into indirect_info.

* cgraph.c (cgraph_create_indirect_edge): Discover
polymorphic calls and record basic info into indirect_info.
* gimple-fold.c (gimple_fold_call): When doing BINFO based
devirtualization, ignore objc function calls.
* ipa-cp.c (initialize_node_lattices): Be ready for polymorphic
call with no parm index info.
* ipa-prop.c (ipa_analyze_call_uses): Likewise.
* tree.c (virtual_method_call_p): New function.
* tree.h (virtual_method_call_p): Declare.

From-SVN: r201824

10 years agore PR c++/58083 (ICE with lambda as default parameter of a template function)
Jason Merrill [Sun, 18 Aug 2013 01:06:49 +0000 (21:06 -0400)]
re PR c++/58083 (ICE with lambda as default parameter of a template function)

PR c++/58083
* name-lookup.c (push_class_level_binding_1): It's OK to push a
lambda type after the enclosing type is complete.

From-SVN: r201822

10 years agoDaily bump.
GCC Administrator [Sun, 18 Aug 2013 00:16:26 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201821

10 years agoerror.c (dump_scope): Add a cxx_pretty_printer parameter.
Gabriel Dos Reis [Sat, 17 Aug 2013 20:31:02 +0000 (20:31 +0000)]
error.c (dump_scope): Add a cxx_pretty_printer parameter.

* error.c (dump_scope): Add a cxx_pretty_printer parameter.
Adjust callers.
(dump_template_argument): Likewise.
(dump_template_argument_list): Likewise.
(dump_template_parameter): Likewise.
(dump_template_bindings): Likewise.
(dump_alias_template_specialization): Likewise.
(dump_type): Likewise.
(dump_typename): Likewise.
(dump_aggr_type): Likewise.
(dump_type_prefix): Likewise.
(dump_type_suffix): Likewise.
(dump_global_iord): Likewise.
(dump_simple_decl): Likewise.
(dump_decl): Likewise.
(dump_template_decl): Likewise.
(dump_function_decl): Likewise.
(dump_parameters): Likewise.
(dump_ref_qualifier): Likewise.
(dump_exception_spec): Likewise.
(dump_function_name): Likewise.
(dump_template_parms): Likewise.
(dump_call_expr_args): Likewise.
(dump_aggr_init_expr_args): Likewise.
(dump_expr_list): Likewise.
(dump_expr_init_vec): Likewise.
(dump_expr): Likewise.
(dump_binary_op): Likewise.
(dump_unary_op): Likewise.

From-SVN: r201818

10 years agore PR middle-end/58179 (obj_type_ref ICE building libobjc)
Jan Hubicka [Sat, 17 Aug 2013 18:14:18 +0000 (20:14 +0200)]
re PR middle-end/58179 (obj_type_ref ICE building libobjc)

PR middle-end/58179
* tree.c (obj_type_ref_class): Do not ICE on non-method calls.

From-SVN: r201817

10 years agocompiler: Don't generate value reference in range clause if receiver is a sink.
Ian Lance Taylor [Sat, 17 Aug 2013 18:04:35 +0000 (18:04 +0000)]
compiler: Don't generate value reference in range clause if receiver is a sink.

The panic in test/fixedbugs/bug454.go was caused by the generation of an unnecessary var reference when writing a range value into a sink. If the receiving variable is a sink, there's no need to dereference a possible NULL pointer.

Fixes Issue 24.

From-SVN: r201815

10 years agors6000.md (rs6000_get_timebase_ppc32): Add length attribute.
David Edelsohn [Sat, 17 Aug 2013 00:43:38 +0000 (00:43 +0000)]
rs6000.md (rs6000_get_timebase_ppc32): Add length attribute.

        * config/rs6000/rs6000.md (rs6000_get_timebase_ppc32): Add length
        attribute.

From-SVN: r201812

10 years agoDaily bump.
GCC Administrator [Sat, 17 Aug 2013 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201811

10 years agomips16.S (CE_STARTFN, CE_ENDFN): New macros.
Maciej W. Rozycki [Fri, 16 Aug 2013 22:23:29 +0000 (22:23 +0000)]
mips16.S (CE_STARTFN, CE_ENDFN): New macros.

* config/mips/mips16.S (CE_STARTFN, CE_ENDFN): New macros.
(RET_FUNCTION): Use them in place of STARTFN and ENDFN.
(CALL_STUB_NO_RET): Likewise.
(CALL_STUB_RET): Likewise.
* config/mips/libgcc-mips16.ver: Remove __mips16_call_stub and
__mips16_ret call/return stub symbols.
* config.host <mips*-*-linux>: For non-R5900 add t-slibgcc-libgcc
to tmake_file.

Co-Authored-By: Catherine Moore <clm@codesourcery.com>
Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r201805

10 years agoSupport "gcc" namespace in gengtype
David Malcolm [Fri, 16 Aug 2013 19:46:12 +0000 (19:46 +0000)]
Support "gcc" namespace in gengtype

gcc/
* gengtype.c (type_for_name): Add special-case support for
locating types within the "gcc::" namespace.
(open_base_files): Emit a "using namespace gcc" directive.

From-SVN: r201800

10 years agore PR target/58160 (Power8 fusion support has a bug that shows up in running spec...
Michael Meissner [Fri, 16 Aug 2013 15:28:13 +0000 (15:28 +0000)]
re PR target/58160 (Power8 fusion support has a bug that shows up in running spec 2006)

2013-08-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58160
* config/rs6000/predicates.md (fusion_gpr_mem_load): Allow the
memory rtx to contain ZERO_EXTEND and SIGN_EXTEND.

* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Pass operands
array instead of each individual operand as a separate argument.
(emit_fusion_gpr_load): Likewise.
(expand_fusion_gpr_load): Add new function declaration.

* config/rs6000/rs6000.c (fusion_gpr_load_p): Change the calling
signature to have the operands passed as an array, instead of as
separate arguments.  Allow ZERO_EXTEND to be in the memory
address, and also SIGN_EXTEND if -mpower8-fusion-sign.  Do not
depend on the register live/dead flags when peepholes are run.
(expand_fusion_gpr_load): New function to be called from the
peephole2 pass, to change the register that addis sets to be the
target register.
(emit_fusion_gpr_load): Change the calling signature to have the
operands passed as an array, instead of as separate arguments.
Allow ZERO_EXTEND to be in the memory address, and also
SIGN_EXTEND if -mpower8-fusion-sign.

* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): Delete unused
unspec enumeration.
(power8 fusion peephole/peephole2): Rework the fusion peepholes to
adjust the register addis loads up in the peephole2 pass.  Do not
depend on the register live/dead state when the peephole pass is
done.

From-SVN: r201792

10 years agoFix bad interaction between GTY((user)) and incomplete declarations
David Malcolm [Fri, 16 Aug 2013 14:59:02 +0000 (14:59 +0000)]
Fix bad interaction between GTY((user)) and incomplete declarations

gcc/
* gengtype.c (create_user_defined_type): Ensure that the kind
is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
declaration is seen before the GTY((user)) marking.

From-SVN: r201791

10 years agore PR target/58105 (wrong code generation for multiversioned functions)
Bernd Edlinger [Fri, 16 Aug 2013 13:22:36 +0000 (15:22 +0200)]
re PR target/58105 (wrong code generation for multiversioned functions)

PR target/58105
* config/i386/i386.c (make_resolver_func): Set DECL_UNINLINABLE.

From-SVN: r201790

10 years agogimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new arugment expected_type.
Jan Hubicka [Fri, 16 Aug 2013 12:38:04 +0000 (14:38 +0200)]
gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new arugment expected_type.

* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new
arugment expected_type.
(gimple_fold_call): Use it.
* gimple.h (gimple_extract_devirt_binfo_from_cst): Update prototype.
* ipa-cp.c (ipa_get_indirect_edge_target_1): Update.
* ipa-prop.c (ipa_analyze_virtual_call_uses): Use
obj_type_ref_class.
(try_make_edge_direct_virtual_call): Likewise.
* tree.c (obj_type_ref_class): New.
* tree.h (obj_type_ref_class): Use it.

From-SVN: r201789

10 years agosched-vis.c (rtl_slim_pp_initialized): Remove.
Gabriel Dos Reis [Fri, 16 Aug 2013 10:42:49 +0000 (10:42 +0000)]
sched-vis.c (rtl_slim_pp_initialized): Remove.

* sched-vis.c (rtl_slim_pp_initialized): Remove.
(rtl_slim_pp): Likewise.
(init_rtl_slim_pretty_print): Likewise.
(dump_value_slim):  Don't call it.  Use local pretty printer.
(dump_insn_slim): Likewise.
(dump_rtl_slim): Likewise.
(str_pattern_slim): Likewise.
* tree-mudflap.c (mf_varname_tree): Use local pretty printer.
Simplify.

From-SVN: r201785

10 years agoregex.h (regex_traits<>::transform_primary): Avoid past-the-end dereferences.
Tim Shen [Fri, 16 Aug 2013 09:06:31 +0000 (09:06 +0000)]
regex.h (regex_traits<>::transform_primary): Avoid past-the-end dereferences.

2013-08-16  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.h (regex_traits<>::transform_primary):
Avoid past-the-end dereferences.

From-SVN: r201783

10 years agore PR tree-optimization/58164 (internal compiler error: in make_decl_rtl, at varasm...
Jakub Jelinek [Fri, 16 Aug 2013 09:05:52 +0000 (11:05 +0200)]
re PR tree-optimization/58164 (internal compiler error: in make_decl_rtl, at varasm.c:1147)

PR tree-optimization/58164
* gimple.c (walk_stmt_load_store_addr_ops): For visit_addr
walk gimple_goto_dest of GIMPLE_GOTO.

* gcc.c-torture/compile/pr58164.c: New test.

From-SVN: r201782

10 years agore PR regression/58165 (internal compiler error: verify_flow_info)
Jakub Jelinek [Fri, 16 Aug 2013 08:57:29 +0000 (10:57 +0200)]
re PR regression/58165 (internal compiler error: verify_flow_info)

PR tree-optimization/58165
* tree-call-cdce.c (shrink_wrap_one_built_in_call): If
bi_call must be the last stmt in a bb, don't split_block, instead
use fallthru edge from it and give up if there is none.
Release conds vector when returning early.

* g++.dg/opt/pr58165.C: New test.

From-SVN: r201780

10 years agoDaily bump.
GCC Administrator [Fri, 16 Aug 2013 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201779