Commit Graph

130409 Commits

Author SHA1 Message Date
Martin Jambor 0d48ee3470 ipa-prop.c (get_place_in_agg_contents_list): New function.
2014-06-06  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (get_place_in_agg_contents_list): New function.
	(build_agg_jump_func_from_list): Likewise.
	(determine_known_aggregate_parts): Renamed to
	determine_locally_known_aggregate_parts.  Moved some functionality
	to the two functions above, removed bound checks.

From-SVN: r211315
2014-06-06 15:26:24 +02:00
James Greenhalgh e2c75eea66 [AArch64] Implement movmem for the benefit of inline memcpy
gcc/

	* config/aarch64/aarch64-protos.h (aarch64_expand_movmem): New.
	* config/aarch64/aarch64.c (aarch64_move_pointer): New.
	(aarch64_progress_pointer): Likewise.
	(aarch64_copy_one_part_and_move_pointers): Likewise.
	(aarch64_expand_movmen): Likewise.
	* config/aarch64/aarch64.h (MOVE_RATIO): Set low.
	* config/aarch64/aarch64.md (movmem<mode>): New.

gcc/testsuite/

	* gcc.dg/tree-ssa/pr42585.c: Skip for AArch64.
	* gcc.dg/tree-ssa/sra-12.c: Likewise.

From-SVN: r211314
2014-06-06 13:16:40 +00:00
Thomas Preud'homme 4ed6899575 bswap-2.c: Add alignment constraints to bitfield and test wrong results instead of correct...
2014-06-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * gcc.c-torture/execute/bswap-2.c: Add alignment constraints to
    bitfield and test wrong results instead of correct results to make the
    test more portable.

From-SVN: r211313
2014-06-06 10:42:50 +00:00
Paolo Carlini 506ac72b86 re PR c++/60432 (Member pointer resolution within class definition causes segmentation fault)
2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60432
	* g++.dg/cpp0x/constexpr-60432.C: New.

From-SVN: r211312
2014-06-06 10:00:55 +00:00
Bingfeng Mei 58e5400aec targhooks.c (default_add_stmt_cost): Call target specific hook instead of default one.
2014-06-06  Bingfeng Mei  <bmei@broadcom.com>

	* targhooks.c (default_add_stmt_cost): Call target specific
	hook instead of default one.

From-SVN: r211311
2014-06-06 09:52:51 +00:00
Paolo Carlini f185af3614 re PR c++/60199 ('error: field initializer is not constant' when initializing static member function pointer to a function)
2014-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60199
	* g++.dg/cpp0x/constexpr-60199.C: New.

From-SVN: r211310
2014-06-06 09:52:33 +00:00
Thomas Preud'homme 581263689a ChangeLog (2014-05-23): Fix ChangeLog entry to refer to target endianness instead of host endianness.
2014-06-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * ChangeLog (2014-05-23): Fix ChangeLog entry to refer to target
      endianness instead of host endianness.
    * tree-ssa-math-opts.c (find_bswap_or_nop_1): Likewise in dumps and
      comments.

    gcc/testsuite/
    * gcc.dg/optimize-bswaphi-1.c: Adapt test to change of dump output.
      Specify -march=z900 as an additional option.
    * gcc.dg/optimize-bswapsi-1.c: Likewise for s390 options.
    * gcc.dg/optimize-bswapsi-2.c: Likewise.
    * gcc.dg/optimize-bswapdi-3.c: Likewise for adaptation to dump change.

From-SVN: r211309
2014-06-06 08:23:16 +00:00
Eric Botcazou 3fd48b121a re PR debug/53927 (wrong value for DW_AT_static_link)
PR debug/53927
	* function.c (instantiate_decls): Process the saved static chain.
	(expand_function_start): If not optimizing, save the static chain
	onto the stack.
	* tree-nested.c (convert_all_function_calls): Always create the static
	chain for nested functions if not optimizing.

