Commit Graph

137580 Commits

Author SHA1 Message Date
Richard Biener
8a474dc5d7 tree-ssa-ccp.c (likely_value): See if we have operands that are marked as never simulate again and return...
2015-04-16  Richard Biener  <rguenther@suse.de>

	* tree-ssa-ccp.c (likely_value): See if we have operands that
	are marked as never simulate again and return CONSTANT in this
	case.
	* tree-ssa-propagate.c (simulate_stmt): Mark stmts that do
	not have any operands that will be simulated again as
	not being simulated again.

	* gcc.dg/tree-ssa/ssa-ccp-36.c: New testcase.
	* gcc.dg/tree-ssa/pr37508.c: Adjust.
	* gfortran.dg/reassoc_6.f: Remove XFAIL.

From-SVN: r222141
2015-04-16 07:55:57 +00:00
GCC Administrator
8d1cac076c Daily bump.
From-SVN: r222140
2015-04-16 00:16:21 +00:00
Jason Merrill
58cc255ca0 constexpr.c (cxx_eval_store_expression): Ignore clobbers.
* constexpr.c (cxx_eval_store_expression): Ignore clobbers.
	(build_constexpr_constructor_member_initializers): Loop to find
	the BIND_EXPR.
	* decl.c (start_preparsed_function): Clobber the object at the
	beginning of a constructor.

From-SVN: r222135
2015-04-15 17:17:29 -04:00
Jason Merrill
efb5e8170a decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
* decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
	* method.c (implicitly_declare_fn): Likewise.
	* decl2.c (vague_linkage_p): Check TREE_PUBLIC first.

From-SVN: r222134
2015-04-15 17:17:21 -04:00
Jason Merrill
bf5730d773 * decl2.c (determine_visibility): Use get_template_info.
From-SVN: r222133
2015-04-15 17:17:15 -04:00
Jason Merrill
5ce3039eb1 re PR c++/65727 (Segfault With Decltype In Lambda Expression Used To Initialize Static Class Member)
PR c++/65727
	* lambda.c (lambda_expr_this_capture): In unevaluated context go
	through the normal loop, just don't capture.
	(maybe_resolve_dummy): Handle null return.

Co-Authored-By: Marek Polacek <polacek@redhat.com>

