1. 12 Dec, 2014 15 commits
  2. 11 Dec, 2014 23 commits
    • aarch64-protos.h (tune_params): Add align field. · b4917c98
      2014-12-11  Andrew Pinski  <apinski@cavium.com>
      
              * config/aarch64/aarch64-protos.h (tune_params): Add align field.
              * config/aarch64/aarch64.c (generic_tunings): Specify align.
              (cortexa53_tunings): Likewise.
              (cortexa57_tunings): Likewise.
              (thunderx_tunings): Likewise.
              (aarch64_override_options): Set align_loops, align_jumps,
              align_functions based on what the tuning struct.
      
      From-SVN: r218645
      Andrew Pinski committed
    • * doc/md.texi (Insn Lengths): Fix description of (pc). · 0c94b59f
      From-SVN: r218642
      Eric Botcazou committed
    • builtin-arith-overflow-1.c (fn2): Take signed char. · 3334c725
      	* gcc.dg/builtin-arith-overflow-1.c (fn2): Take signed char.
      	(fn3): Likewise.
      
      From-SVN: r218641
      Eric Botcazou committed
    • re PR ipa/61324 (ICE: SIGSEGV at ipa-comdats.c:321 with -fno-use-cxa-atexit… · 17e0fc92
      re PR ipa/61324 (ICE: SIGSEGV at ipa-comdats.c:321 with -fno-use-cxa-atexit -fkeep-inline-functions)
      
      
      	PR ipa/61324
      	* testsuite/g++.dg/pr61324.C: New testcase by Trevor Saunders.
      	* testsuite/g++.dg/tm/pr51411-2.C: Update se the extern function is
      	not eliminated early.
      	* testsuite/gcc.target/i386/pr57756.c: Turn extern inline into static
      	inline.
      
      	* passes.c (execute_todo): Update call of remove_unreachable_nodes.
      	* ipa-chkp.c (chkp_produce_thunks): Use TODO_remove_functions.
      	* cgraphunit.c (symbol_table::process_new_functions): Add
      	IPA_SSA_AFTER_INLINING.
      	(ipa_passes): Update call of remove_unreachable_nodes.
      	(symbol_table::compile): Remove call of remove_unreachable_nodes.
      	* ipa-inline.c (inline_small_functions): Do not ICE with
      	-flto-partition=none
      	(ipa_inline): Update symtab->state; fix formatting
      	update call of remove_unreachable_nodes.
      	* cgraphclones.c (symbol_table::materialize_all_clones): Likewise.
      	* cgraph.h (enum symtab_state): Add IPA_SSA_AFTER_INLINING.
      	(remove_unreachable_nodes): Update.
      	* ipa.c (process_references): Keep external references only
      	when optimizing.
      	(walk_polymorphic_call_targets): Keep possible polymorphic call
      	target only when devirtualizing.
      	(symbol_table::remove_unreachable_nodes): Remove BEFORE_INLINING_P
      	parameter.
      	(ipa_single_use): Update comment.
      	* ipa-pure-const.c (cdtor_p): New function.
      	(propagate_pure_const): Track if some cdtor was turned pure/const.
      	(execute): Return TODO_remove_functions if needed.
      	* ipa-comdats.c (ipa_comdats): Update comment.
      	
      	* lto.c (read_cgraph_and_symbols): Update call of
      	remove_unreachable_nodes.
      	(do_whole_program_analysis): Remove call of
      	symtab->remove_unreachable_nodes
      
      From-SVN: r218640
      Jan Hubicka committed
    • dwarf2out.c (gen_lexical_block_die): Remove unused `depth' parameter. · d4b7742d
      	* dwarf2out.c (gen_lexical_block_die): Remove unused `depth'
      	parameter.
      	(gen_inlined_subroutine_die): Same.
      	(gen_block_die): Same.
      	(decls_for_scope): Same.
      
      From-SVN: r218639
      Aldy Hernandez committed
    • 3.cc: Only use a thread_local when __cxa_thread_atexit_impl is available. · b8c555ac
      	* testsuite/30_threads/condition_variable/members/3.cc: Only use
      	a thread_local when __cxa_thread_atexit_impl is available.
      
      From-SVN: r218638
      Jonathan Wakely committed
    • Document gccjit::context::set_str_option · 35291c7d
      gcc/jit/ChangeLog:
      	* docs/cp/topics/contexts.rst (gccjit::context::set_str_option):
      	Document new function.
      	* docs/_build/texinfo/libgccjit.texi: Regenerate.
      
      From-SVN: r218636
      David Malcolm committed
    • [AArch64]Use AARCH64_FL_FPSIMD flags for all cores in aarch64-cores.def · faa54226
      gcc/
      
      2014-12-11  Renlin Li  <renlin.li@arm.com>
      
      	* config/aarch64/aarch64-cores.def: Change all AARCH64_FL_FPSIMD to
      	AARCH64_FL_FOR_ARCH8.
      	* config/aarch64/aarch64.c (all_cores): Use FLAGS from
      	aarch64-cores.def file only.
      
      From-SVN: r218635
      Renlin Li committed
    • re PR tree-optimization/42108 (50% performance regression) · d17271de
      2014-12-11  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/42108
      	* trans-stmt.c (gfc_trans_do): Execute the division computing
      	countm1 before the loop entry check.
      
      	* gfortran.dg/pr42108.f90: Amend.
      
      From-SVN: r218630
      Richard Biener committed
    • typeck.c (maybe_warn_about_useless_cast): Remove unnecessary conditional. · b214b733
      2014-12-11  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* typeck.c (maybe_warn_about_useless_cast): Remove unnecessary
      	conditional.
      
      From-SVN: r218629
      Paolo Carlini committed
    • do_iterator.f90: Remove bogus dg-warning. · 4011a145
      gcc/testsuite/ChangeLog:
      
      2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
              * gfortran.dg/do_iterator.f90: Remove bogus dg-warning.
      
      From-SVN: r218628
      Manuel López-Ibáñez committed
    • re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$… · c4100eae
      re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color)
      
      gcc/ChangeLog:
      
      2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/44054
      	* diagnostic.c (diagnostic_action_after_output): Make it extern.
      	Take diagnostic_t argument instead of diagnostic_info. Count also
      	DK_WERROR towards max_errors.
      	(diagnostic_report_diagnostic): Update call according to the above.
      	(error_recursion): Likewise.
      	* diagnostic.h (diagnostic_action_after_output): Declare.
      	* pretty-print.c (pp_formatted_text_data): Delete.
      	(pp_append_r): Call output_buffer_append_r.
      	(pp_formatted_text): Call output_buffer_formatted_text.
      	(pp_last_position_in_text): Call output_buffer_last_position_in_text.
      	* pretty-print.h (output_buffer_formatted_text): New.
      	(output_buffer_append_r): New.
      	(output_buffer_last_position_in_text): New.
      
      gcc/fortran/ChangeLog:
      
      2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/44054
      	* error.c (pp_error_buffer): New static variable.
      	(pp_warning_buffer): Make it a pointer.
      	(gfc_output_buffer_empty_p): New.
      	(gfc_error_init_1): Call gfc_buffer_error.
      	(gfc_buffer_error): Do not use pp_warning_buffer.flush_p as the
      	buffered_p flag.
      	(gfc_clear_warning): Likewise.
      	(gfc_warning_check): Call gfc_clear_warning. Only check the new
      	pp_warning_buffer if the old warning_buffer was empty. Call
      	diagnostic_action_after_output.
      	(gfc_error_1): Renamed from gfc_error.
      	(gfc_error): New.
      	(gfc_clear_error): Clear also pp_error_buffer.
      	(gfc_error_flag_test): Check also pp_error_buffer.
      	(gfc_error_check): Likewise. Only check the new pp_error_buffer
      	if the old error_buffer was empty.
      	(gfc_move_output_buffer_from_to): New.
      	(gfc_push_error): Use it here. Take also an output_buffer as argument.
      	(gfc_pop_error): Likewise.
      	(gfc_free_error): Likewise.
      	(gfc_diagnostics_init): Use XNEW and placement-new to init
      	pp_error_buffer and pp_warning_buffer. Set flush_p to false for
      	both pp_warning_buffer and pp_error_buffer.
      
      	* Update gfc_push_error, gfc_pop_error and gfc_free_error calls
      	according to the above changes.
      	* Use gfc_error_1 for all gfc_error calls that use multiple
      	locations.
      	* Use %qs instead of '%s' for many gfc_error calls.
      
      From-SVN: r218627
      Manuel López-Ibáñez committed
    • [AArch64] Fix usage of +no in error message for aarch64_parse_extension · 217d0904
      	* config/aarch64/aarch64.c (aarch64_parse_extension): Update error
      	message to say +no only when removing extension.
      
      From-SVN: r218626
      Kyrylo Tkachov committed
    • gen-mul-tables.cc: Add insn-codes.h to include list for generator file. · b61d924d
      
      2014-12-11  Andrew MacLeod  <amacleod@redhat.com>
      
      	* config/tilepro/gen-mul-tables.cc: Add insn-codes.h to include list
      	for generator file.  Add comment indicating it is a generated file.
      	* config/tilepro/mul-tables.c: Update generated file.
      	* config/tilegx/mul-tables.c: Likewise.
      
      From-SVN: r218624
      Andrew MacLeod committed
    • combine.c (try_combine): Do not allow combining a PARALLEL I2 with a register… · 08e39a54
      combine.c (try_combine): Do not allow combining a PARALLEL I2 with a register move I3 if that I2 is an asm.
      
      	* combine.c (try_combine): Do not allow combining a PARALLEL I2
      	with a register move I3 if that I2 is an asm.
      
      From-SVN: r218623
      Segher Boessenkool committed
    • [ARM] Fix names of some rounding intrinsics, impement vrndx_f32 and vrndxq_f32 · 26a4d424
      	* config/arm/arm_neon.h (vrndqn_f32): Rename to...
      	(vrndnq_f32): ... this.
      	(vrndqa_f32): Rename to...
      	(vrndaq_f32): ... this.
      	(vrndqp_f32): Rename to...
      	(vrndpq_f32): ... this.
      	(vrndqm_f32): Rename to...
      	(vrndmq_f32): ... this.
      	(vrndx_f32): New intrinsic.
      	(vrndxq_f32): Likewise.
      
      	* config/arm/arm_neon.h (vrndqn_f32): Rename to...
      	(vrndnq_f32): ... this.
      	(vrndqa_f32): Rename to...
      	(vrndaq_f32): ... this.
      	(vrndqp_f32): Rename to...
      	(vrndpq_f32): ... this.
      	(vrndqm_f32): Rename to...
      	(vrndmq_f32): ... this.
      	(vrndx_f32): New intrinsic.
      	(vrndxq_f32): Likewise.
      
      From-SVN: r218622
      Kyrylo Tkachov committed
    • fold-const.c (fold_negate_expr): Add ANY_INTEGRAL_TYPE_P check. · 20bd649a
      	* fold-const.c (fold_negate_expr): Add ANY_INTEGRAL_TYPE_P check.
      	(extract_muldiv_1): Likewise.
      	(maybe_canonicalize_comparison_1): Likewise.
      	(fold_comparison): Likewise.
      	(tree_binary_nonnegative_warnv_p): Likewise.
      	(tree_binary_nonzero_warnv_p): Likewise.
      	* gimple-ssa-strength-reduction.c (legal_cast_p_1): Likewise.
      	* tree-scalar-evolution.c (simple_iv): Likewise.
      	(scev_const_prop): Likewise.
      	* tree-ssa-loop-niter.c (expand_simple_operations): Likewise.
      	* tree-vect-generic.c (expand_vector_operation): Likewise.
      	* tree.h (ANY_INTEGRAL_TYPE_CHECK): Define.
      	(ANY_INTEGRAL_TYPE_P): Define.
      	(TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED, TYPE_OVERFLOW_TRAPS):
      	Add ANY_INTEGRAL_TYPE_CHECK.
      	(any_integral_type_check): New function.
      
      From-SVN: r218621
      Marek Polacek committed
    • [testsuite][1/2] Move ${tool}_check_unsupported_p into separate file · f63950e5
      	* lib/target-utils.exp: New file.
      	* lib/gcc-defs.exp (${tool}_check_unsupported_p): Delete.
      	Include target-utils.exp.
      	* lib/objc.exp: Likewise.
      	* lib/mike-gcc.exp: Load target-utils.exp.
      	* lib/mike-g++.exp: Likewise.
      	* lib/go-torture.exp: Likewise.
      	* lib/fortran-torture.exp: Likewise.
      	* lib/c-torture.exp: Likewise.
      
      From-SVN: r218620
      Kyrylo Tkachov committed
    • diagnostic.c (get_terminal_width): Renamed from · c9db45aa
      2014-12-11  Tobias Burnus  <burnus@net-b.de>
                  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      gcc/
              * diagnostic.c (get_terminal_width): Renamed from
              * getenv_columns,
              removed static, and additionally use ioctl to get width.
              (diagnostic_set_caret_max_width): Update call.
              * diagnostic.h (get_terminal_width): Add prototype.
              * opts.c (print_specific_help): Use it for x_help_columns.
              * doc/invoke.texi (fdiagnostics-show-caret): Document how the
              width is set.
      
      gcc/fortran/
              * error.c (gfc_get_terminal_width): Renamed from
              get_terminal_width and use same-named common function.
              (gfc_error_init_1): Update call.
      
      
      Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
      
      From-SVN: r218619
      Tobias Burnus committed
    • xvasprintf.c: New file. · 01ca36af
      	* xvasprintf.c: New file.
      	* vprintf-support.h: Likewise.
      	* vprintf-support.c: Likewise.
      	* Makefile.in (CFILES): Add vprintf-support.c, xvasprintf.c.
      	(REQUIRED_OFILES): Add vprintf-support.$(objext), xvasprintf.$(objext).
      	(vprintf-support.$(objext), xvasprintf.$(objext)): New targets.
      	(vasprintf.$(objext)): Depend on $(srcdir)/vprintf-support.h.
      	* functions.texi: Regenerate.
      	* vasprintf.c (int_vasprintf): Use libiberty_vprintf_buffer_size.
      
      include/ChangeLog:
      
      	* libiberty.h (xvasprintf): Declare.
      
      libcpp/ChangeLog:
      
      	* directives.c (cpp_define_formatted): Use xvasprintf.
      
      
      Co-Authored-By: Ben Elliston <bje@au.ibm.com>
      Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
      
      From-SVN: r218618
      Uros Bizjak committed
    • Minor interface cleanups of libgccjit · c168eab9
              Minor interface cleanups of libgccjit
              * jit/jit-playback.c (convert_to_dso): Use auto_vec instead
              of automatic array to build up command line.
              * jit/jit-recording.c (recording::context::set_str_option):
              Make copy of the string.
              (recording::context::~context): Free string options.
              * jit/jit-recording.h (recording::context): Adjust type
              of m_str_options member.
              * jit/libgccjit.h: Adjust comment about
              gcc_jit_context_set_str_option parameter begin used after
              the call.
              Update comment now that all interfaces are copy strings
              if necessary.
              * jit/libgccjit++.h (gccjit::context): Add set_str_option
              member function.
      
      From-SVN: r218617
      Ulrich Drepper committed
    • Daily bump. · 67dab5e0
      From-SVN: r218616
      GCC Administrator committed
  3. 10 Dec, 2014 2 commits
    • gdbhooks.py (class DWDieRefPrinter): New class. · 53afce20
      	* gdbhooks.py (class DWDieRefPrinter): New class.
      	(build_pretty_printer): Register dw_die_ref's.
      
      From-SVN: r218612
      Aldy Hernandez committed
    • Add march=knl. · 52747219
      gcc/
      
      	* config.gcc: Support "knl".
      	* config/i386/driver-i386.c (host_detect_local_cpu): Detect "knl".
      	* config/i386/i386-c.c (ix86_target_macros_internal): Handle
      	PROCESSOR_KNL.
      	* config/i386/i386.c (m_KNL): Define.
      	(processor_target_table): Add "knl".
      	(PTA_KNL): Define.
      	(ix86_issue_rate): Add PROCESSOR_KNL.
      	(ix86_adjust_cost): Ditto.
      	(ia32_multipass_dfa_lookahead): Ditto.
      	(get_builtin_code_for_version): Handle "knl".
      	(fold_builtin_cpu): Ditto.
      	* config/i386/i386.h (TARGET_KNL): Define.
      	(processor_type): Add PROCESSOR_KNL.
      	* config/i386/i386.md (attr "cpu"): Add knl.
      	* config/i386/x86-tune.def: Add m_KNL.
      
      
      gcc/testsuite/
      
      	* gcc.target/i386/funcspec-5.c: Test avx512f and knl.
      
      From-SVN: r218610
      Ilya Tocar committed