aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-10-07* generic-morestack-thread.c: #include <errno.h>.Ian Lance Taylor2-1/+6
From-SVN: r179703
2011-10-07re PR target/46093 (code compiled with -fsplit-stack crashes when passing ↵Ian Lance Taylor2-1/+8
large struct) PR target/46093 * generic-morestack.c (__generic_morestack): Make sure the segment is large enough for both the stack frame and the copied parameters. From-SVN: r179702
2011-10-07Rename vshuffle/vec_shuffle to vec_perm.Richard Henderson22-88/+136
* doc/extend.texi (__builtin_shuffle): Improve the description to include the modulus of the selector. Mention OpenCL. * doc/md.texi (vec_perm, vec_perm_const): Document named patterns. * tree.def (VEC_PERM_EXPR): Rename from VEC_SHUFFLE_EXPR. * genopinit.c (optabs): Rename vshuffle to vec_perm. * c-typeck.c (c_build_vec_perm_expr): Rename from c_build_vec_shuffle_expr. Update for name changes. * optabs.c (expand_vec_perm_expr_p): Rename from expand_vec_shuffle_expr_p. (expand_vec_perm_expr): Rename from expand_vec_shuffle_expr. * optabs.h (OTI_vec_perm): Rename from DOI_vshuffle. (vec_perm_optab): Rename from vshuffle_optab. * expr.c, gimple-pretty-print.c, gimple.c, gimplify.c, c-tree.h, c-parser.c, tree-cfg.c, tree-inline.c, tree-pretty-print.c, tree-ssa-operands.c, tree-vect-generic.c: Update for name changes. * config/i386/i386.c (ix86_expand_vec_perm): Rename from ix86_expand_vshuffle. * config/i386/i386-protos.h: Update. * config/i386/sse.md (VEC_PERM_AVX2): Rename from VSHUFFLE_AVX2. (vec_perm<VEC_PERM_AVX2>): Rename from vshuffle<VSHUFFLE_AVX2>. From-SVN: r179701
2011-10-07i386: Fixup last pblendw change.Richard Henderson2-2/+2
Missed changing one predicate to AVX2. Add parenthesis to avoid bootstrap -Werror. From-SVN: r179700
2011-10-07i386: Fix representation of 256-bit vpblendw.Richard Henderson3-6/+51
From-SVN: r179697
2011-10-07trans-array.c (gfc_conv_expr_descriptor): Remove trailing whitespace.Mikael Morin2-1/+5
* trans-array.c (gfc_conv_expr_descriptor): Remove trailing whitespace. From-SVN: r179695
2011-10-07trans-array.c (gfc_conv_ss_startstride): Merge two switch cases.Mikael Morin2-3/+4
* trans-array.c (gfc_conv_ss_startstride): Merge two switch cases. From-SVN: r179694
2011-10-07trans-array.c (gfc_conv_section_startstride): Remove coarray argument.Mikael Morin2-11/+21
* trans-array.c (gfc_conv_section_startstride): Remove coarray argument. Remove conditions on coarray. (gfc_conv_ss_startstride): Update call to gfc_conv_section_startstride. (gfc_conv_expr_descriptor): Ditto. Add assertions before the call. From-SVN: r179693
2011-10-07trans-array.c (gfc_conv_section_startstride): Remove coarray_last argument.Mikael Morin2-5/+11
* trans-array.c (gfc_conv_section_startstride): Remove coarray_last argument. Remove condition on coarray_last. (gfc_conv_ss_startstride): Update call to gfc_conv_section_startstride. (gfc_conv_expr_descriptor): Ditto. From-SVN: r179692
2011-10-07trans-array.c (gfc_walk_variable_expr): Remove scalar coarray handling.Mikael Morin2-22/+10
* trans-array.c (gfc_walk_variable_expr): Remove scalar coarray handling. Don't reset array ref's corank and codimensions' types in the full array ref case. Update loop upper limit. Remove DIMEN_THIS_IMAGE case. Remove unnecessary conditions. From-SVN: r179691
2011-10-07trans.h (gfc_ss_info): Remove codimen field.Mikael Morin4-24/+17
* trans.h (gfc_ss_info): Remove codimen field. * trans-array.c (gfc_get_array_ss): Don't set codimen field. (gfc_trans_create_temp_array): Don't set descriptor's cobounds. (gfc_trans_constant_array_constructor): Update loop upper limit. (gfc_conv_ss_startstride): Don't set codimen field. Don't get descriptor's cobounds. (gfc_walk_variable_expr): Update dimension index. * trans-intrinsic.c (trans_this_image, trans_image_index, conv_intrinsic_cobound): Don't set codimen field From-SVN: r179690
2011-10-07trans.h (gfc_loopinfo): Remove codimen field.Mikael Morin3-26/+32
* trans.h (gfc_loopinfo): Remove codimen field. * trans-array.c (gfc_set_vector_loop_bounds, gfc_trans_scalarizing_loops, gfc_conv_loop_setup): Update loop upper limit. (gfc_set_loop_bounds_from_array_spec): Ditto. Remove skip on last codimension. (gfc_start_scalarized_body): Update loop lower limit. (gfc_conv_ss_startstride): Don't set loop's codimen field. (gfc_conv_loop_setup): Remove unnecessary condition. (gfc_conv_expr_descriptor): Don't use loop's codimen field as corank. From-SVN: r179689
2011-10-07trans.h (gfc_ss): Remove data.temp.codimen field.Mikael Morin3-3/+7
* trans.h (gfc_ss): Remove data.temp.codimen field. * trans-array.c (gfc_conv_resolve_dependencies, gfc_conv_expr_descriptor): Don't set temp's codimen field. From-SVN: r179686
2011-10-07resolve.c (resolve_array_ref): Set array_ref's dimen field (and the ↵Mikael Morin2-2/+22
associated dimen_type) in the full array... * resolve.c (resolve_array_ref): Set array_ref's dimen field (and the associated dimen_type) in the full array ref case. From-SVN: r179685
2011-10-07trans-intrinsic.c (walk_coarray): New function.Mikael Morin2-19/+34
* trans-intrinsic.c (walk_coarray): New function. (convert_element_to_coarray_ref): Move code to walk_coarray. Remove. (trans-this_image, trans_image_index, conv_intrinsic_cobound): Use walk_coarray. From-SVN: r179684
2011-10-07trans-array.c (gfc_conv_expr_descriptor): Add out-of-the-scalarizer cobounds ↵Mikael Morin2-1/+20
evaluation. * trans-array.c (gfc_conv_expr_descriptor): Add out-of-the-scalarizer cobounds evaluation. From-SVN: r179683
2011-10-07trans-array.c (gfc_conv_ss_startstride): Support zero rank loop.Mikael Morin2-6/+10
* trans-array.c (gfc_conv_ss_startstride): Support zero rank loop. From-SVN: r179682
2011-10-07trans-array.c (gfc_conv_section_startstride): Move code to evaluate_bound.Mikael Morin2-34/+42
* trans-array.c (gfc_conv_section_startstride): Move code to evaluate_bound. Use evaluate_bound. (evaluate_bound): New function. From-SVN: r179681
2011-10-07trans-array.c (gfc_conv_section_startstride): Update assertion to also ↵Mikael Morin2-1/+7
accept coarrays. * trans-array.c (gfc_conv_section_startstride): Update assertion to also accept coarrays. From-SVN: r179680
2011-10-07trans-array.c (gfc_conv_section_startstride): Factor common array ref ↵Mikael Morin2-5/+12
references. * trans-array.c (gfc_conv_section_startstride): Factor common array ref references. From-SVN: r179679
2011-10-07trans-array.c (gfc_conv_expr_descriptor): Use codim instead of loop.codimen ↵Mikael Morin2-3/+7
as argument to gfc_get_array_type_bounds. * trans-array.c (gfc_conv_expr_descriptor): Use codim instead of loop.codimen as argument to gfc_get_array_type_bounds. From-SVN: r179677
2011-10-07trans-array.h (struct gfc_se): New flag want_coarray.Mikael Morin4-1/+18
* trans-array.h (struct gfc_se): New flag want_coarray. * trans-intrinsic.c (trans_this_image, trans_image_index, conv_intrinsic_cobound): Set want_coarray. * trans_array.c (gfc_conv_expr_descriptor): Evaluate codimension earlier and without relying on the scalarizer. From-SVN: r179676
2011-10-07expr.c (gfc_get_corank): Return 0 if input expression is not a coarray.Mikael Morin2-0/+11
* expr.c (gfc_get_corank): Return 0 if input expression is not a coarray. From-SVN: r179675
2011-10-07trans-array.c (gfc_conv_expr_descriptor): Simplify coarray descriptor setup ↵Mikael Morin2-13/+9
code. * trans-array.c (gfc_conv_expr_descriptor): Simplify coarray descriptor setup code. From-SVN: r179674
2011-10-07resolve.c (compare_spec_to_ref): Move coarray ref initialization code...Mikael Morin2-8/+14
* resolve.c (compare_spec_to_ref): Move coarray ref initialization code... (resolve_array_ref): ... here. From-SVN: r179672
2011-10-07check.c (is_coarray): Remove.Mikael Morin2-33/+6
* check.c (is_coarray): Remove. (coarray_check): Use gfc_is_coarray. From-SVN: r179671
2011-10-07Delete incorrect representations of avx2 shifts.Richard Henderson3-36/+25
* config/i386/i386.c (bdesc_args): Update code for __builtin_ia32_palignr256. Change type of __builtin_ia32_pslldqi256, and __builtin_ia32_psrldqi256 to V4DI_FTYPE_V4DI_INT_CONVERT. (ix86_expand_args_builtin): Handle V4DI_FTYPE_V4DI_INT_CONVERT. * config/i386/sse.md (mode iterator V16): Add V2TI. (mode iterator SSESCALARMODE): Use V2TI not V4DI. (mode attr ssse3_avx2): Add V2TI. (avx2_lshrqv4di3, avx2_lshlqv4di3): Remove. From-SVN: r179668
2011-10-07Fix VIS3 assembler check and conditionalize testsuite on VIS3 support.David S. Miller14-10/+45
gcc/ PR 50655 * configure.ac: Add .register directives to VIS3 test. * configure: Regenerate. gcc/testsuite/ PR 50655 * gcc.target/sparc/sparc.exp: Add vis3 target test. * gcc.target/sparc/cmask.c: Use it. * gcc.target/sparc/fhalve.c: Likewise. * gcc.target/sparc/fnegop.c: Likewise. * gcc.target/sparc/fpadds.c: Likewise. * gcc.target/sparc/fshift.c: Likewise. * gcc.target/sparc/fucmp.c: Likewise. * gcc.target/sparc/lzd.c: Likewise. * gcc.target/sparc/vis3misc.c: Likewise. * gcc.target/sparc/xmul.c: Likewise. From-SVN: r179667
2011-10-07Fix avx256 test cases for AVX2.Richard Henderson3-2/+8
From-SVN: r179666
2011-10-07testsuite_allocator.h (uneq_allocator): Add propagate_on_container_swap ↵Jonathan Wakely2-1/+10
typedef for C++0x testing. 2011-10-07 Jonathan Wakely <jwakely.gcc@gmail.com> * testsuite/util/testsuite_allocator.h (uneq_allocator): Add propagate_on_container_swap typedef for C++0x testing. From-SVN: r179665
2011-10-07* config.gcc (x86_64-*): Add core-avx-i, core-avx2 for with_cpu.Richard Henderson2-1/+5
From-SVN: r179664
2011-10-07re PR other/49752 (Non-existing struct `tree_type' in fold_checksum_tree in ↵Richard Henderson2-5/+6
fold-const.c, can't build with `--enable-checking=fold') PR 49752 * fold-const.c (fold_checksum_tree): Remove out-of-date assert. From-SVN: r179663
2011-10-07predicates.md (shift_amount_operand): Remove constant range check.Andrew Stubbs2-0/+73
2011-10-07 Andrew Stubbs <ams@codesourcery.com> gcc/ * config/arm/predicates.md (shift_amount_operand): Remove constant range check. (shift_operator): Check range of constants for all shift operators. gcc/testsuite/ * gcc.dg/pr50193-1.c: New file. * gcc.target/arm/shiftable.c: New file. From-SVN: r179662
2011-10-07predicates.md (shift_amount_operand): Remove constant range check.Andrew Stubbs3-3/+22
2011-10-07 Andrew Stubbs <ams@codesourcery.com> gcc/ * config/arm/predicates.md (shift_amount_operand): Remove constant range check. (shift_operator): Check range of constants for all shift operators. gcc/testsuite/ * gcc.dg/pr50193-1.c: New file. * gcc.target/arm/shiftable.c: New file. From-SVN: r179661
2011-10-07re PR fortran/50625 ([OOP] ALLOCATABLE attribute lost for module CLASS ↵Janus Weil6-2/+38
variables) 2011-10-07 Janus Weil <janus@gcc.gnu.org> PR fortran/50625 * class.c (gfc_build_class_symbol): Fix whitespace. * module.c (mio_symbol): Set 'class_ok' attribute. * trans-decl.c (gfc_get_symbol_decl): Make sure the backend_decl has been built for class symbols. 2011-10-07 Janus Weil <janus@gcc.gnu.org> PR fortran/50625 * gfortran.dg/class_46.f03: New. From-SVN: r179660
2011-10-07pr47276.c (ASMNAME, [...]): Define.Joern Rennecke4-10/+35
* gcc.dg/pr47276.c (ASMNAME, ASMNAME2, STRING): Define. (__EI___vsyslog_chk, __EI_syslog, __EI_vsyslog): Use ASMNAME. (syslog, vsyslog, __vsyslog_chk): Likewise. * gcc.dg/lto/20081222_1.c (ASMNAME, ASMNAME2, STRING): Define. (x, EXT_x): Use ASMNAME. * gcc.dg/torture/pr48044.c (ASMNAME, ASMNAME2, STRING): Define. (a, c): Use ASMNAME. From-SVN: r179659
2011-10-07s390.c (s390_emit_tls_call_insn): Remove assertion.Andreas Krebbel2-7/+20
2011-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.c (s390_emit_tls_call_insn): Remove assertion. Load GOT pointer for non-pic builds. (s390_load_got): Replace pic_offset_table_rtx with hardcoded r12. (s390_emit_call): Likewise. From-SVN: r179658
2011-10-07re PR middle-end/50527 (inconsistent vla align)Tom de Vries2-0/+51
2011-10-07 Tom de Vries <tom@codesourcery.com> PR middle-end/50527 * gcc.dg/pr50527.c: New test. From-SVN: r179656
2011-10-07re PR middle-end/50527 (inconsistent vla align)Tom de Vries15-30/+93
2011-10-07 Tom de Vries <tom@codesourcery.com> PR middle-end/50527 * tree.c (build_common_builtin_nodes): Add local_define_builtin for BUILT_IN_ALLOCA_WITH_ALIGN. Mark that BUILT_IN_ALLOCA_WITH_ALIGN can throw. * builtins.c (expand_builtin_alloca): Handle BUILT_IN_ALLOCA_WITH_ALIGN arglist. Set align for BUILT_IN_ALLOCA_WITH_ALIGN. (expand_builtin): Handle BUILT_IN_ALLOCA_WITH_ALIGN. (is_inexpensive_builtin): Handle BUILT_IN_ALLOCA_WITH_ALIGN. * tree-ssa-ccp.c (evaluate_stmt): Set align for BUILT_IN_ALLOCA_WITH_ALIGN. (fold_builtin_alloca_for_var): Rename to ... (fold_builtin_alloca_with_align): Set DECL_ALIGN from 2nd BUILT_IN_ALLOCA_WITH_ALIGN argument. (ccp_fold_stmt): Try folding BUILT_IN_ALLOCA_WITH_ALIGN using fold_builtin_alloca_with_align. (optimize_stack_restore): Handle BUILT_IN_ALLOCA_WITH_ALIGN. * builtins.def (BUILT_IN_ALLOCA_WITH_ALIGN): Declare using DEF_BUILTIN_STUB. * ipa-pure-const.c (special_builtin_state): Handle BUILT_IN_ALLOCA_WITH_ALIGN. * tree-ssa-alias.c (ref_maybe_used_by_call_p_1) (call_may_clobber_ref_p_1): Same. * function.c (gimplify_parameters): Lower vla to BUILT_IN_ALLOCA_WITH_ALIGN. * gimplify.c (gimplify_vla_decl): Same. * cfgexpand.c (expand_call_stmt): Handle BUILT_IN_ALLOCA_WITH_ALIGN. * tree-mudflap.c (mf_xform_statements): Same. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary) (mark_all_reaching_defs_necessary_1, propagate_necessity): Same. * varasm.c (incorporeal_function_p): Same. * tree-object-size.c (alloc_object_size): Same. * gimple.c (gimple_build_call_from_tree): Same. From-SVN: r179655
2011-10-07function.c (frame_required_for_rtx): Remove function.Bernd Schmidt2-29/+56
* function.c (frame_required_for_rtx): Remove function. (requires_stack_frame_p): New arg set_up_by_prologue. All callers changed. Compute a set of mentioned registers and compare against the new arg rather than calling frame_required_for_rtx. (thread_prologue_and_epilogue_insns): Compute the set_up_by_prologue reg set. Convert the unconverted_simple_returns mechanism to store jump insns rather than their basic blocks. Also check the orig_entry_edge destination for new blocks. From-SVN: r179654
2011-10-07re PR middle-end/50650 (ICE in vect_is_simple_use_1, at tree-vect-stmts.c:5689)Jakub Jelinek6-4/+32
PR tree-optimization/50650 * tree-vect-patterns.c (vect_recog_mixed_size_cond_pattern): Don't call vect_is_simple_cond here, instead fail if cond_expr isn't COMPARISON_CLASS_P or if get_vectype_for_scalar_type returns NULL for cond_expr's first operand. * tree-vect-stmts.c (vect_is_simple_cond): Static again. * tree-vectorizer.h (vect_is_simple_cond): Remove prototype. * gcc.c-torture/compile/pr50650.c: New test. From-SVN: r179653
2011-10-07re PR lto/50492 (Ada bootstrap failure --with-build-config=bootstrap-lto)Eric Botcazou3-9/+27
PR lto/50492 * gcc-interface/gigi.h (gnat_pushdecl): Adjust comment. * gcc-interface/utils.c (global_context): New variable. (gnat_pushdecl): Initialize it and set it as the DECL_CONTEXT of DECLs that are either public external or at top level. Use "No" macro. (end_subprog_body): Call decl_function_context. (rest_of_subprog_body_compilation): Likewise. From-SVN: r179652
2011-10-07Disable ABI warnings for gcc.c-torture/execute/vector-compare-2.c (PR ↵Rainer Orth2-0/+7
tree-optimization/50575) PR tree-optimization/50575 * gcc.c-torture/execute/vector-compare-2.x: New file. From-SVN: r179651
2011-10-07gigi.h (gnat_useless_type_conversion): Declare.Eric Botcazou5-16/+400
* gcc-interface/gigi.h (gnat_useless_type_conversion): Declare. (rest_of_subprog_body_compilation): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: For renaming, test for useless conversions by means of gnat_useless_type_conversion. * gcc-interface/trans.c: Include bitmap.h and cgraph.h. (language_function): Add named_ret_val and other_ret_val. (f_named_ret_val): New macro. (f_other_ret_val): Likewise. (gigi): Call rest_of_subprog_body_compilation. (struct nrv_data): New structure. (is_nrv_p): New predicate. (prune_nrv_r): New helper function. (prune_nrv_in_block): New function. (finalize_nrv_r): New helper function. (finalize_nrv): New function. (return_value_ok_for_nrv_p): New predicate. (build_return_expr): If optimization is enabled, record candidates for the Named Return Value optimization. (build_function_stub): Call rest_of_subprog_body_compilation. (Subprogram_Body_to_gnu): If optimization is enabled and there are candidates, finalize the Named Return Value optimization. Call rest_of_subprog_body_compilation. (call_to_gnu): At the end, if a return value is needed, simplify the result before wrapping it up in a COMPOUND_EXPR. * gcc-interface/utils.c (end_subprog_body): Split into... (rest_of_subprog_body_compilation): ...this. New function. (gnat_useless_type_conversion): Likewise. From-SVN: r179650
2011-10-07Don't XFAIL gcc.dg/uninit-B.c etc. (PR middle-end/50125)Rainer Orth3-3/+10
PR middle-end/50125 * gcc.dg/uninit-B.c (baz): Remove xfail *-*-*. * gcc.dg/uninit-pr19430.c (main): Remove xfail *-*-*. (bar3): Likewise. From-SVN: r179649
2011-10-07re PR testsuite/50637 (gcc.dg/vect/vect-align-2.c is invalid (FAILs with -O2 ↵Richard Guenther2-1/+6
-flto -fpeel-loops)) 2011-10-07 Richard Guenther <rguenther@suse.de> PR testsuite/50637 * gcc.dg/vect/vect-align-2.c: Increase array size. From-SVN: r179648
2011-10-07s390.md (DWH, dwh): New mode macros.Andreas Krebbel2-11/+21
2011-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.md (DWH, dwh): New mode macros. ("umulsidi3"): Extend to support "umulditi3" as well. From-SVN: r179647
2011-10-07re PR target/50603 ([x32] Unnecessary lea)Uros Bizjak4-13/+39
PR target/50603 * config/i386/i386.c (ix86_fixup_binary_operands): Force src2 of integer PLUS RTX to a register to improve address combine. testsuite/ChangeLog: PR target/50603 * gcc.target/i386/pr50603.c: New test. From-SVN: r179646
2011-10-07Daily bump.GCC Administrator1-1/+1
From-SVN: r179642
2011-10-06re PR middle-end/50632 (FAIL: gcc.dg/pr50132.c)Richard Henderson2-4/+19
PR 50632 * combine-stack-adjust.c (maybe_move_args_size_note): Add after parameter; use it to decide whether to merge two notes. (combine_stack_adjustments_for_block): Use maybe_move_args_size_note for the deallocation case as well. From-SVN: r179637