Revert r216483.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216502 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libquadmath/55821
	* Makefile.am: Unconditionally define libquadmath_TEXINFOS.
	* Makefile.in: Regenerate.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216503 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/i386.c (expand_vec_perm_1): Fix
	expand_vec_perm_palignr case.
	* config/i386/sse.md (<ssse3_avx2>_palignr<mode>_mask): Use
	VI1_AVX512.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216504 138bc75d-0d04-0410-961f-82ee72b054a4
	* inclhack.def (glibc_c99_inline_4): Add pthread.h to files.
	* fixincl.x: Regenerate.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216505 138bc75d-0d04-0410-961f-82ee72b054a4
Fix date of last ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216506 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/63563
	* tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Bail out
	if either dra or drb stmts are not normal loads/stores.

	* gcc.target/i386/pr63563.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216507 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Richard Biener  <rguenther@suse.de>

	* g++.dg/ipa/devirt-42.C: Fix dump scanning routines.
	* g++.dg/ipa/devirt-46.C: Likewise.
	* g++.dg/ipa/devirt-47.C: Likewise.
	* g++.dg/tree-prof/pr35545.C: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216509 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Richard Biener  <rguenther@suse.de>

	* tree-ssa-phiopt.c (value_replacement): Properly verify we
	are the non-singleton PHI.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216510 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * tree-ssa-math-opts.c (find_bswap_or_nop_1): Fix creation of
    MARKER_BYTE_UNKNOWN markers when handling casts.

    gcc/testsuite/
    * gcc.dg/optimize-bswaphi-1.c: New bswap pass test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216511 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc.dg/bf-spl1.c (main): Fix implicit int.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216512 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Ville Voutilainen  <ville.voutilainen@gmail.com>

	Implement more Library Fundamentals v1 variable templates.
	* include/Makefile.am: Add ratio, chrono and system_error.
	* include/Makefile.in: Regenerate.
	* include/experimental/chrono: New.
	* include/experimental/ratio: Likewise.
	* include/experimental/system_error: Likewise.
	* include/experimental/tuple (tuple_size_v): Likewise.
	* testsuite/experimental/chrono/value.cc: Likewise.
	* testsuite/experimental/ratio/value.cc: Likewise.
	* testsuite/experimental/system_error/value.cc: Likewise.
	* testsuite/experimental/tuple/tuple_size.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216513 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* parser.c (cp_parser_unary_expression): Add default arguments.
	(cp_parser_cast_expression, cp_parser_sizeof_operand,
	cp_parser_omp_atomic): Adjust.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216516 138bc75d-0d04-0410-961f-82ee72b054a4
[ARM] Update testcases for GNU11

2014-10-21  Jiong Wang  <jiong.wang@arm.com>

	* gcc.target/arm/20031108-1.c (Proc_7): Add explicit declaration.
	(Proc_1): Add return type.
	* gcc.target/arm/cold-lc.c (show_stack): Add explict declaration.
	* gcc.target/arm/neon-modes-2.c (foo): Likewise.
	* gcc.target/arm/pr43920-2.c (lseek): Likewise.
	* gcc.target/arm/pr44788.c (foo): Likewise.
	* gcc.target/arm/pr55642.c (abs): Likewise.
	* gcc.target/arm/pr58784.c (f): Likewise.
	* gcc.target/arm/pr60650.c (foo1, foo2): Likewise.
	* gcc.target/arm/vfp-ldmdbs.c (bar): Likewise.
	* gcc.target/arm/vfp-ldmias.c (bar): Likewise.
	* gcc.target/arm/pr60650-2.c (fn1, fn2): Add return type and add type
	for local variables.
	* lib/target-supports.exp
	(check_effective_target_arm_crypto_ok_nocache): Add declaration for
	vaeseq_u8.
	(check_effective_target_arm_neon_fp16_ok_nocache): Add declaration for
	vcvt_f16_f32.
	(check_effective_target_arm_neonv2_ok_nocache): Add declaration for
	vfma_f32.
	* gcc.target/arm/pr51968.c: Add -Wno-implicit-function-declaration.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216517 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Andrew MacLeod  <amacleod@redhat.com>


	* cfg.h: New.  Header file for cfg.c.
	* cfganal.h: New.  Header file for cfganal.c.
	* lcm.h: New.  Header file for lcm.c.
	* loop-unroll.h: New.  Header file for loop-unroll.h.
	* cfgloop.h: (unroll_loops): Remove prototype.
	* basic-block.h: Move prototypes and structs to new header files.
	Include cfg.h, cfganal.h, and lcm.h.
	* loop-init.c: Include loop-unroll.h.
	* loop-unroll.c: (referenced_in_one_insn_in_loop_p): Make static.
	* modulo-sched.c: Include loop-unroll.h.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216518 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: Remove obsolete hidden_fields_are_ok code.

