- 26 Oct, 2011 13 commits
-
-
* doc/invoke.texi (sink-frequency-threshold): Document. * tree-ssa-sink.c: Include params.h. (select_best_block): New function. (statement_sink_location): Use it. * params.def (SINK_FREQUENCY_THRESHOLD): New PARAM. From-SVN: r180524
Jeff Law committed -
gcc: PR target/48108 * config/darwin.c (top level): Amend comments concerning LTO output. (lto_section_num): New variable. (darwin_lto_section_e): New GTY. (LTO_SECTS_SECTION, LTO_INDEX_SECTION): New. (LTO_NAMES_SECTION): Rename. (darwin_asm_named_section): Record LTO section counts and switches in a vec of darwin_lto_section_e. (darwin_file_start): Remove unused code. (darwin_file_end): Put an LTO section termination label. Handle output of the wrapped LTO sections, index and names table. libiberty: PR target/48108 * simple-object-mach-o.c (GNU_WRAPPER_SECTS, GNU_WRAPPER_INDEX, GNU_WRAPPER_NAMES): New macros. (simple_object_mach_o_segment): Handle wrapper scheme. (simple_object_mach_o_write_section_header): Allow the segment name to be supplied. (simple_object_mach_o_write_segment): Handle wrapper scheme. Ensure that the top-level segment name in the load command is empty. (simple_object_mach_o_write_to_file): Determine the number of sections during segment output, use that in writing the header. From-SVN: r180523
Iain Sandoe committed -
* config/rs6000/rs6000.c (rs6000_make_savres_rtx): Delete unneeded declaration. (rs6000_emit_stack_reset): Only return insn emitted when it adjusts sp. (rs6000_make_savres_rtx): Rename to rs6000_emit_savres_rtx. Use simple_return in pattern, emit instruction, and set jump_label. (rs6000_emit_prologue): Update for rs6000_emit_savres_rtx. Use simple_return rather than return. (emit_cfa_restores): New function. (rs6000_emit_epilogue): Emit cfa_restores when flag_shrink_wrap. Add missing cfa_restores for SAVE_WORLD. Add missing LR cfa_restore when using out-of-line gpr restore. Add missing LR and FP regs cfa_restores for out-of-line fpr restore. Consolidate code setting up cfa_restores. Formatting. Use LR_REGNO define. (rs6000_output_mi_thunk): Use simple_return rather than return. * config/rs6000/rs6000.md (sibcall*, sibcall_value*): Likewise. (return_internal*): Likewise. (any_return, return_pred, return_str): New iterators. (return, conditional return insns): Provide both return and simple_return variants. * config/rs6000/rs6000.h (EARLY_R12, LATE_R12): Define. (REG_ALLOC_ORDER): Move r12 before call-saved regs when FIXED_R13. Move r11 and r0 later to suit shrink-wrapping. From-SVN: r180522
Alan Modra committed -
2011-10-26 Richard Guenther <rguenther@suse.de> * lto-wrapper.c (run_gcc): Properly init/free obstack. From-SVN: r180521
Richard Guenther committed -
* config/i386/i386.md (UNSPEC_VSIBADDR): New. * config/i386/predicates.md (vsib_address_operand, vsib_mem_operator): New predicates. * config/i386/i386.c (ix86_print_operand_address): Handle UNSPEC_VSIBADDR addresses. * config/i386/sse.md (avx2_gathersi<mode>, avx2_gatherdi<mode>, avx2_gatherdi<mode>256): Adjust expanders to use MEM with UNSPEC_VSIBADDR address. (*avx2_gathersi<mode>, *avx2_gatherdi<mode>, *avx2_gatherdi<mode>256): Adjust insns to use MEM with UNSPEC_VSIBADDR address. * gcc.target/i386/avx2-i32gatherd-1.c: Adjust scan-assembler regex to work also with -masm=intel and additionally test the xmm vs. ymm register type combination on mask/dest and in vsib. * gcc.target/i386/avx2-i32gatherd256-1.c: Likewise. * gcc.target/i386/avx2-i32gatherd256-3.c: Likewise. * gcc.target/i386/avx2-i32gatherd-3.c: Likewise. * gcc.target/i386/avx2-i32gatherpd-1.c: Likewise. * gcc.target/i386/avx2-i32gatherpd256-1.c: Likewise. * gcc.target/i386/avx2-i32gatherpd256-3.c: Likewise. * gcc.target/i386/avx2-i32gatherpd-3.c: Likewise. * gcc.target/i386/avx2-i32gatherps-1.c: Likewise. * gcc.target/i386/avx2-i32gatherps256-1.c: Likewise. * gcc.target/i386/avx2-i32gatherps256-3.c: Likewise. * gcc.target/i386/avx2-i32gatherps-3.c: Likewise. * gcc.target/i386/avx2-i32gatherq-1.c: Likewise. * gcc.target/i386/avx2-i32gatherq256-1.c: Likewise. * gcc.target/i386/avx2-i32gatherq256-3.c: Likewise. * gcc.target/i386/avx2-i32gatherq-3.c: Likewise. * gcc.target/i386/avx2-i64gatherd-1.c: Likewise. * gcc.target/i386/avx2-i64gatherd256-1.c: Likewise. * gcc.target/i386/avx2-i64gatherd256-3.c: Likewise. * gcc.target/i386/avx2-i64gatherd-3.c: Likewise. * gcc.target/i386/avx2-i64gatherpd-1.c: Likewise. * gcc.target/i386/avx2-i64gatherpd256-1.c: Likewise. * gcc.target/i386/avx2-i64gatherpd256-3.c: Likewise. * gcc.target/i386/avx2-i64gatherpd-3.c: Likewise. * gcc.target/i386/avx2-i64gatherps-1.c: Likewise. * gcc.target/i386/avx2-i64gatherps256-1.c: Likewise. * gcc.target/i386/avx2-i64gatherps256-3.c: Likewise. * gcc.target/i386/avx2-i64gatherps-3.c: Likewise. * gcc.target/i386/avx2-i64gatherq-1.c: Likewise. * gcc.target/i386/avx2-i64gatherq256-1.c: Likewise. * gcc.target/i386/avx2-i64gatherq256-3.c: Likewise. * gcc.target/i386/avx2-i64gatherq-3.c: Likewise. From-SVN: r180520
Jakub Jelinek committed -
2011-10-26 Tom de Vries <tom@codesourcery.com> PR tree-optimization/50763 * gcc.dg/pr50763-2.c: New test. From-SVN: r180519
Tom de Vries committed -
2011-10-26 Tom de Vries <tom@codesourcery.com> PR tree-optimization/50763 * tree-ssa-tail-merge.c (replace_block_by): Update vops if phi_vuse1 or phi_vuse2 is NULL_TREE only if bb1 dominates or is dominated by bb2. From-SVN: r180518
Tom de Vries committed -
2011-10-26 Richard Guenther <rguenther@suse.de> PR lto/41844 * Makefile.in (lto-wrapper): Depend on and link against opts-common.o. (lto-wrapper.o): Depend on $(OPTS_H) and $(OPTIONS_H). * lto-wrapper.c (get_options_from_collect_gcc_options): New function. (run_gcc): Use it. Filter out language specific options. From-SVN: r180517
Richard Guenther committed -
2011-10-26 Andreas Tobler <andreast@fgznet.ch> * config/i386/freebsd64.h (LINK_SPEC): Emit the same warning as the 32-bit target does. From-SVN: r180468
Andreas Tobler committed -
* Fix typo in last ChangeLog entry. From-SVN: r180467
Paolo Carlini committed -
2011-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR translation/46617 * gcc.c (main): Fix fatal_error string for translation. From-SVN: r180466
Paolo Carlini committed -
* gcc.dg/format/ms_c90-printf-1.c, gcc.dg/format/ms_c90-scanf-1.c: Update expected messages. From-SVN: r180465
Joseph Myers committed -
From-SVN: r180464
GCC Administrator committed
-
- 25 Oct, 2011 27 commits
-
-
* tree-eh.c (do_return_redirection): Remove return_value_p parameter. Change all callers. (lower_try_finally_nofallthru): Remove local return_val. (lower_try_finally_onedest): Likewise. (lower_try_finally_copy): Likewise. (lower_try_finally_switch): Likewise. From-SVN: r180459
Ian Lance Taylor committed -
2011-10-25 H.J. Lu <hongjiu.lu@intel.com> * config/i386/mmx.md (*mmx_maskmovq): Replace :SI with :P and remove "&& !TARGET_64BIT" (*mmx_maskmovq_rex): Removed. From-SVN: r180458
H.J. Lu committed -
PR rtl-optimization/46603 * reload.c (push_reload): In the out case, reload the subreg as well as the reg if it has word mode. From-SVN: r180457
Eric Botcazou committed -
dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily suppress debug info for the parent type. * dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily suppress debug info for the parent type. From-SVN: r180456
Eric Botcazou committed -
From-SVN: r180455
Eric Botcazou committed -
* include/std/condition_variable (condition_variable_any): Remove unused native_handle_type typedef. * src/condition_variable.cc (condition_variable): Add missing noexcept specifications. * 30_threads/condition_variable_any/requirements/typedefs.cc: Remove. From-SVN: r180454
Jonathan Wakely committed -
These can be generated by vec_perm_const now. We could keep the patterns around, as technically it may be less work, but this exercises a code path needed by less primary platforms. * config/i386/sse.md (VEC_EXTRACT_EVENODD_MODE): Remove. (vec_extract_even<mode>, vec_extract_odd<mode>): Remove. From-SVN: r180453
Richard Henderson committed -
The ones that expand to VPERM can be handled by generic code. The even v4si and v4sf expanders remain until vector.md can be updated to not invoke them directly. * config/rs6000/altivec.md (vec_extract_evenv8hi, vec_extract_evenv16qi, vec_extract_oddv4si, vec_extract_oddv4sf): Remove. From-SVN: r180452
Richard Henderson committed -
* config/spu/spu.md (vec_extract_evenv4si, vec_extract_evenv4sf, vec_extract_evenv8hi, vec_extract_evenv16qi, vec_extract_oddv4si, vec_extract_oddv4sf, vec_extract_oddv8hi, vec_extract_oddv16qi, vec_interleave_highv4sf, vec_interleave_lowv4sf, vec_interleave_highv4si, vec_interleave_lowv4si, vec_interleave_highv8hi, vec_interleave_lowv8hi, vec_interleave_highv16qi, vec_interleave_lowv16qi): Remove. From-SVN: r180451
Richard Henderson committed -
* expr.c (expand_expr_real_2) [VEC_EXTRACT_EVEN_EXPR]: Use binop. [VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR]: Likewise. [VEC_INTERLEAVE_LOW_EXPR]: Likewise. * optabs.c (expand_binop): Implement vec_interleave_high_optab, vec_interleave_low_optab, vec_extract_even_optab, vec_extract_odd_optab with expand_vec_perm. (can_vec_perm_for_code_p): New. * optabs.h: Update. * tree-vect-data-refs.c (vect_strided_store_supported): Allow for fallback via can_vec_perm_for_code_p. (vect_strided_load_supported): Likewise. * tree-vect-generic.c (expand_vector_operations_1): Never lower VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR, VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR. From-SVN: r180450
Richard Henderson committed -
The can_vec_perm_p interface changed to use a C integer array. This allows easy re-use from the rtl level and the gimple level within the vectorizer. It allows both to determine if a given permutation is (un-)supported without having to create tree/rtl garbage. The expand_vec_perm interface changed to use rtl. This allows easy re-use from the rtl level, so that expand_vec_perm can be used in the fallback implementation of other optabs. * target.def (vec_perm_const_ok): Change parameters to mode and array of indicies. * doc/tm.texi: Rebuild. * config/i386/i386.c (ix86_vectorize_vec_perm_const_ok): Change parameters to mode and array of indicies. * expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Expand operands here. * optabs.c (can_vec_perm_p): Rename from can_vec_perm_expr_p. Change parameters to mode and array of indicies. (expand_vec_perm_1): Rename from expand_vec_perm_expr_1. (expand_vec_perm): Rename from expand_vec_perm_expr. Change parameters to mode and rtx inputs. Try lowering to QImode vec_perm_const before trying fully variable permutation. * optabs.h: Update decls. * tree-vect-generic.c (lower_vec_perm): Extract array of indices from VECTOR_CST to pass to can_vec_perm_p. * tree-vect-slp.c (vect_get_mask_element): Change mask parameter type from int pointer to unsigned char pointer. (vect_transform_slp_perm_load): Update for change to can_vec_perm_p. * tree-vect-stmts.c (perm_mask_for_reverse): Likewise. From-SVN: r180449
Richard Henderson committed -
From-SVN: r180448
Richard Henderson committed -
PR libstdc++/50862 * include/std/condition_variable (condition_variable_any::wait): Fix deadlock and ensure _Lock::lock() is called on exit. (condition_variable_any::native_handle): Remove, as per LWG 1500. * testsuite/30_threads/condition_variable_any/50862.cc: New. From-SVN: r180446
Jonathan Wakely committed -
PR target/48851 * inclhack.def (void_null): New bypass. * fixincl.x: Regenerate. From-SVN: r180445
Mike Stump committed -
From-SVN: r180444
Mike Stump committed -
PR c++/50866 PR c++/41449 * semantics.c (maybe_cleanup_point_expr_void): No longer static. * typeck2.c (split_nonconstant_init_1): Use it. * cp-tree.h: Declare it. * decl.c (wrap_cleanups_r): Stop at CLEANUP_POINT_EXPR. From-SVN: r180442
Jason Merrill committed -
PR c++/49996 * tree.c (stabilize_init): Stabilize scalar elements of a CONSTRUCTOR, too. From-SVN: r180441
Jason Merrill committed -
From-SVN: r180440
Ian Lance Taylor committed -
From Rainer Orth. From-SVN: r180439
Ian Lance Taylor committed -
From-SVN: r180438
Ian Lance Taylor committed -
Better panic on attempt to close nil channel. From-SVN: r180437
Ian Lance Taylor committed -
* config/c6x/pr-support.c (pop_compact_frame, pop_frame): Correct logic for doubleword pops. From-SVN: r180435
Bernd Schmidt committed -
* config/c6x/pr-support.c (__gnu_unwind_24bit): Correct logic for the case where B3 isn't the return register. From-SVN: r180434
Bernd Schmidt committed -
From-SVN: r180432
Joseph Myers committed -
/cp 2011-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50858 * typeck.c (composite_pointer_type_r): Check return value of composite_pointer_type_r for error_mark_node. /testsuite 2011-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50858 * g++.dg/overload/operator5.C: New. /cp 2011-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50861 * pt.c (tsubst_copy_and_build): Check return value of tsubst_copy_and_build for error_mark_node. /testsuite 2011-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50861 * g++.dg/template/crash108.C: New. From-SVN: r180430
Paolo Carlini committed -
From-SVN: r180429
Kirill Yukhin committed -
* line-map.c (linemap_macro_map_lookup): Fix logic. From-SVN: r180427
Dodji Seketeli committed
-