From-SVN: r211308
2014-06-06 08:13:24 +00:00
Eric Botcazou 9b7a11e153 * tree-cfg.c (make_edges) <GIMPLE_RETURN>: Put a location on the edge.
From-SVN: r211307
2014-06-06 07:39:53 +00:00
Richard Biener 726338f44e cfgexpand.c (expand_gimple_cond): Remove check for current_loops.
2014-06-06  Richard Biener  <rguenther@suse.de>

	* cfgexpand.c (expand_gimple_cond): Remove check for current_loops.
	(construct_init_block): Likewise.
	(construct_exit_block): Likewise.
	(pass_expand::execute): Likewise.
	* graphite.c (graphite_transforms): Replace check for current_loops
	with a check for > 1 loops.
	(pass_graphite_transforms::execute): Adjust.
	* ipa-split.c (split_function): Remove check for current_loops.
	* omp-low.c (expand_parallel_call): Likewise.
	(expand_omp_for_init_counts): Likewise.
	(extract_omp_for_update_vars): Likewise.
	(expand_omp_for_generic): Likewise.
	(expand_omp_sections): Likewise.
	(expand_omp_target): Likewise.
	* tracer.c (tail_duplicate): Likewise.
	(pass_tracer::execute): Likewise.
	* trans-mem.c (expand_transaction): Likewise.
	* tree-complex.c (expand_complex_div_wide): Likewise.
	* tree-eh.c (lower_resx): Likewise.
	(cleanup_empty_eh_merge_phis): Likewise.
	* tree-predcom.c (run_tree_predictive_commoning): Replace check for
	current_loops with a check for > 1 loops.
	(pass_predcom::execute): Adjust.
	* tree-scalar-evolution.c (scev_reset): Remove check for current_loops.
	* tree-ssa-copy.c (copy_prop_visit_phi_node): Likewise.
	* tree-ssa-dom.c (pass_phi_only_cprop::execute): Likewise.
	* tree-ssa-tail-merge.c (tail_merge_optimize): Likewise.
	* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.
	* tree-switch-conversion.c (process_switch): Likewise.
	* tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
	* tree-vrp.c (vrp_visit_phi_node): Likewise.
	(execute_vrp): Likewise.
	* ubsan.c (ubsan_expand_null_ifn): Likewise.

From-SVN: r211306
2014-06-06 07:38:07 +00:00
Eric Botcazou ffa4602f4d rtl.h (insn_location): Declare.
* rtl.h (insn_location): Declare.
	* cfgcleanup.c (try_forward_edges): Compare the locus of locations
	with UNKNOWN_LOCATION.
	* emit-rtl.c (insn_location): New function.
	* final.c (notice_source_line): Check that the instruction has a
	location before retrieving it and use insn_location.
	* modulo-sched.c (loop_single_full_bb_p): Likewise.
	* print-rtl.c (print_rtx): Likewise.

From-SVN: r211305
2014-06-06 07:32:25 +00:00
Richard Biener 28a4a292fc passes.def: Move 2nd VRP pass before phi-only-cprop.
2014-06-06  Richard Biener  <rguenther@suse.de>

	* passes.def: Move 2nd VRP pass before phi-only-cprop.