The language used to forbid assigning structs with hidden
fields, but that was changed before the Go 1 release.  At the
time the change was experimental, so I left the old code in
the compiler.  At this point it's clearly not experimental, so
this removes the unused code.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216519 138bc75d-0d04-0410-961f-82ee72b054a4
        * testsuite/util/io/prog_bar.cc: Qualify size_t.
        * testsuite/util/io/prog_bar.hpp: Likewise.
        * testsuite/util/io/verified_cmd_line_input.hpp: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216520 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Andrew MacLeod  <amacleod@redhat.com>

        * loop-doloop.c: Include loop-unroll.h.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216521 138bc75d-0d04-0410-961f-82ee72b054a4
State cleanups from jit branch

gcc/ChangeLog:
	* cgraph.c (cgraph_c_finalize): New function.
	* cgraph.h (cgraph_c_finalize): New prototype.
	(cgraphunit_c_finalize): New prototype.
	* cgraphunit.c (first_analyzed): Move from analyze_functions
	to file-scope.
	(first_analyzed_var): Likewise.
	(analyze_functions): Move static variables into file-scope.
	(cgraphunit_c_finalize): New function.
	* diagnostic.c (diagnostic_finish): Free the memory for
	context->classify_diagnostic and context->printer, running the
	destructor for the latter.
	(bt_stop): Use toplev::main.
	* dwarf2out.c (dwarf2out_finalize): New function.
	* dwarf2out.h (dwarf2out_c_finalize): New prototype.
	* gcse.c (gcse_c_finalize): New function.
	* gcse.h (gcse_c_finalize): New prototype.
	* ggc-page.c (init_ggc): Make idempotent.
	* input.c (input_location): Initialize to UNKNOWN_LOCATION.
	* ipa-cp.c (ipa_cp_c_finalize): New function.
	* ipa-prop.h (ipa_cp_c_finalize): New prototype.
	* ipa-pure-const.c (function_insertion_hook_holder): Move to be
	a field of class pass_ipa_pure_const.
	(node_duplication_hook_holder): Likewise.
	(node_removal_hook_holder): Likewise.
	(register_hooks): Convert to method...
	(pass_ipa_pure_const::register_hooks): ...here, converting
	static variable init_p into...
	(pass_ipa_pure_const::init_p): ...new field.
	(pure_const_generate_summary): Update invocation of
	register_hooks to invoke as a method of current_pass.
	(pure_const_read_summary): Likewise.
	(propagate): Convert to...
	(pass_ipa_pure_const::execute): ...method.
	* ipa-reference.c (ipa_init): Move static bool init_p from here
	to...
	(ipa_init_p): New file-scope variable, so that it can be reset
	when repeatedly invoking the compiler within one process by...
	(ipa_reference_c_finalize): New function.
	* ipa-reference.h (ipa_reference_c_finalize): New.
	* main.c (main): Replace invocation of toplev_main with
	construction of a toplev instance, and call its "main" method.
	* params.c (global_init_params): Add an assert that
	params_finished is false.
	(params_c_finalize): New.
	* params.h (params_c_finalize): New.
	* passes.c (execute_ipa_summary_passes): Set "current_pass" before
	invoking generate_summary, for the benefit of pass_ipa_pure_const.
	(ipa_write_summaries_2): Assign "pass" to "current_pass" global
	before calling write_summary hook.
	(ipa_write_optimization_summaries_1): Likewise when calling
	write_optimization_summary hook.
	(ipa_read_summaries_1): Likewise for read_summary hook.
	(ipa_read_optimization_summaries_1): Likewise for
	read_optimization_summary hook.
	(execute_ipa_stmt_fixups): Likewise.
	* stringpool.c (init_stringpool): Clean up if we're called more
	than once.
	* timevar.c (timevar_init): Ignore repeated calls.
	* toplev.c: Include "dwarf2out.h", "ipa-reference.h", "gcse.h",
	"ipa-prop.h".
	(general_init): Reset "input_location" to UNKNOWN_LOCATION.
	(initialize_rtl): Move static local "initialized_once"
	into file scope, and rename to...
	(rtl_initialized): New variable.
	(do_compile): Move timevar initialization from here to
	toplev::start_timevars.
	(toplev::toplev, toplev::~toplev, toplev::start_timevars,
	toplev::finalize): New functions.
	(toplev_main): Rename to...
	(toplev::main): ...this.
	* toplev.h (class toplev): New class.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216522 138bc75d-0d04-0410-961f-82ee72b054a4