From-SVN: r222132
2015-04-15 17:17:03 -04:00
Uros Bizjak
cf0ed95b57 i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute.
* config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed):
	Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute.
	(*extendsfdf2_mixed): Merge with *extendsfdf2_sse using enabled
	attribute.
	(*truncdfsf_fast_mixed): Merge with *truncdfsf_fast_sse using
	enabled attribute.
	(*float<SWI48:mode><MODEF:mode>2_mixed): Rename from
	*float<SWI48:mode><MODEF:mode>2_sse.
	(*absneg<mode>2_mixed): Merge with *absneg<mode>2_sse using
	enabled attribute.
	(*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_sse using
	enabled attribute.

From-SVN: r222131
2015-04-15 21:32:07 +02:00
Jeff Law
20e38fcf4f re PR tree-optimization/47679 (Strange uninitialized warning after SRA)
PR tree-optimization/47679
	* tree-ssa-dom.c (build_and_record_new_cond): Moved to avoid
	need for forward declaration in upcoming changes.
	(record_conditions, record_edge_info): Likewise.

From-SVN: r222130
2015-04-15 12:51:49 -06:00
Tom de Vries
5283d1ecc4 Fix fdump-passes
2015-04-15  Tom de Vries  <tom@codesourcery.com>

	PR other/65487
	* function.c (push_dummy_function): New function.
	(init_dummy_function_start): Use push_dummy_function.
	(pop_dummy_function): New function.  Factored out of ...
	(expand_dummy_function_end): ... here.
	* function.h (push_dummy_function, pop_dummy_function): Declare.
	* passes.c (pass_manager::dump_passes): Use push_dummy_function and
	pop_dummy_function.
	* tree-chkp.c (chkp_gate): Handle cgraph_node::get (cfun->decl) == NULL.

From-SVN: r222129
2015-04-15 18:43:32 +00:00
Paolo Carlini
3a1351b9da call.c (enforce_access): Emit error + inform.
/cp
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* call.c (enforce_access): Emit error + inform.

/testsuite
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/alias-decl-22.C: Adjust for error + inform change.
	* g++.dg/cpp0x/decltype-call1.C: Likewise.
	* g++.dg/cpp0x/defaulted21.C: Likewise.
	* g++.dg/cpp0x/defaulted28.C: Likewise.
	* g++.dg/cpp0x/defaulted47.C: Likewise.
	* g++.dg/cpp0x/elision_neg.C: Likewise.
	* g++.dg/cpp0x/fntmpdefarg3.C: Likewise.
	* g++.dg/cpp0x/implicit-trivial1.C: Likewise.
	* g++.dg/cpp0x/implicit1.C: Likewise.
	* g++.dg/cpp0x/implicit9.C: Likewise.
	* g++.dg/cpp0x/inh-ctor9.C: Likewise.
	* g++.dg/cpp0x/range-for13.C: Likewise.
	* g++.dg/gomp/clause-2.C: Likewise.
	* g++.dg/gomp/udr-5.C: Likewise.
	* g++.dg/inherit/access6.C: Likewise.
	* g++.dg/lookup/duperr1.C: Likewise.
	* g++.dg/lookup/friend2.C: Likewise.
	* g++.dg/lookup/pr6936.C: Likewise.
	* g++.dg/lookup/scoped1.C: Likewise.
	* g++.dg/lookup/using26.C: Likewise.
	* g++.dg/lookup/using38.C: Likewise.
	* g++.dg/other/access2.C: Likewise.
	* g++.dg/overload/defarg3.C: Likewise.
	* g++.dg/overload/defarg6.C: Likewise.
	* g++.dg/parse/access11.C: Likewise.
	* g++.dg/parse/access2.C: Likewise.
	* g++.dg/parse/access3.C: Likewise.
	* g++.dg/parse/access4.C: Likewise.
	* g++.dg/parse/access5.C: Likewise.
	* g++.dg/parse/access6.C: Likewise.
	* g++.dg/parse/access8.C: Likewise.
	* g++.dg/parse/access9.C: Likewise.
	* g++.dg/parse/crash40.C: Likewise.
	* g++.dg/tc1/dr142.C: Likewise.
	* g++.dg/tc1/dr166.C: Likewise.
	* g++.dg/tc1/dr52.C: Likewise.
	* g++.dg/template/access11.C: Likewise.
	* g++.dg/template/access18.C: Likewise.
	* g++.dg/template/access19.C: Likewise.
	* g++.dg/template/access2.C: Likewise.
	* g++.dg/template/access20.C: Likewise.
	* g++.dg/template/access26.C: Likewise.
	* g++.dg/template/access3.C: Likewise.
	* g++.dg/template/access7.C: Likewise.
	* g++.dg/template/conv12.C: Likewise.
	* g++.dg/template/crash69.C: Likewise.
	* g++.dg/template/friend31.C: Likewise.
	* g++.dg/template/friend32.C: Likewise.
	* g++.dg/template/memfriend15.C: Likewise.
	* g++.dg/template/memfriend16.C: Likewise.
	* g++.dg/template/memfriend17.C: Likewise.
	* g++.dg/template/memfriend7.C: Likewise.
	* g++.dg/template/pr32519.C: Likewise.
	* g++.dg/template/qualttp21.C: Likewise.
	* g++.dg/template/qualttp8.C: Likewise.
	* g++.dg/template/ttp10.C: Likewise.
	* g++.dg/template/typedef11.C: Likewise.
	* g++.dg/template/typedef13.C: Likewise.
	* g++.dg/template/typedef19.C: Likewise.
	* g++.dg/template/typedef20.C: Likewise.
	* g++.dg/template/typedef22.C: Likewise.
	* g++.dg/template/using16.C: Likewise.
	* g++.dg/template/virtual3.C: Likewise.
	* g++.dg/ubsan/pr61272.C: Likewise.
	* g++.old-deja/g++.bob/inherit2.C: Likewise.
	* g++.old-deja/g++.brendan/crash11.C: Likewise.
	* g++.old-deja/g++.brendan/enum6.C: Likewise.
	* g++.old-deja/g++.brendan/visibility1.C: Likewise.
	* g++.old-deja/g++.brendan/visibility10.C: Likewise.
	* g++.old-deja/g++.brendan/visibility2.C: Likewise.
	* g++.old-deja/g++.brendan/visibility6.C: Likewise.
	* g++.old-deja/g++.brendan/visibility7.C: Likewise.
	* g++.old-deja/g++.brendan/visibility8.C: Likewise.
	* g++.old-deja/g++.brendan/visibility9.C: Likewise.
	* g++.old-deja/g++.bugs/900428_03.C: Likewise.
	* g++.old-deja/g++.jason/access17.C: Likewise.
	* g++.old-deja/g++.jason/access18.C: Likewise.
	* g++.old-deja/g++.jason/access22.C: Likewise.
	* g++.old-deja/g++.jason/access23.C: Likewise.
	* g++.old-deja/g++.jason/access8.C: Likewise.
	* g++.old-deja/g++.jason/delete3.C: Likewise.
	* g++.old-deja/g++.jason/report.C: Likewise.
	* g++.old-deja/g++.law/access2.C: Likewise.
	* g++.old-deja/g++.law/access3.C: Likewise.
	* g++.old-deja/g++.law/access4.C: Likewise.
	* g++.old-deja/g++.law/access5.C: Likewise.
	* g++.old-deja/g++.law/arm12.C: Likewise.
	* g++.old-deja/g++.law/arm14.C: Likewise.
	* g++.old-deja/g++.law/ctors13.C: Likewise.
	* g++.old-deja/g++.law/union2.C: Likewise.
	* g++.old-deja/g++.law/visibility12.C: Likewise.
	* g++.old-deja/g++.law/visibility15.C: Likewise.
	* g++.old-deja/g++.law/visibility16.C: Likewise.
	* g++.old-deja/g++.law/visibility17.C: Likewise.
	* g++.old-deja/g++.law/visibility18.C: Likewise.
	* g++.old-deja/g++.law/visibility19.C: Likewise.
	* g++.old-deja/g++.law/visibility20.C: Likewise.
	* g++.old-deja/g++.law/visibility21.C: Likewise.
	* g++.old-deja/g++.law/visibility24.C: Likewise.
	* g++.old-deja/g++.law/visibility4.C: Likewise.
	* g++.old-deja/g++.law/visibility5.C: Likewise.
	* g++.old-deja/g++.law/visibility6.C: Likewise.
	* g++.old-deja/g++.law/visibility7.C: Likewise.
	* g++.old-deja/g++.law/visibility8.C: Likewise.
	* g++.old-deja/g++.law/visibility9.C: Likewise.
	* g++.old-deja/g++.niklas/t135.C: Likewise.
	* g++.old-deja/g++.oliva/delete1.C: Likewise.
	* g++.old-deja/g++.oliva/partord1.C: Likewise.
	* g++.old-deja/g++.other/access11.C: Likewise.
	* g++.old-deja/g++.other/access4.C: Likewise.
	* g++.old-deja/g++.other/access7.C: Likewise.
	* g++.old-deja/g++.other/crash1.C: Likewise.
	* g++.old-deja/g++.other/crash7.C: Likewise.
	* g++.old-deja/g++.other/friend1.C: Likewise.
	* g++.old-deja/g++.other/friend4.C: Likewise.
	* g++.old-deja/g++.other/friend9.C: Likewise.
	* g++.old-deja/g++.other/lineno1.C: Likewise.
	* g++.old-deja/g++.other/using1.C: Likewise.
	* g++.old-deja/g++.pt/enum14.C: Likewise.
	* g++.old-deja/g++.pt/friend11.C: Likewise.
	* g++.old-deja/g++.pt/friend21.C: Likewise.
	* g++.old-deja/g++.pt/friend3.C: Likewise.
	* g++.old-deja/g++.pt/inherit2.C: Likewise.
	* g++.old-deja/g++.pt/memtemp74.C: Likewise.
	* g++.old-deja/g++.pt/memtemp89.C: Likewise.
	* g++.old-deja/g++.robertl/eb94.C: Likewise.

From-SVN: r222128
2015-04-15 17:18:27 +00:00
Chen Gang
d26b2237b3 gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty do-while loop as macro body to avoid warnings.
2015-04-15  Chen Gang  <gang.chen.5i5j@gmail.com>

       * gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty
       do-while loop as macro body to avoid warnings.

From-SVN: r222127
2015-04-15 09:29:12 -06:00
Marek Polacek
0567dcd254 constexpr.c (use_new_call): Remove #define.
* constexpr.c (use_new_call): Remove #define.
	(lookup_parameter_binding): Remove function.
	(cxx_bind_parameters_in_call): Remove unused code.
	(cxx_eval_call_expression): Likewise.
	(cxx_eval_constant_expression): Likewise.

From-SVN: r222126
2015-04-15 14:46:22 +00:00
Jeff Law
5141ed4263 re PR rtl-optimization/42522 ((zero_extract:SI (mem:QI) ...) misoptimized)
PR rtl-optimization/42522
        * cse.c (fold_rtx): Try to simplify a ZERO_EXTRACT or
        SIGN_EXTRACT as a whole object rather than simplifying
        its operand.

From-SVN: r222125
2015-04-15 06:24:28 -06:00
Jakub Jelinek
366ee94b44 re PR ipa/65765 (Compiling Firefox with GCC 5 leads to broken javascript engine on x86-64)
PR ipa/65765
	* ipa-icf-gimple.c (func_checker::compare_bb): For GIMPLE_NOP
	and GIMPLE_PREDICT use break instead of return true. For
	GIMPLE_EH_DISPATCH, compare dispatch region.

	* g++.dg/ipa/pr65765.C: New test.

From-SVN: r222123
2015-04-15 13:47:44 +02:00
Andreas Schwab
f8a7e15406 re PR bootstrap/65763 (tm.h: No such file or directory)
PR bootstrap/65763
	* Makefile.am (gcc_build_dir): Remove $(host_subdir)/ part.
	* Makefile.in: Regenerated.

From-SVN: r222121
2015-04-15 11:23:59 +02:00
Matthew Wahab
a1e2583920 extend.texi (__sync Builtins): Simplify some text.
* doc/extend.texi (__sync Builtins): Simplify some text.  Update
	details about the implementation.  Make clear preference for
	__atomic builtins.  Reduce possibility of future change.

From-SVN: r222120
2015-04-15 08:35:53 +00:00
Rainer Orth
eea6e98958 Ignore elfdump warnings in scripts/extract_symvers.pl
* scripts/extract_symvers.pl: Ignore elfdump error output.

From-SVN: r222117
2015-04-15 07:48:59 +00:00
Nick Clifton
e4614c187b rx.opt (mallow-string-insns): New option.
* config/rx/rx.opt (mallow-string-insns): New option.
	* config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this
	builtin if string instructions are denied.
	* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define
	__RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as
	appropriate.
	(ASM_SPEC): Pass -mno-allow-string-insns on to the assembler.
	* config/rx/rx.md (movstr): Enable pattern only if string
	instructions are allowed.
	(rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise.
	(cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise.
	* config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns.
	(MULTILIB_DIRNAMES): Add no-strings.
	* doc/invoke.texi: Document -mno-allow-string-insns.

	* gcc.target/rx/builtins.c: Disable RMPA test if string
	instructions are not allowed.

From-SVN: r222116
2015-04-15 07:41:07 +00:00
Alan Modra
984b20545f re PR target/65408 (powerpc64 function argument passing may access invalid memory)
PR target/65408
	PR target/58744
	PR middle-end/36043
	* calls.c (load_register_parameters): Don't load past end of
	mem unless suitably aligned.

From-SVN: r222115
2015-04-15 16:59:01 +09:30
Nick Clifton
9368432388 rl78.c (rl78_expand_prologue): Mark large stack decrement instruction as being frame related.
* config/rl78/rl78.c (rl78_expand_prologue): Mark large stack
	decrement instruction as being frame related.
	(rl78_print_operand_1): Handle 'p' modifier to add +0 to HL
	based addresses.
	If zero extending a function address enclose the operation in
	%code(...).
	(rl78_preferred_reload_class): New function.
	(TARGET_PREFERRED_RELOAD_CLASS): Define.
	* config/rl78/rl78.md: Remove useless constraints in expanders.
	(mulqi3_rl78): Remove + qualifier on input-only operand 1.
	(mulhi3_rl78): Likewise.
	(mulhi3_g13): Likewise.
	(mulsi3_rl78): Likewise.
	(es_addr): Move to before the multiply patterns.

From-SVN: r222114
2015-04-15 07:24:44 +00:00
Alan Modra
614d5bd88d function.h (struct emit_status): Delete x_first_insn, x_last_insn and sequence_stack.
* function.h (struct emit_status): Delete x_first_insn, x_last_insn
	and sequence_stack.  Add seq.
	(seq_stack): Delete.
	* function.c (prepare_function_start): Don't access x_last_insn.
	* emit-rtl.h (get_current_sequence, get_topmost_sequence): New.
	(get_insns, set_first_insn, get_last_insn, set_last_insn): Use them.
	* emit_rtl.c (start_sequence, push_topmost_sequence,
	pop_topmost_sequence, end_sequence, in_sequence_p, init_emit): Use
	sequence accessors.
	(get_last_insn_anywhere, add_insn_after_nobb, add_insn_before_nobb,
	remove_insn): Likewise.  Simplify.
	* config/m32c/m32c.c (m32c_leaf_function_p): Use push_topmost_sequence
	and pop_topmost_sequence.
	(m32c_function_needs_enter): Use get_topmost_sequence.  Ignore
	debug insns.
	* config/rs6000/rs6000.c (rs6000_call_aix): Use get_current_sequence.

From-SVN: r222112
2015-04-15 15:35:44 +09:30
Jerry DeLisle
241cbc7a5f re PR fortran/65089 (FAIL: gfortran.dg/io_real_boz(2|_[45]).f90 when tested with -fsanitize=address)
2015-04-14 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/65089
	* io/format.h (free_format): New function to free memory
	allocated for building format error messages.
	* io/format.c (format_error): Add checks before freeing memory
	to avoid potential segfaults and free formatting data when
	needed on error conditions. Always allocate and NULL terminate
	the string.
	* io/transfer.c (st_read_done, st_write_done): Use new
	free_format function to clean up memory allocations when done.

From-SVN: r222111
2015-04-15 01:27:03 +00:00
Mikhail Maltsev
182d115c19 tree.c (replace_placeholders_t): Remove unused type.
* tree.c (replace_placeholders_t): Remove unused type.
	(replace_placeholders): Remove unused pset.

From-SVN: r222110
2015-04-14 20:58:28 -04:00
GCC Administrator
9282d562f7 Daily bump.
From-SVN: r222109
2015-04-15 00:16:15 +00:00
Jason Merrill
57c5e96e2d * pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.
From-SVN: r222104
2015-04-14 17:31:07 -04:00
Yvan Roux
c07ad89a04 re PR target/65729 (ICE (in prohibited_class_reg_set_mode_p, at lra-constraints.c) on arm-linux-gnueabihf)
gcc/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

	PR target/65729
	* lra-constraints.c (prohibited_class_reg_set_mode_p): Restore and fix
	the assertiion.

gcc/testsuite/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

	PR target/65729
	* gcc.target/arm/pr65729.c: New test.

From-SVN: r222101
2015-04-14 17:21:54 +00:00
Uros Bizjak
58b0b34c9d i386.h (LEGACY_INT_REG_P): New define.
* config/i386/i386.h (LEGACY_INT_REG_P): New define.
	(LEGACY_INT_REGNO_P): Ditto.
	(GENERAL_REGNO_P): Use LEGACY_INT_REGNO_P.
	(ANY_MASK_REG_P): Remove.
	(BND_REG_P): Rename from ANY_BND_REG_P.
	* config/i386/i386.c (print_reg): Use LEGACY_INT_REG_P to print
	legacy integer registers.  Do not handle MMX_REG_P in a special way.
	Merge 64byte and 32byte SSE handling.

From-SVN: r222100
2015-04-14 19:17:05 +02:00
Max Ostapenko
7701939727 Makefile.tpl (EXTRA_HOST_EXPORTS): New variables.
2015-04-14  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	* Makefile.tpl (EXTRA_HOST_EXPORTS): New variables.
	(EXTRA_BOOTSTRAP_FLAGS): Likewise.
	(check-[+module+]): Add EXTRA_HOST_EXPORTS and EXTRA_BOOTSTRAP_FLAGS.
	* Makefile.in: Regenerate.

	libiberty/
	* testsuite/Makefile.in (LIBCFLAGS): Add LDFLAGS.

From-SVN: r222099
2015-04-14 19:14:04 +03:00
Nick Clifton
5751fb330d expr.c (expand_assignment): Force an address offset computation into a register before changing its mode.
* expr.c (expand_assignment): Force an address offset computation
	into a register before changing its mode.
	(expand_expr_real_1): Likewise.

From-SVN: r222098
2015-04-14 16:12:34 +00:00
Jason Merrill
fb899e32c1 re PR c++/65695 (NSDMI calling constexpr constructor with pointer-to-member is not a constant expression)
PR c++/65695
	* cvt.c (cp_fold_convert): Avoid wrapping PTRMEM_CST in NOP_EXPR.

From-SVN: r222097
2015-04-14 12:02:41 -04:00
Jason Merrill
0f19e7adef re PR c++/65721 (Internal compiler error segmentation fault)
PR c++/65721
	* name-lookup.c (do_class_using_decl): Complain about specifying
	the current class even if there are dependent bases.

From-SVN: r222096
2015-04-14 11:29:34 -04:00
David Krauss
688e531e4b re PR c++/59766 (c++1y: declaring friend function with 'auto' return type deduction is rejected with bogus reason)
PR c++/59766
	* decl.c (grokdeclarator): Do not flag friends with deduced return.

From-SVN: r222095
2015-04-14 11:29:27 -04:00
Momchil Velikov
2fd16d0f90 re PR c++/60994 (gcc does not recognize hidden/shadowed enumeration as valid nested-name-specifier)
PR c++/60994
	* parser.c (cp_parser_class_name): Add enum_ok parameter.
	(cp_parser_qualifying_entity): Use it instead of cp_parser_type_name.
	(cp_parser_diagnose_invalid_type_name): Don't assume a template is
	a class template.

Co-Authored-By: Jason Merrill <jason@redhat.com>

From-SVN: r222094
2015-04-14 11:29:21 -04:00
H.J. Lu
b42e706455 Add the missing file
From-SVN: r222093
2015-04-14 08:04:45 -07:00
Alan Lawrence
5543f9411c [AArch64 Intrinsics] Replace temporary assembler for vst1_lane
* config/aarch64/arm_neon.h (vst1_lane_f32, vst1_lane_f64,
	vst1_lane_p8, vst1_lane_p16, vst1_lane_s8, vst1_lane_s16,
	vst1_lane_s32, vst1_lane_s64, vst1_lane_u8, vst1_lane_u16,
	vst1_lane_u32, vst1_lane_u64, vst1q_lane_f32, vst1q_lane_f64,
	vst1q_lane_p8, vst1q_lane_p16, vst1q_lane_s8, vst1q_lane_s16,
	vst1q_lane_s32, vst1q_lane_s64, vst1q_lane_u8, vst1q_lane_u16,
	vst1q_lane_u32, vst1q_lane_u64): Reimplement with pointer dereference
	and __aarch64_vget_lane_any.

From-SVN: r222092
2015-04-14 13:59:06 +00:00
Jakub Jelinek
b3a3ae0934 re PR rtl-optimization/65761 (internal compiler error: in patch_jump_insn, at cfgrtl.c:1296)
PR rtl-optimization/65761
	* cfgrtl.c (rtl_split_edge): For EDGE_CROSSING split, use
	get_last_bb_insn (after) instead of NEXT_INSN (BB_END (after)).

From-SVN: r222090
2015-04-14 15:24:53 +02:00
H.J. Lu
1b4c5bf0fb Add bootstrap-mpx.mk
* bootstrap-mpx.mk: New file.

From-SVN: r222088
2015-04-14 05:45:34 -07:00
Richard Biener
6f72f1437a graphite-scop-detection.c: Do not include cp/cp-tree.h.
2015-04-14  Richard Biener  <rguenther@suse.de>

	* graphite-scop-detection.c: Do not include cp/cp-tree.h.
	(graphite_can_represent_scev): Use POINTER_TYPE_P.

From-SVN: r222087
2015-04-14 12:33:57 +00:00
Richard Biener
ab05af624e re PR middle-end/65758 (191.fma3d in SPEC CPU 200 failed to build)
2015-04-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65758
	* tree-ssa-ccp.c (get_value_from_alignment): Adjust mask test
	against -1.
	(ccp_lattice_meet): Likewise.
	(bit_value_unop): Likewise.
	(bit_value_binop): Likewise.
	(bit_value_assume_aligned): Likewise.

	* gfortran.fortran-torture/compile/pr65758.f90: New testcase.

From-SVN: r222085
2015-04-14 12:17:05 +00:00
Christian Bruel
703fa2e609 15-04-14 Christian Bruel <christian.bruel@st.com>
* execute_dwarf2_frame (dw_frame_pointer_regnum): Reinitialize for each
	function.

From-SVN: r222084
2015-04-14 14:14:04 +02:00
Yvan Roux
4db56dfe7a Add missing testcase.
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

	PR target/65648
	* gcc.c-torture/execute/pr65648.c: New test.

From-SVN: r222083
2015-04-14 12:12:29 +00:00
Marc Glisse
194571f10e re PR libstdc++/61347 (std::distance(list.first(),list.end()) in O(1))
2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/61347
	* include/bits/stl_iterator_base_funcs.h (_List_iterator,
	_List_const_iterator): Declare.
	(__distance): Declare new overloads for _List_iterator and
	_List_const_iterator.
	* include/bits/stl_list.h (__distance): New overloads for
	_List_iterator and _List_const_iterator.
	* testsuite/23_containers/list/61347.cc: New testcase.

From-SVN: r222082
2015-04-14 11:02:48 +00:00
Jonathan Wakely
453e2916ce evolution.xml: Fix typos.
* doc/xml/manual/evolution.xml: Fix typos.
	* doc/html/manual/api.html: Regenerate.

From-SVN: r222081
2015-04-14 11:08:58 +01:00
Rainer Orth
4e9b683359 Avoid finite in gcc.target/i386/avx512dq-vfpclasspd-2.c etc.
* gcc.target/i386/avx512dq-vfpclasspd-2.c (check_fp_class_dp): Use
	__builtin_finite instead of finite.
	* gcc.target/i386/avx512dq-vfpclassps-2.c (check_fp_class_sp):
	Likewise.

From-SVN: r222079
2015-04-14 09:22:28 +00:00
Marc Glisse
cfdc4f334d re PR other/63387 (Optimize pairs of isnan() calls into a single isunordered())
2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/63387
gcc/
	* match.pd ((x unord x) | (y unord y) -> (x unord y),
	(x unord x) | (x unord y) -> (x unord y)): New simplifications.
gcc/testsuite/
	* gcc.dg/pr63387.c: New testcase.

From-SVN: r222077
2015-04-14 08:49:16 +00:00
Uros Bizjak
55d2ee5737 predicates.md (any_QIreg_operand): Rename from q_regs_operand.
* config/i386/predicates.md (any_QIreg_operand): Rename from
	q_regs_operand.  Do not process subregs.
	(QIreg_operand): Use QI_REGNO_P predicate.
	(ext_QIreg_operand): Ditto.
	(ext_register_operand): Ditto.
	* config/i386/i386.md (TEST splitters): Use QIreg_operand predicate.
	(AND splitters): Ditto.
	(AND with -65536 splitter): Add SWI48 mode for operand 0.
	(AND with -256 splitter): Use any_QIreg_operand predicate and
	SWI248 mode for operand 0.
	(AND with -65281 splitter): Use QIreg_operand predicate and SWI248
	mode for operand 0.
	(SETCC + MOVZBL peepholes): Update for renamed any_QIreg_operand.

From-SVN: r222076
2015-04-14 07:04:03 +02:00
Hans-Peter Nilsson
0357625940 Fix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc as...
Fix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc
as reported at <http://gcc.gnu.org/ml/gcc-patches/2015-04/msg00543.html>.

	* testsuite/29_atomics/atomic/62259.cc: Assert atomic
	alignment is larger-equal, not equal, to default alignment.

From-SVN: r222072
2015-04-14 00:37:57 +00:00
GCC Administrator
a2bb9b6bf0 Daily bump.
From-SVN: r222070
2015-04-14 00:16:14 +00:00
Gerald Pfeifer
da3831fdea * doc/plugins.texi: Rewrite first introductory paragraph.
From-SVN: r222065
2015-04-13 23:31:10 +00:00
Joseph Myers
272ccea97c gcc.pot: Regenerate.
gcc/po:
	* gcc.pot: Regenerate.

libcpp/po:
	* cpplib.pot: Regenerate.

From-SVN: r222061
2015-04-13 21:10:53 +01:00