From-SVN: r211304
2014-06-06 07:29:45 +00:00
Jakub Jelinek 5f23671d3f dump-parse-tree.c (show_omp_namelist): Dump reduction id in each list item.
gcc/fortran/
	* dump-parse-tree.c (show_omp_namelist): Dump reduction
	id in each list item.
	(show_omp_node): Only handle OMP_LIST_REDUCTION, not
	OMP_LIST_REDUCTION_FIRST .. OMP_LIST_REDUCTION_LAST.  Don't
	dump reduction id here.
	* frontend-passes.c (dummy_code_callback): Renamed to...
	(gfc_dummy_code_callback): ... this.  No longer static.
	(optimize_reduction): Use gfc_dummy_code_callback instead of
	dummy_code_callback.
	* gfortran.h (gfc_statement): Add ST_OMP_DECLARE_REDUCTION.
	(symbol_attribute): Add omp_udr_artificial_var bitfield.
	(gfc_omp_reduction_op): New enum.
	(gfc_omp_namelist): Add rop and udr fields.
	(OMP_LIST_PLUS, OMP_LIST_REDUCTION_FIRST, OMP_LIST_MULT,
	OMP_LIST_SUB, OMP_LIST_AND, OMP_LIST_OR, OMP_LIST_EQV,
	OMP_LIST_NEQV, OMP_LIST_MAX, OMP_LIST_MIN, OMP_LIST_IAND,
	OMP_LIST_IOR, OMP_LIST_IEOR, OMP_LIST_REDUCTION_LAST): Removed.
	(OMP_LIST_REDUCTION): New.
	(gfc_omp_udr): New type.
	(gfc_get_omp_udr): Define.
	(gfc_symtree): Add n.omp_udr field.
	(gfc_namespace): Add omp_udr_root field, add omp_udr_ns bitfield.
	(gfc_free_omp_udr, gfc_omp_udr_find, gfc_resolve_omp_udrs,
	gfc_dummy_code_callback): New prototypes.
	* match.h (gfc_match_omp_declare_reduction): New prototype.
	* module.c (MOD_VERSION): Increase to 13.
	(omp_declare_reduction_stmt): New array.
	(mio_omp_udr_expr, write_omp_udr, write_omp_udrs, load_omp_udrs):
	New functions.
	(read_module): Read OpenMP user defined reductions.
	(write_module): Write OpenMP user defined reductions.
	* openmp.c: Include arith.h.
	(gfc_free_omp_udr, gfc_find_omp_udr): New functions.
	(gfc_match_omp_clauses): Handle user defined reductions.
	Store reduction kind into gfc_omp_namelist instead of using
	several OMP_LIST_* entries.
	(match_udr_expr, gfc_omp_udr_predef, gfc_omp_udr_find,
	gfc_match_omp_declare_reduction): New functions.
	(resolve_omp_clauses): Adjust for reduction clauses being only
	in OMP_LIST_REDUCTION list.  Diagnose missing UDRs.
	(struct omp_udr_callback_data): New type.
	(omp_udr_callback, gfc_resolve_omp_udr, gfc_resolve_omp_udrs): New
	functions.
	* parse.c (decode_omp_directive): Handle !$omp declare reduction.
	(case_decl): Add ST_OMP_DECLARE_REDUCTION.
	(gfc_ascii_statement): Print ST_OMP_DECLARE_REDUCTION.
	* resolve.c (resolve_fl_variable): Allow len=: or len=* on
	sym->attr.omp_udr_artificial_var symbols.
	(resolve_types): Call gfc_resolve_omp_udrs.
	* symbol.c (gfc_get_uop): If gfc_current_ns->omp_udr_ns,
	use parent ns instead of gfc_current_ns.
	(gfc_get_sym_tree): Don't insert symbols into
	namespaces with omp_udr_ns set.
	(free_omp_udr_tree): New function.
	(gfc_free_namespace): Call it.
	* trans-openmp.c (struct omp_udr_find_orig_data): New type.
	(omp_udr_find_orig, gfc_trans_omp_udr_expr): New functions.
	(gfc_trans_omp_array_reduction): Renamed to...
	(gfc_trans_omp_array_reduction_or_udr): ... this.  Remove SYM
	argument, instead pass gfc_omp_namelist pointer N.  Handle
	user defined reductions.
	(gfc_trans_omp_reduction_list): Remove REDUCTION_CODE argument.
	Handle user defined reductions and reduction ops in gfc_omp_namelist.
	(gfc_trans_omp_clauses): Adjust for just a single OMP_LIST_REDUCTION
	list.
	(gfc_split_omp_clauses): Likewise.
gcc/testsuite/
	* gfortran.dg/gomp/allocatable_components_1.f90: Adjust for
	reduction clause diagnostic changes.
	* gfortran.dg/gomp/appendix-a/a.31.3.f90: Likewise.
	* gfortran.dg/gomp/reduction1.f90: Likewise.
	* gfortran.dg/gomp/reduction3.f90: Likewise.
	* gfortran.dg/gomp/udr1.f90: New test.
	* gfortran.dg/gomp/udr2.f90: New test.
	* gfortran.dg/gomp/udr3.f90: New test.
	* gfortran.dg/gomp/udr4.f90: New test.
	* gfortran.dg/gomp/udr5.f90: New test.
	* gfortran.dg/gomp/udr6.f90: New test.
	* gfortran.dg/gomp/udr7.f90: New test.
