aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2014-06-09PR/61062 Fix arm_neon.h ZIP/UZP/TRN for bigendian.Alan Lawrence4-119/+517
gcc/ChangeLog: * config/arm/arm_neon.h (vtrn_s8, vtrn_s16, vtrn_u8, vtrn_u16, vtrn_p8, vtrn_p16, vtrn_s32, vtrn_f32, vtrn_u32, vtrnq_s8, vtrnq_s16, vtrnq_s32, vtrnq_f32, vtrnq_u8, vtrnq_u16, vtrnq_u32, vtrnq_p8, vtrnq_p16, vzip_s8, vzip_s16, vzip_u8, vzip_u16, vzip_p8, vzip_p16, vzip_s32, vzip_f32, vzip_u32, vzipq_s8, vzipq_s16, vzipq_s32, vzipq_f32, vzipq_u8, vzipq_u16, vzipq_u32, vzipq_p8, vzipq_p16, vuzp_s8, vuzp_s16, vuzp_s32, vuzp_f32, vuzp_u8, vuzp_u16, vuzp_u32, vuzp_p8, vuzp_p16, vuzpq_s8, vuzpq_s16, vuzpq_s32, vuzpq_f32, vuzpq_u8, vuzpq_u16, vuzpq_u32, vuzpq_p8, vuzpq_p16): Correct mask for bigendian. gcc/testsuite/ChangeLog: * gcc.target/arm/pr48252.c (main): Expect same result as endian-neutral. From-SVN: r211369
2014-06-09re PR fortran/36096 (F2008 Bessel: Documentation/diagnostic errors)Francois-Xavier Coudert2-9/+13
PR fortran/36096 * intrinsic.texi: Fix documentation of BESSEL_J0, BESSEL_J1, BESSEL_Y0, and BESSEL_Y1. From-SVN: r211368
2014-06-09re PR fortran/45187 (ICE with CRAY pointer in module)Francois-Xavier Coudert4-2/+31
PR fortran/45187 * trans-decl.c (gfc_create_module_variable): Don't create Cray-pointee decls twice. * gfortran.dg/cray_pointers_10.f90: New file. From-SVN: r211367
2014-06-09udr6.f90 (f1, f2, f3): Use complex(kind=8) instead of complex(kind=16).Jakub Jelinek2-3/+8
* gfortran.dg/gomp/udr6.f90 (f1, f2, f3): Use complex(kind=8) instead of complex(kind=16). From-SVN: r211366
2014-06-09* tree-core.h (tree_decl_with_vis): Remove section_name.Jan Hubicka2-1/+4
From-SVN: r211365
2014-06-09ira.c (ira): Don't call init_caller_save if LRA enabled since LRA use its ↵Kito Cheng2-1/+7
own infrastructure... * ira.c (ira): Don't call init_caller_save if LRA enabled since LRA use its own infrastructure to handle that. From-SVN: r211364
2014-06-09symtab.c (dump_symtab_base): Update dumping.Jan Hubicka45-88/+269
* symtab.c (dump_symtab_base): Update dumping. (symtab_make_decl_local): Clear only DECL_COMDAT. * tree-vect-data-refs.c (Check that variable is static before tampering with sections. * cgraphclones.c (duplicate_thunk_for_node): Do not clear section name. (cgraph_create_virtual_clone): Likewise. * tree.c (decl_comdat_group, decl_comdat_group_id): Constify argument. (decl_section_name, set_decl_section_name): New accessors. (find_decls_types_r): Do not walk section name * tree.h (DECL_SECTION_NAME): Implement using decl_section_name. (decl_comdat_group, decl_comdat_group_id): Constify. (decl_section_name, set_decl_section_name): Update. * varpool.c (varpool_finalize_named_section_flags): Use get_section. * cgraph.c (cgraph_add_thunk): Reset node instead of rebuilding. (cgraph_make_node_local_1): Clear section and comdat group. * cgraph.h (set_comdat_group): Sanity check. (get_section, set_section): New. * ipa-comdats.c (ipa_comdats): Use get_section. * ipa.c (ipa_discover_readonly_nonaddressable_var): Likewise. * lto-streamer-out.c: Do not follow section names. * c-family/c-common.c (handle_section_attribute): Update. * lto-cgraph.c (lto_output_node): Output section. (lto_output_varpool_node): Likewise. (read_comdat_group): Rename to ... (read_identifier): ... this one. (read_string_cst): New function. (input_node, input_varpool_node): Input section names. * tree-emutls.c (get_emutls_init_templ_addr): Update. (new_emutls_decl): Update. (secname_for_decl): Check section names only of static vars. * config/mep/mep.c (mep_unique_section): Use set_decl_section_name. * config/i386/winnt.c (i386_pe_unique_section): Likewise. * config/i386/i386.c (x86_64_elf_unique_section): Likewise. * config/c6x/c6x.c (c6x_elf_unique_section): Likewise. * config/rs6000/rs6000.c (rs6000_xcoff_unique_section): Likewise. * config/mcore/mcore.c (mcore_unique_section): Likewise. * config/mips/mips.c (mips16_build_function_stub): Likewise. * config/v850/v850.c (v850_insert_attributes): Likewise. * config/h8300/h8300.c: (h8300_handle_eightbit_data_attribute): Likewise. (h8300_handle_tiny_data_attribute): Likewise. * config/bfin/bfin.c (bfin_handle_l1_text_attribute): Likewise. (bfin_handle_l2_attribute): Likewise. * tree-streamer-in.c (lto_input_ts_decl_with_vis_tree_pointers): Do not read section name. * lto.c (mentions_vars_p_decl_with_vis, compare_tree_sccs_1, lto_fixup_prevailing_decls): Skip section names. * go-gcc.cc (global_variable_set_init): Use set_decl_section_name. * gcc-interface/utils.c (process_attributes): Use it. * c-decl.c (merge_decls): Use set_decl_section_name. (duplicate_decls): Remove node if it exists. * class.c (build_utf8_ref): Use set_decl_section_name. (emit_register_classes_in_jcr_section): Likewise. (emit_register_classes_in_jcr_section): Likewise. * method.c (use_thunk): Use set_decl_section_name. * optimize.c (maybe_clone_body): Use set_decl_section_name. * decl.c (duplicate_decls): Likewise. * vtable-class-hierarchy.c: Likewise. From-SVN: r211363
2014-06-09Daily bump.GCC Administrator1-1/+1
From-SVN: r211362
2014-06-08symtab.c (symtab_nonoverwritable_alias): Copy VIRTUAL flag; remove static ↵Jan Hubicka2-1/+9
initializer. * symtab.c (symtab_nonoverwritable_alias): Copy VIRTUAL flag; remove static initializer. From-SVN: r211358
2014-06-08varasm.c (use_blocks_for_decl_p): Check symbol table instead of alias attribute.Jan Hubicka2-1/+13
* varasm.c (use_blocks_for_decl_p): Check symbol table instead of alias attribute. (place_block_symbol): Recurse on aliases. From-SVN: r211357
2014-06-08ipa-visibility.c: Include varasm.hJan Hubicka2-0/+7
* ipa-visibility.c: Include varasm.h (can_replace_by_local_alias): Ceck decl_binds_to_current_def_p. From-SVN: r211356
2014-06-08re PR fortran/38829 (Bogus BIND(C) error message)Francois-Xavier Coudert2-0/+20
PR fortran/38829 * gfortran.dg/bind_c_usage_29.f90: New file. From-SVN: r211354
2014-06-08cgraphunit.c (assemble_thunks_and_aliases): Expand thunks before outputting ↵Jan Hubicka2-1/+6
aliases. * cgraphunit.c (assemble_thunks_and_aliases): Expand thunks before outputting aliases. From-SVN: r211352
2014-06-08Daily bump.GCC Administrator1-1/+1
From-SVN: r211351
2014-06-07gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers from ↵Steven Bosscher2-7/+17
test_insn into GGC space escape via SET_SRC. * gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers from test_insn into GGC space escape via SET_SRC. From-SVN: r211347
2014-06-07tree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a call ↵Eric Botcazou6-6/+74
statement, if any. * tree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a call statement, if any. (gimple_equal_p) <GIMPLE_CALL>: Compare the static chain of the call statements, if any. Tidy up. From-SVN: r211342
2014-06-07Daily bump.GCC Administrator1-1/+1
From-SVN: r211339
2014-06-06re PR target/18343 (mmix-knuth-mmixware testsuite failure: ↵Hans-Peter Nilsson2-1/+16
gcc.dg/builtin-return-1.c) PR target/18343 * gcc.dg/torture/stackalign/builtin-return-1.c (STACK_ARGUMENTS_SIZE): New macro, 0 for __MMIX__, default 64. (bar): Pass it to __builtin_apply instead of literal 64. From-SVN: r211333
2014-06-06re PR target/61431 (Powerpc tests pack01.c and p8vector-int128-2.c fail on ↵Michael Meissner2-17/+40
little endian power8 systems) 2014-06-06 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/61431 * config/rs6000/vsx.md (VSX_LE): Split VSX_D into 2 separate iterators, VSX_D that handles 64-bit types, and VSX_LE that handles swapping the two 64-bit double words on little endian systems. Include V1TImode and optionally TImode in VSX_LE so that these types are properly swapped. Change all of the insns and splits that do the 64-bit swaps to use VSX_LE. (vsx_le_perm_load_<mode>): Likewise. (vsx_le_perm_store_<mode>): Likewise. (splitters for little endian memory operations): Likewise. (vsx_xxpermdi2_le_<mode>): Likewise. (vsx_lxvd2x2_le_<mode>): Likewise. (vsx_stxvd2x2_le_<mode>): Likewise. From-SVN: r211329
2014-06-06libgo: Merge to master revision 19184.Ian Lance Taylor3-7/+7
The next revision, 19185, renames several runtime files, and will be handled in a separate change. From-SVN: r211328
2014-06-06io.c (resolve_tag): Warn on non-default kind for NUMBER...Francois-Xavier Coudert6-3/+124
* io.c (resolve_tag): Warn on non-default kind for NUMBER, NEXTREC, RECL, NAMED, OPENED and PENDING I/O specifiers. * gfortran.dg/io_constraints_11.f90: New file. * gfortran.dg/io_constraints_12.f90: New file. * gfortran.dg/io_constraints_13.f90: New file. From-SVN: r211323
2014-06-06re PR target/61423 (Incorrect conversion from unsigned int to floating point)Uros Bizjak4-50/+74
PR target/61423 * config/i386/i386.md (*floatunssi<mode>2_i387_with_xmm): New define_insn_and_split pattern, merged from *floatunssi<mode>2_1 and corresponding splitters. Zero extend general register or memory input operand to XMM temporary. Enable for TARGET_SSE2 and TARGET_INTER_UNIT_MOVES_TO_VEC only. (floatunssi<mode>2): Update expander predicate. testsuite/ChangeLog: PR target/61423 * gcc.target/i386/pr61423.c: New test. From-SVN: r211321
2014-06-06re PR rtl-optimization/61325 (aarch64_be build fails)Vladimir Makarov2-0/+13
2014-06-06 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/61325 * lra-constraints.c (process_address_1): Check scale equal to one to prevent transformation: base + scale * index => base + new_reg. From-SVN: r211320
2014-06-06re PR c++/60184 (g++ does not allow static members of named unions)Paolo Carlini7-9/+56
/cp 2014-06-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60184 * class.c (check_field_decls): In C++11 mode do not reject static data members and reference-type members in unions. /testsuite 2014-06-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60184 * g++.dg/cpp0x/constexpr-union6.C: New. * g++.dg/cpp0x/union6.C: Likewise. * g++.dg/init/ref14.C: Adjust. * g++.dg/init/union1.C: Likewise. From-SVN: r211318
2014-06-06re PR tree-optimization/59299 (We do not sink loads)Richard Biener4-51/+107
2014-06-06 Richard Biener <rguenther@suse.de> PR tree-optimization/59299 * tree-ssa-sink.c (all_immediate_uses_same_place): Work on a def operand. (nearest_common_dominator_of_uses): Likewise. (statement_sink_location): Adjust. Support sinking loads. * gcc.dg/tree-ssa/ssa-sink-10.c: New testcase. From-SVN: r211317
2014-06-06ipa-prop.c (get_place_in_agg_contents_list): New function.Martin Jambor2-54/+80
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[AArch64] Implement movmem for the benefit of inline memcpyJames Greenhalgh8-8/+202
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-06bswap-2.c: Add alignment constraints to bitfield and test wrong results ↵Thomas Preud'homme2-2/+17
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-06re PR c++/60432 (Member pointer resolution within class definition causes ↵Paolo Carlini2-0/+13
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-06targhooks.c (default_add_stmt_cost): Call target specific hook instead of ↵Bingfeng Mei2-2/+7
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-06re PR c++/60199 ('error: field initializer is not constant' when ↵Paolo Carlini2-0/+16
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-06ChangeLog (2014-05-23): Fix ChangeLog entry to refer to target endianness ↵Thomas Preud'homme7-11/+27
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-06re PR debug/53927 (wrong value for DW_AT_static_link)Eric Botcazou3-2/+40
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* tree-cfg.c (make_edges) <GIMPLE_RETURN>: Put a location on the edge.Eric Botcazou2-2/+9
From-SVN: r211307
2014-06-06cfgexpand.c (expand_gimple_cond): Remove check for current_loops.Richard Biener19-94/+76
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-06rtl.h (insn_location): Declare.Eric Botcazou7-21/+46
* 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-06passes.def: Move 2nd VRP pass before phi-only-cprop.Richard Biener2-3/+8
2014-06-06 Richard Biener <rguenther@suse.de> * passes.def: Move 2nd VRP pass before phi-only-cprop. From-SVN: r211304
2014-06-06dump-parse-tree.c (show_omp_namelist): Dump reduction id in each list item.Jakub Jelinek23-291/+2225
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-06re PR tree-optimization/43934 (LIM should handle PHI nodes)Christian Bruel4-1/+37
PR tree-optimization/43934 * tree-ssa-loop-im.c (determine_max_movement): Add PHI def constant cost. From-SVN: r211302
2014-06-06ChangeLog entry correction.Marcus Shawcroft1-1/+2
Correcting one of the ChangeLog entries committed earlier to recognize that RenLin Lee also contributed to the patch. From-SVN: r211301
2014-06-06ira-lives.c (single_reg_class): Add missing break.Richard Sandiford2-1/+22
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-06pr61391.c: Fix test.Kirill Yukhin1-1/+1
gcc/testsuite/ * gcc.dg/torture/pr61391.c: Fix test. From-SVN: r211298
2014-06-06re PR target/61300 (powerpc64le miscompile with K&R-style function ↵Alan Modra7-21/+92
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-06Daily bump.GCC Administrator1-1/+1
From-SVN: r211294
2014-06-05re PR c++/43453 (Initialization of char array with string literal fails in ↵Jason Merrill3-16/+16
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-05re PR c/53119 (-Wmissing-braces wrongly warns about universal zero ↵S. Gilles4-14/+61
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-05re PR debug/52472 (ICE: in convert_debug_memory_address, at cfgexpand.c:2491)Senthil Kumar Selvaraj4-5/+30
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-05re PR tree-optimization/61289 (Bad jump threading generates infinite loop)Jeff Law5-88/+163
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-05re PR c++/56961 (stack overflow in gimplifier with volatile field)Richard Biener4-12/+34
/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-05parser.c (cp_parser_diagnose_invalid_type_name): Give helpful note for ↵Jason Merrill2-0/+10
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