Add AutoFDO.

gcc/ChangeLog:

2014-10-21  Dehao Chen  <dehao@google.com>

	* auto-profile.c: New file.
	* auto-profile.h: New file.
	* basic-block.h (maybe_hot_count_p): New export func.
	(add_working_set): New export func.
	* gcov-io.h (GCOV_TAG_AFDO_FILE_NAMES): New tag.
	(GCOV_TAG_AFDO_FUNCTION): Likewise.
	(GCOV_TAG_AFDO_WORKING_SET): Likewise.
	* opts.c (enable_fdo_optimizations): New func.
	(common_handle_option): Handle -fauto-profile flag.
	* ipa-inline.c (want_early_inline_function_p): Iterative-einline.
	(class pass_early_inline): Export early_inliner.
	(early_inliner): Likewise.
	(pass_early_inline::execute): Likewise.
	* ipa-inline.h (early_inliner): Likewise.
	* predict.c (maybe_hot_count_p): New export func.
	(counts_to_freqs): AutoFDO logic.
	(rebuild_frequencies): Likewise.
	* tree-profile.c (pass_ipa_tree_profile::gate): Likewise.
	* profile.c (add_working_set): New func.
	* Makefile.in (auto-profile.o): New object file.
	* passes.def (pass_ipa_auto_profile): New pass.
	* tree-ssa-live.c (remove_unused_scope_block_p): AutoFDO logic.
	* tree-pass.h (make_pass_ipa_auto_profile): New pass.
	* toplev.c (compile_file): AutoFDO logic.
	* doc/invoke.texi (-fauto-profile): New doc.
	* coverage.c (coverage_init): AutoFDO logic.
	* common.opt (-fauto-profile): New flag.
	* timevar.def (TV_IPA_AUTOFDO): New tag.
	* value-prof.c (gimple_alloc_histogram_value): New export func.
	(check_ic_target): Likewise.
	* value-prof.h (gimple_alloc_histogram_value): Likewise.
	(check_ic_target): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216523 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-21  Andrew Pinski  <apinski@cavium.com>

	* doc/invoke.texi (AARCH64/mtune): Document thunderx as an
	available option also.
	* config/aarch64/aarch64-cost-tables.h: New file.
	* config/aarch64/aarch64-cores.def (thunderx): New core.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* config/aarch64/aarch64.c: Include aarch64-cost-tables.h instead
	of config/arm/aarch-cost-tables.h.
	(thunderx_regmove_cost): New variable.
	(thunderx_tunings): New variable.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216524 138bc75d-0d04-0410-961f-82ee72b054a4