libgomp/
	* testsuite/libgomp.fortran/simd1.f90: New test.
	* testsuite/libgomp.fortran/udr1.f90: New test.
	* testsuite/libgomp.fortran/udr2.f90: New test.
	* testsuite/libgomp.fortran/udr3.f90: New test.
	* testsuite/libgomp.fortran/udr4.f90: New test.
	* testsuite/libgomp.fortran/udr5.f90: New test.
	* testsuite/libgomp.fortran/udr6.f90: New test.
	* testsuite/libgomp.fortran/udr7.f90: New test.
	* testsuite/libgomp.fortran/udr8.f90: New test.
	* testsuite/libgomp.fortran/udr9.f90: New test.
	* testsuite/libgomp.fortran/udr10.f90: New test.
	* testsuite/libgomp.fortran/udr11.f90: New test.

From-SVN: r211303
2014-06-06 09:24:38 +02:00
Christian Bruel d969f3c163 re PR tree-optimization/43934 (LIM should handle PHI nodes)
PR tree-optimization/43934
* tree-ssa-loop-im.c (determine_max_movement): Add PHI def constant cost.

From-SVN: r211302
2014-06-06 09:21:02 +02:00
Marcus Shawcroft 4a450ea0d1 ChangeLog entry correction.
Correcting one of the ChangeLog entries committed earlier to recognize
that RenLin Lee also contributed to the patch.

From-SVN: r211301
2014-06-06 07:03:29 +00:00
Richard Sandiford b58923e2a9 ira-lives.c (single_reg_class): Add missing break.
gcc/
	* ira-lives.c (single_reg_class): Add missing break.  Explicitly
	return NO_REGS for extra address and memory constraints.  Handle
	operands that match (or are equivalent to something that matches)
	extra constant constraints.  Ignore other non-register operands.

From-SVN: r211300
2014-06-06 06:59:22 +00:00
Kirill Yukhin 3def9a9769 pr61391.c: Fix test.
gcc/testsuite/
	* gcc.dg/torture/pr61391.c: Fix test.

From-SVN: r211298
2014-06-06 05:31:26 +00:00
Alan Modra ddbb449ffe re PR target/61300 (powerpc64le miscompile with K&R-style function definition at -O0)
PR target/61300
	* doc/tm.texi.in (INCOMING_REG_PARM_STACK_SPACE): Document.
	* doc/tm.texi: Regenerate.
	* function.c (INCOMING_REG_PARM_STACK_SPACE): Provide default.
	Use throughout in place of REG_PARM_STACK_SPACE.
	* config/rs6000/rs6000.c (rs6000_reg_parm_stack_space): Add
	"incoming" param.  Pass to rs6000_function_parms_need_stack.
	(rs6000_function_parms_need_stack): Add "incoming" param, ignore
	prototype_p when incoming.  Use function decl when incoming
	to handle K&R style functions.
	* config/rs6000/rs6000.h (REG_PARM_STACK_SPACE): Adjust.
	(INCOMING_REG_PARM_STACK_SPACE): Define.

From-SVN: r211296
2014-06-06 10:34:22 +09:30
GCC Administrator 424ce7d729 Daily bump.
From-SVN: r211294
2014-06-06 00:17:00 +00:00
Jason Merrill 40e3a2ab9b re PR c++/43453 (Initialization of char array with string literal fails in mem-initializer)
PR c++/43453
	* decl.c (check_initializer): Collapse a TREE_LIST here.
	* typeck2.c (store_init_value): Not here.

From-SVN: r211290
2014-06-05 16:55:44 -04:00
S. Gilles 9bac5cbb2b re PR c/53119 (-Wmissing-braces wrongly warns about universal zero initializer {0})
2014-06-05  S. Gilles  <sgilles@terpmail.umd.edu>

	PR c/53119
	* c-typeck.c (push_init_level, process_init_element,
	pop_init_level): Correct check for zero initialization, move
	missing brace warning to respect zero initialization.

	PR c/53119
	* gcc.dg/pr53119.c: New testcase.

From-SVN: r211289
2014-06-05 13:36:03 -06:00
Senthil Kumar Selvaraj a148c4b264 re PR debug/52472 (ICE: in convert_debug_memory_address, at cfgexpand.c:2491)
PR target/52472
	* cfgexpand.c (expand_debug_expr): Use address space of nested
	TREE_TYPE for ADDR_EXPR and MEM_REF.

	PR target/52472
	* gcc.target/avr/pr52472.c: New test.

From-SVN: r211288
2014-06-05 12:34:43 -06:00
Jeff Law 64e13bcd19 re PR tree-optimization/61289 (Bad jump threading generates infinite loop)
PR tree-optimization/61289
	* tree-ssa-threadedge.c (invalidate_equivalences): Remove SRC_MAP and
	DST_MAP parameters.   Invalidate by walking all the SSA_NAME_VALUES
	looking for those which match LHS.  All callers changed.
	(record_temporary_equivalences_from_phis): Remove SRC_MAP and DST_MAP
	parameters and code which manipulated them.  All callers changed.
	(record_temporary_equivalences_from_stmts_at_dest): Remove SRC_MAP
	and DST_MAP parameters.  Simplify invalidation code by just calling
	invalidate_equivalences.  All callers changed.
	(thread_across_edge): Simplify now that we don't need to maintain
	the map of equivalences to invalidate.

        PR tree-optimization/61289
	* g++.dg/pr61289.C: New test.
	* g++.dg/pr61289-2.C: New test.

From-SVN: r211287
2014-06-05 12:25:02 -06:00
Richard Biener 406d366396 re PR c++/56961 (stack overflow in gimplifier with volatile field)
/cp
2014-06-05  Richard Biener  <rguenther@suse.de>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56961
	* cp-gimplify.c (cp_gimplify_expr, [MODIFY_EXPR]): Rework
	handling of empty classes.

/testsuite
2014-06-05  Richard Biener  <rguenther@suse.de>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56961
	* g++.dg/parse/pr56961.C: New.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r211286
2014-06-05 17:34:48 +00:00
Jason Merrill da4e26be99 parser.c (cp_parser_diagnose_invalid_type_name): Give helpful note for noexcept and thread_local, too.
* parser.c (cp_parser_diagnose_invalid_type_name): Give helpful note
	for noexcept and thread_local, too.

From-SVN: r211285
2014-06-05 13:30:57 -04:00
Jason Merrill f0f2f975ac re PR c++/61343 ([C++11] Missing default initialization for class with default constructor)
PR c++/61343
	* decl.c (check_initializer): Maybe clear
	DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P.

From-SVN: r211284
2014-06-05 13:30:51 -04:00
Kai Tietz 5853e181e6 re PR target/46219 (Generate indirect jump instruction on x86-64)
2014-06-05  Kai Tietz  <ktietz@redhat.com>
	    Richard Henderson  <rth@redhat.com>

	PR target/46219
	* config/i386/predicates.md (memory_nox32_operand): Add memory_operand
	checking for !TARGET_X32.
	* config/i386/i386.md (UNSPEC_PEEPSIB): New unspec constant.
	(sibcall_intern): New define_insn, plus required peepholes.
	(sibcall_pop_intern): Likewise.
	(sibcall_value_intern): Likewise.
	(sibcall_value_pop_intern): Likewise.

2014-06-05  Kai Tietz  <ktietz@redhat.com>

	PR target/46219
	* gcc.target/i386/sibcall-4.c: Remove xfail.


Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r211283
2014-06-05 19:03:52 +02:00
Julian Brown beb219dde1 pr45094.c: Remove -mcpu=cortex-a8, dg-skip-if options.
2014-06-05  Julian Brown  <julian@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.target/arm/pr45094.c: Remove -mcpu=cortex-a8, dg-skip-if
	options.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r211282
2014-06-05 12:21:08 -04:00
Richard Biener 9803e573d3 re PR fortran/61418 (HDF5 build failure with -flto: libgfortran.spec: attempt to rename spec 'lib' to already defined spec 'liborig')
2014-06-05  Richard Biener  <rguenther@suse.de>

	PR fortran/61418
	* gfortranspec.c (spec_file): Remove.
	(find_spec_file): Likewise.
	(lang_specific_driver): Do not look for specs file in -L
	or append -specs command line argument.
	(lang_specific_pre_link): Always %:include libgfortran.spec.

From-SVN: r211280
2014-06-05 14:27:20 +00:00
Marcus Shawcroft 1c960e02e7 [AArch64] Add frame_size and hard_fp_offset to machine.frame
From-SVN: r211275
2014-06-05 13:19:44 +00:00
Ilya Enkovich 95cc0a1aca tree-inline.c (tree_function_versioning): Check DF info existence before accessing it.
gcc/
	* tree-inline.c (tree_function_versioning): Check DF info existence
	before accessing it.

From-SVN: r211274
2014-06-05 12:58:58 +00:00
Marcus Shawcroft 2e1cdae5db [AArch64] Unify callee save slot allocation for X29 and X30.
Co-Authored-By: Jiong Wang <jiong.wang@arm.com>

From-SVN: r211273
2014-06-05 12:57:01 +00:00
Richard Biener 5ae98e828d re PR c++/61004 (Spurious warning: dereferencing type-punned pointer)
2014-06-05  Richard Biener  <rguenther@suse.de>

	PR c++/61004
	* typeck.c (cp_build_indirect_ref): Do not emit strict-aliasing
	warnings for accessing empty classes.

	* g++.dg/diagnostic/pr61004.C: New testcase.

From-SVN: r211272
2014-06-05 12:42:29 +00:00
Marcus Shawcroft 97826595b5 [AArch64] Restructure callee save slot allocation logic.
Co-Authored-By: Jiong Wang <jiong.wang@arm.com>

From-SVN: r211271
2014-06-05 12:22:07 +00:00
Marcus Shawcroft 8799637aad [AArch64] Relocate saved_varargs_size.
From-SVN: r211270
2014-06-05 11:59:05 +00:00
Marcus Shawcroft 3483442092 [AArch64] Clarify stack layout comment.
From-SVN: r211268
2014-06-05 11:37:44 +00:00
Edward Smith-Rowland 98ba748257 re PR c++/61038 (g++ -E is unusable with UDL strings)
PR c++/61038
I was asked to combine the escape logic for regular chars and strings
with the escape logic for user-defined literals chars and strings.
I just forgot the first time.

I forgot the ChangeLog!

From-SVN: r211267
2014-06-05 11:17:25 +00:00
Edward Smith-Rowland 1251f7f1ee re PR c++/61038 (g++ -E is unusable with UDL strings)
PR c++/61038
I was asked to combine the escape logic for regular chars and strings
with the escape logic for user-defined literals chars and strings.
I just forgot the first time.

From-SVN: r211266
2014-06-05 11:12:08 +00:00
Jaydeep Patil aaaa9efcb4 mips-cpus.def: Add definition for p5600.
2014-06-05  Jaydeep Patil  <Jaydeep.Patil@imgtec.com>
	    Prachi Godbole  <Prachi.Godbole@imgtec.com>

	* config/mips/mips-cpus.def: Add definition for p5600.  Updated
	mips32r5 entry to use PROCESSOR_P5600.
	* config/mips/mips-tables.opt: Regenerate.
	* config/mips/mips-protos.h (mips_fmadd_bypass): Add prototype.
	* config/mips/mips.c (mips_fmadd_bypass): New function.
	(mips_rtx_cost_data): Add costs for p5600.
	(mips_issue_rate): Add support for p5600.
	(mips_multipass_dfa_lookahead): Likewise.
	* config/mips/mips.h (TUNE_P5600): New define.
	(TUNE_MACC_CHAINS): Add TUNE_P5600.
	(MIPS_ISA_LEVEL_SPEC): Map -march=p5600 to -mips32r5.
	* config/mips/mips.md: Include p5600.md.
	(processor): Add p5600.
	* config/mips/p5600.md: New file.

Co-Authored-By: Prachi Godbole <prachi.godbole@imgtec.com>

From-SVN: r211265
2014-06-05 10:45:55 +00:00
Evgeny Stupachenko edbb074909 sse.md (*ssse3_palignr<mode>_perm): New.
gcc/
	* config/i386/sse.md (*ssse3_palignr<mode>_perm): New.
	* config/i386/predicates.md (palignr_operand): New.
	Indicates if permutation is suitable for palignr instruction.

From-SVN: r211264
2014-06-05 10:26:18 +00:00
Yuri Rumyantsev e12355efb7 re PR other/61391 (ICE in execute_one_pass at -O3 and above)
2014-06-05  Yuri Rumyantsev  <ysrumyan@gmail.com>

gcc/
	PR tree-optimization/61391
	* tree-if-conv.c (is_cond_scalar_reduction): Add missed check that
	stmt belongs to loop.

gcc/testsuite/
	* gcc.dg/torture/pr61391.c: New test.

From-SVN: r211263
2014-06-05 10:24:22 +00:00
Richard Biener 947ca6a0c8 gimplify.c (create_tmp_from_val): Remove is_formal parameter and set DECL_GIMPLE_REG_P unconditionally if appropriate.
2014-06-05  Richard Biener  <rguenther@suse.de>

	* gimplify.c (create_tmp_from_val): Remove is_formal parameter
	and set DECL_GIMPLE_REG_P unconditionally if appropriate.
	(lookup_tmp_var): Adjust.
	(prepare_gimple_addressable): Unset DECL_GIMPLE_REG_P here.

From-SVN: r211262
2014-06-05 09:53:19 +00:00
Marek Polacek 8ffcdea855 re PR c/56724 (sub-optimal location in error)
PR c/56724
	* c-typeck.c (convert_for_assignment): Use expr_loc for ic_argpass.

	* gcc.dg/pr56724-3.c: New test.

From-SVN: r211261
2014-06-05 09:35:05 +00:00
Andreas Schwab 55097f6500 * g++.dg/cpp0x/initlist86.C (main): Initialize i.
From-SVN: r211257
2014-06-05 08:09:39 +00:00
Ramana Radhakrishnan 63e70d3cfb Disable opt_enabled attribute.
2014-06-05  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/arm/arm.md (enabled): Disable opt_enabled attribute.

From-SVN: r211256
2014-06-05 07:51:31 +00:00
Marek Polacek 742938c911 re PR c/49706 (No warning for (!x > 1) which is always false)
PR c/49706
	* doc/invoke.texi: Document -Wlogical-not-parentheses.
c-family/
	* c-common.c (warn_logical_not_parentheses): New function.
	* c-common.h (warn_logical_not_parentheses): Declare.
	* c.opt (Wlogical-not-parentheses): New option.
c/
	* c-typeck.c (parser_build_binary_op): Warn when logical not is used
	on the left hand side operand of a comparison. 
cp/
	* parser.c (cp_parser_binary_expression): Warn when logical not is
	used on the left hand side operand of a comparison.
testsuite/
	* c-c++-common/pr49706.c: New test.

From-SVN: r211255
2014-06-05 06:20:05 +00:00
Marek Polacek 6447c55dea re PR c/48062 (`shadowed declaration is here' should be a note)
PR c/48062
	* c-decl.c (warn_if_shadowing): Call inform instead of warning_at.
	Print note only if the warning was printed.

	* gcc.dg/Wshadow-1.c: Use dg-message for "shadowed declaration".
	* gcc.dg/Wshadow-3.c: Likewise.
	* gcc.dg/pr48062.c: New test.

From-SVN: r211254
2014-06-05 05:30:39 +00:00
GCC Administrator 1f5dc1b6f0 Daily bump.
From-SVN: r211253
2014-06-05 00:17:16 +00:00
Ian Lance Taylor bae90c989c libgo: Merge from revision 18783:00cce3a34d7e of master library.
This revision was committed January 7, 2014.  The next
revision deleted runtime/mfinal.c.  That will be done in a
subsequent merge.

This merge changes type descriptors to add a zero field,
pointing to a zero value for that type.  This is implemented
as a common variable.

	* go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
	alignment parameters.  Permit init parameter to be NULL.

From-SVN: r211249
2014-06-04 23:15:33 +00:00
Paolo Carlini 82b3da6a71 re PR c++/43453 (Initialization of char array with string literal fails in mem-initializer)
/cp
2014-06-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43453
	* typeck.c (cp_build_modify_expr): Handle array of characters
	initialized by a string literal.
	* decl.c (check_initializer): Handle parenthesized string literal
	as initializer.
	* typeck2.c (store_init_value): Remove redundant check.

/testsuite
2014-06-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43453
	* g++.dg/init/pr43453.C: New.

From-SVN: r211248
2014-06-04 22:30:39 +00:00