aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2011-11-09generic-morestack.c: Include <string.h>.Ian Lance Taylor3-0/+185
libgcc/: * generic-morestack.c: Include <string.h>. (uintptr_type): Define. (struct initial_sp): Add dont_block_signals field. Reduce size of extra array by 1. (allocate_segment): Set prev field to NULL. Don't set __morestack_current_segment or __morestack_segments. (__generic_morestack): Update current->prev and *pp after calling allocate_segment. (__morestack_block_signals): Don't do anything if dont_block_signals is set. (__morestack_unblock_signals): Likewise. (__generic_findstack): Check for initial_sp == NULL. Add casts to uintptr_type. (__splitstack_block_signals): New function. (enum __splitstack_content_offsets): Define. (__splitstack_getcontext, __splitstack_setcontext): New functions. (__splitstack_makecontext): New function. (__splitstack_block_signals_context): New function. (__splitstack_find_context): New function. * config/i386/morestack.S (__morestack_get_guard): New function. (__morestack_set_guard, __morestack_make_guard): New functions. * libgcc-std.ver.in: Add new functions to GCC_4.7.0. gcc/testsuite/: * lib/target-supports.exp (check_effective_target_ucontext_h): New procedure. * gcc.dg/split-5.c: New test. From-SVN: r181234
2011-11-09symbol.c (clear_sym_mark, [...]): Remove functions.Tobias Burnus2-28/+66
2011-11-09 Tobias Burnus <burnus@net-b.de> * symbol.c (clear_sym_mark, traverse_ns): Remove functions. (count_st_nodes, do_traverse_symtree, fill_st_vector): New functions. (gfc_traverse_symtree, gfc_traverse_ns): Call do_traverse_symtree. From-SVN: r181232
2011-11-09PR c++/51043 - ICE in LTODodji Seketeli2-11/+16
* cp-tree.h (TYPE_ALIAS_P, TYPE_TEMPLATE_INFO): Don't crash on NULL TYPE_NAME. From-SVN: r181231
2011-11-09* gcc.dg/tm/memopt-1.c: Adjust regexp.Patrick Marlier2-1/+5
From-SVN: r181226
2011-11-09re PR c++/51029 ([C++0x] [4.7 Regression] ICE with -std=c++0x)Jason Merrill4-0/+27
PR c++/51029 * class.c (build_base_path): Don't ICE in fold_non_dependent_expr. From-SVN: r181225
2011-11-09Run most tests in both C++98 and C++11 modes.Jason Merrill48-98/+190
gcc/testsuite/ * lib/target-supports.exp (check_effective_target_c++11): New. (check_effective_target_c++98): New. * lib/g++-dg.exp (g++-dg-runtest): New. * [various.exp]: Use g++-dg-runtest. * [various.C]: Fix for C++11 mode. gcc/cp/ * Make-lang.in (check_g++_parallelize): Add dg-torture.exp. (check-c++0x): Obsolete. / * Makefile.def (language=c++): Remove check-c++0x. * Makefile.in (check-gcc-c++): Regenerate. From-SVN: r181222
2011-11-09* [various.C]: Adjust for C++11 mode.Jason Merrill21-17/+89
From-SVN: r181221
2011-11-09* pt.c (invalid_nontype_parm_type_p): Avoid printing "<type error>".Jason Merrill6-5/+19
From-SVN: r181220
2011-11-09pt.c (convert_nontype_argument): Only integral arguments get early folding.Jason Merrill2-4/+21
* pt.c (convert_nontype_argument): Only integral arguments get early folding. From-SVN: r181219
2011-11-09parser.c (cp_parser_alias_declaration): Don't do semantic processing if ↵Jason Merrill2-0/+8
parsing failed. * parser.c (cp_parser_alias_declaration): Don't do semantic processing if parsing failed. From-SVN: r181218
2011-11-09re PR preprocessor/51061 (Deprecated -I- option causes segfault)Paolo Carlini2-2/+10
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR preprocessor/51061 * incpath.c (merge_include_chains): Make sure to not pass null pointers to free_path. From-SVN: r181216
2011-11-09re PR c++/51045 (erroneous zero as null pointer constant warning at delete)Paolo Carlini1-0/+5
/cp 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51045 * init.c (build_new_1, build_vec_delete_1, build_delete): Use nullptr_node. /testsuite 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51045 * g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New. 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> * doc/invoke.texi ([Option Summary, C++ Language Options]): Add -Wzero-as-null-pointer-constant. From-SVN: r181215
2011-11-09re PR c++/51045 (erroneous zero as null pointer constant warning at delete)Paolo Carlini5-4/+83
/cp 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51045 * init.c (build_new_1, build_vec_delete_1, build_delete): Use nullptr_node. /testsuite 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51045 * g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New. 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> * doc/invoke.texi ([Option Summary, C++ Language Options]): Add -Wzero-as-null-pointer-constant. From-SVN: r181214
2011-11-09re PR c++/51047 ([C++0x] SFINAE does not handle errors of ambiguous base ↵Paolo Carlini11-23/+62
members) /cp 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51047 * search.c (lookup_member): Change to take also a tsubst_flags_t parameter. (lookup_field, lookup_fnfields): Adjust calls. * typeck.c (lookup_destructor, finish_class_member_access_expr, build_ptrmemfunc_access_expr): Likewise. * class.c (handle_using_decl, maybe_note_name_used_in_class): Likewise. * pt.c (resolve_typename_type): Likewise. * semantics.c (lambda_function): Likewise. * parser.c (cp_parser_perform_range_for_lookup, cp_parser_lookup_name): Likewise. * friend.c (make_friend_class): Likewise. * name-lookup.c (pushdecl_maybe_friend_1, get_class_binding, do_class_using_decl, lookup_qualified_name): Likewise. * cp-tree.h (lookup_member): Adjust declaration. /testsuite 2011-11-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51047 * g++.dg/cpp0x/sfinae29.C: New. From-SVN: r181213
2011-11-09sparc.c (output_v8plus_shift): Take INSN parameter first and adjust head ↵Eric Botcazou3-26/+68
comment. * config/sparc/sparc.c (output_v8plus_shift): Take INSN parameter first and adjust head comment. (output_v8plus_mult): Change NAME into OPCODE and adjust throughout. (vector_init_bshuffle): Add head comment. (vector_init_move_words): Likewise. (vector_init_prepare_elts): Likewise. Take LOCS parameter first. (sparc_expand_vector_init): Likewise. Adjust call to above function. (sparc_expand_vector_init_vis2): Likewise. (sparc_expand_vector_init_vis1): Likewise. (sparc_expand_conditional_move): Likewise. (sparc_expand_vcond): Likewise. * config/sparc/sparc-protos.h (output_v8plus_shift): Adjust. * config/sparc/sparc.md (ashldi3_v8plus): Adjust call to output_v8plus_shift. (ashrdi3_v8plus): Likewise. (lshrdi3_v8plus): Likewise. From-SVN: r181211
2011-11-09Matthew Gretton-Dann <matthew.gretton-dann@arm.com>Matthew Gretton-Dann6-3/+16
* config/arm/arm-cores.def: Add -mcpu=cortex-a7. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Likewise. * config/arm/bpabi.h (BE8_LINK_SPEC): Add Cortex A-7. * doc/invoke.texi: Document -mcpu=cortex-a7. From-SVN: r181210
2011-11-09re PR fortran/50960 ([OOP] vtables not marked as constant)Janus Weil2-0/+37
2011-11-09 Janus Weil <janus@gcc.gnu.org> PR fortran/50960 * gfortran.dg/typebound_call_22.f03: New test case. From-SVN: r181208
2011-11-09PR 50016 Slow I/O on MingW due to _commitJanne Blomqvist4-1/+89
frontend ChangeLog: 2011-11-09 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/50016 * gfortran.texi (Data consistency and durability): New section. testsuite ChangeLog: 2011-11-09 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/50016 * gfortran.dg/inquire_size.f90: Don't flush the unit. libgfortran ChangeLog: 2011-11-09 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/50016 * io/inquire.c (inquire_via_unit): Flush the unit and use ssize. * io/unix.c (buf_flush): Don't call _commit. From-SVN: r181207
2011-11-09revert: tree-cfg.c (verify_gimple_call): Verify that ↵Richard Guenther2-10/+9
gimple_call_cannot_inline_p is returning a conservative correct... 2011-11-09 Richard Guenther <rguenther@suse.de> Revert 2011-11-09 Richard Guenther <rguenther@suse.de> * tree-cfg.c (verify_gimple_call): Verify that gimple_call_cannot_inline_p is returning a conservative correct result according to gimple_check_call_matching_types. From-SVN: r181206
2011-11-09re PR tree-optimization/51039 (ICE: in estimate_function_body_sizes, at ↵Richard Guenther6-14/+50
ipa-inline-analysis.c:1977 with -finline-small-functions -fno-ipa-pure-const and passing incompatible function ptr) 2011-11-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/51039 * tree-cfg.c (verify_gimple_call): Verify that gimple_call_cannot_inline_p is returning a conservative correct result according to gimple_check_call_matching_types. * ipa-inline-analysis.c (estimate_function_body_sizes): Remove code dealing with un-inlinablility. * gimple-streamer-in.c (input_gimple_stmt): Update the non-inlinable flag. * gcc.dg/pr51039.c: New testcase. From-SVN: r181205
2011-11-09re PR tree-optimization/51039 (ICE: in estimate_function_body_sizes, at ↵Richard Guenther2-7/+41
ipa-inline-analysis.c:1977 with -finline-small-functions -fno-ipa-pure-const and passing incompatible function ptr) 2011-11-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/51039 * gimple-low.c (gimple_check_call_args): Remove. (gimple_check_call_matching_types): Always return true. * tree-inline.c (setup_one_parameter): Always perform a valid gimple type change. (declare_return_variable): Likewise. From-SVN: r181204
2011-11-09vector.md (vcondv4sfv4si, [...]): New patterns.Jakub Jelinek5-3/+78
* config/rs6000/vector.md (vcondv4sfv4si, vcondv4siv4sf, vconduv4sfv4si): New patterns. * config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Handle different dest_mode from comparison mode. * lib/target-supports.exp (check_effective_target_vect_cond_mixed): Enable also for powerpc*-*-*. From-SVN: r181202
2011-11-09re PR fortran/50540 (Internal Error: Can't convert UNKNOWN to INTEGER(4) ↵Francois-Xavier Coudert4-4/+24
(r178939)) PR fortran/50540 * resolve.c (resolve_forall_iterators): Transform internal errors to normal errors. * gfortran.dg/forall_16.f90: New test. From-SVN: r181200
2011-11-09re PR fortran/50960 ([OOP] vtables not marked as constant)Janus Weil4-4/+15
2011-11-09 Janus Weil <janus@gcc.gnu.org> PR fortran/50960 * class.c (gfc_find_derived_vtab): Make the vtab symbols FL_PARAMETER. * expr.c (gfc_simplify_expr): Prevent vtabs from being replaced with their value. * resolve.c (resolve_values): Use-associated symbols do not need to be resolved again. (resolve_fl_parameter): Make sure the symbol has a value. From-SVN: r181199
2011-11-09re PR fortran/38718 (some simplifiers for elemental intrinsics missing; ↵Francois-Xavier Coudert6-2/+45
required for init expressions) PR fortran/38718 * intrinsic.c (add_functions): Add gfc_simplify_dreal. * intrinsic.h (gfc_simplify_dreal): New proto. * simplify.c (gfc_simplify_dreal): New function. * gfortran.dg/initialization_29.f90: Expand test. From-SVN: r181198
2011-11-09gimple-fold.c (canonicalize_constructor_val): Mark address-taken variables ↵Richard Guenther2-3/+11
addressable. 2011-11-09 Richard Guenther <rguenther@suse.de> * gimple-fold.c (canonicalize_constructor_val): Mark address-taken variables addressable. From-SVN: r181197
2011-11-09PR c++/51027 - accepts alias-declaration without ';'Dodji Seketeli5-1/+18
gcc/cp/ * parser.c (cp_parser_alias_declaration): Require ';' at the end of the declaration. libstdc++-v3/ * include/ext/pointer.h (rebind): Append missing ';'. gcc/testsuite * g++.dg/cpp0x/alias-decl-12.C: New test. * g++.dg/ext/alias-decl-attr4.C: Append missing ';'. From-SVN: r181195
2011-11-09Fix entryEric Botcazou1-1/+0
From-SVN: r181194
2011-11-09PR debug/51032 - ICE in dbxout_type, at dbxout.c:2372Dodji Seketeli5-2/+32
gcc/cp/ * decl2.c (check_member_template): Accept alias templates and ... * parser.c (cp_parser_alias_declaration): ... use it here. gcc/testsuite/ * g++.dg/cpp0x/alias-decl-debug-0.C: New test. From-SVN: r181193
2011-11-09re PR fortran/21881 (ICE instead of error for large arrays in derived types)Francois-Xavier Coudert2-1/+7
PR fortran/21881 * trans-types.c (gfc_get_dtype): Issue a fatal error instead of an internal error. From-SVN: r181192
2011-11-09re PR tree-optimization/51015 (ice in vect_determine_vectorization_factor ↵Ira Rosen4-3/+35
with -O3) PR tree-optimization/51015 * tree-vect-loop.c (vect_determine_vectorization_factor): Expect vectype to be set for pattern def stmts. From-SVN: r181191
2011-11-08Implement vect_cmdline_needed properly on sparc.David S. Miller2-0/+22
* lib/target-supports.exp (check_effective_target_sparc_vis): New. (check_effective_target_vect_cmdline_needed): Use it when sparc*-*-* From-SVN: r181190
2011-11-09function.c (bb_active_p): Delete.Alan Modra7-243/+511
* function.c (bb_active_p): Delete. (dup_block_and_redirect, active_insn_between): New functions. (convert_jumps_to_returns, emit_return_for_exit): New functions, split out from.. (thread_prologue_and_epilogue_insns): ..here. Delete shadowing variables. Don't do prologue register clobber tests when shrink wrapping already failed. Delete all last_bb_active code. Instead compute tail block candidates for duplicating exit path. Remove these from antic set. Duplicate tails when reached from both blocks needing a prologue/epilogue and blocks not needing such. * ifcvt.c (dead_or_predicable): Test both flag_shrink_wrap and HAVE_simple_return. * bb-reorder.c (get_uncond_jump_length): Make global. * bb-reorder.h (get_uncond_jump_length): Declare. * cfgrtl.c (rtl_create_basic_block): Comment typo fix. (rtl_split_edge): Likewise. Warning fix. (rtl_duplicate_bb): New function. (rtl_cfg_hooks): Enable can_duplicate_block_p and duplicate_block. * Makefile.in (function.o): Update dependencies. From-SVN: r181188
2011-11-09Daily bump.GCC Administrator1-1/+1
From-SVN: r181187
2011-11-08re PR fortran/50404 (SIGSEGV in gfc_resolve_close)Francois-Xavier Coudert4-1/+30
PR fortran/50404 * io.c (gfc_resolve_close): CLOSE requires a UNIT. * gfortran.dg/io_constraints_3.f90: Improve testcase. From-SVN: r181183
2011-11-08re PR fortran/50409 (SIGSEGV in gfc_simplify_expr)Francois-Xavier Coudert4-4/+22
PR fortran/50409 * expr.c (gfc_simplify_expr): Substrings can't have negative length. * gcc/testsuite/gfortran.dg/string_5.f90: Improve testcase. From-SVN: r181181
2011-11-08tm.texi.in (MODE_CODE_BASE_REG_CLASS): Add address space argument.Ulrich Weigand17-175/+274
* doc/tm.texi.in (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * doc/tm.texi: Regenerate. * config/cris/cris.h (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * config/bfin/bfin.h (MODE_CODE_BASE_REG_CLASS): Likewise. (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. * config/avr/avr.h (MODE_CODE_BASE_REG_CLASS): Add address space argument. (REGNO_MODE_CODE_OK_FOR_BASE_P): Ditto. * config/avr/avr-protos.h (avr_mode_code_base_reg_class): Ditto. (avr_regno_mode_code_ok_for_base_p): Ditto. * config/avr/avr.c (avr_mode_code_base_reg_class): Ditto. (avr_regno_mode_code_ok_for_base_p): Ditto. (avr_reg_ok_for_addr_p): Pass AS down to avr_regno_mode_code_ok_for_base_p. * addresses.h (base_reg_class): Add address space argument. Pass to MODE_CODE_BASE_REG_CLASS. (ok_for_base_p_1): Add address space argument. Pass to REGNO_MODE_CODE_OK_FOR_BASE_P. (regno_ok_for_base_p): Add address space argument. Pass to ok_for_base_p_1. * regrename.c (scan_rtx_address): Add address space argument. Pass address space to regno_ok_for_base_p and base_reg_class. Update recursive calls. (scan_rtx): Pass address space to scan_rtx_address. (build_def_use): Likewise. * regcprop.c (replace_oldest_value_addr): Add address space argument. Pass to regno_ok_for_base_p and base_reg_class. Update recursive calls. (replace_oldest_value_mem): Pass address space to replace_oldest_value_addr. (copyprop_hardreg_forward_1): Likewise. * reload.c (find_reloads_address_1): Add address space argument. Pass address space to base_reg_class and regno_ok_for_base_p. Update recursive calls. (find_reloads_address): Pass address space to base_reg_class, regno_ok_for_base_p, and find_reloads_address_1. (find_reloads): Pass address space to base_reg_class. (find_reloads_subreg_address): Likewise. * ira-costs.c (record_reg_classes): Update calls to base_reg_class. (ok_for_base_p_nonstrict): Add address space argument. Pass to ok_for_base_p_1. (record_address_regs): Add address space argument. Pass to base_reg_class and ok_for_base_p_nonstrict. Update recursive calls. (record_operand_costs): Pass address space to record_address_regs. (scan_one_insn): Likewise. * caller-save.c (init_caller_save): Update call to base_reg_class. * ira-conflicts.c (ira_build_conflicts): Likewise. * reload1.c (maybe_fix_stack_asms): Likewise. Co-Authored-By: Georg-Johann Lay <avr@gjlay.de> From-SVN: r181175
2011-11-08re PR c++/50835 (Lvalue-ness of conditional operator results is incorrect in ↵Jason Merrill5-6/+47
a function template) PR c++/50835 * typeck.c (build_x_conditional_expr): Preserve lvalue/xvalueness. * tree.c (lvalue_kind) [NON_DEPENDENT_EXPR]: Return clk_ordinary in C++98. From-SVN: r181174
2011-11-08gengtype.c (write_field_root): Avoid out-of-scope access of newv.Michael Matz22-65/+406
* gengtype.c (write_field_root): Avoid out-of-scope access of newv. * tree-stdarg.c (execute_optimize_stdarg): Accept clobbers. * tree.h (TREE_CLOBBER_P): New macro. * gimple.h (gimple_clobber_p): New inline function. * gimplify.c (gimplify_bind_expr): Add clobbers for all variables that go out of scope and live in memory. * tree-ssa-operands.c (get_expr_operands): Transfer volatility also for constructors. * cfgexpand.c (decl_to_stack_part): New static variable. (add_stack_var): Allocate it, and remember mapping. (fini_vars_expansion): Deallocate it. (stack_var_conflict_p): Add early outs. (visit_op, visit_conflict, add_scope_conflicts_1, add_scope_conflicts): New static functions. (expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy. (expand_used_vars): Add scope conflicts. (expand_gimple_stmt_1): Expand clobbers to nothing. (expand_debug_expr): Ditto. * tree-pretty-print.c (dump_generic_node): Dump clobbers nicely. * tree-ssa-live.c (remove_unused_locals): Remove clobbers that refer to otherwise unused locals. * tree-sra.c (build_accesses_from_assign): Ignore clobbers. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Clobbers of SSA names aren't necessary. (propagate_necessity): Accept and ignore constructors on the rhs, tidy. * gimple.c (walk_gimple_op): Accept constructors like mem_rhs. * tree-ssa-structalias.c (find_func_aliases): Clobbers don't store any known value. * tree-ssa-sccvn.c (vn_reference_lookup_3): Ditto, in particular they don't zero-initialize something. * tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Ignore clobber RHS, we don't want PHI nodes with those. testsuite/ * gcc.dg/tree-ssa/20031015-1.c: Adjust. * g++.dg/tree-ssa/ehcleanup-1.C: Ditto. * g++.dg/eh/builtin1.C: Rewrite to not use local variables. * g++.dg/eh/builtin2.C: Ditto. * g++.dg/eh/builtin3.C: Ditto. From-SVN: r181172
2011-11-08i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX if not ↵Jakub Jelinek5-6/+30
TARGET_PREFER_AVX128 return 32-byte integer vectors. * config/i386/i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX if not TARGET_PREFER_AVX128 return 32-byte integer vectors. * gcc.target/i386/avx-cvt-2.c: Adjust for 32-byte integer vectors being prefered even for -mavx. * gcc.target/i386/avx-cvt-3.c: New test. From-SVN: r181170
2011-11-08re PR tree-optimization/51012 (ICE: in fold_convert_loc, at ↵Richard Guenther6-0/+61
fold-const.c:1897 with -fno-early-inlining and passing incompatible function ptr) 2011-11-08 Richard Guenther <rguenther@suse.de> PR tree-optimization/51012 * ipa-prop.c (update_indirect_edges_after_inlining): Fixup non-inlinable state. * cgraph.c (cgraph_make_edge_direct): Likewise. * gcc.dg/pr51012-1.c: New testcase. * gcc.dg/pr51012-2.c: Likewise. From-SVN: r181166
2011-11-08re PR middle-end/51010 (bad diagnostics: #'ssa_name' not supported by ↵Richard Guenther6-0/+42
pp_c_expression#]') 2011-11-08 Richard Guenther <rguenther@suse.de> PR middle-end/51010 c-family/ * c-pretty-print.c (pp_c_expression): Handle SSA_NAMEs. cp/ * error.c (dump_expr): Handle SSA_NAMEs. * c-c++-common/uninit-pr51010.c: New testcase. From-SVN: r181165
2011-11-08re PR rtl-optimization/47698 (CMOV accessing volatile memory with read side ↵Eric Botcazou2-3/+8
effect) PR rtl-optimization/47698 * ifcvt.c (noce_operand_ok): Move around comment. From-SVN: r181161
2011-11-08re PR regression/50999 (g++.dg/lto/20081109 execute -O2 -flto ↵Richard Guenther2-27/+47
-flto-partition=1to1 -fno-use-linker-plugin) 2011-11-08 Richard Guenther <rguenther@suse.de> PR lto/50999 * lto-opts.c (append_to_collect_gcc_options): Split out from... (lto_write_options): ... here. Prepend frontend specific flags. From-SVN: r181160
2011-11-08sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as ↵Jakub Jelinek2-0/+7
vinsert[fi]128 instead of vperm2[fi]128. * config/i386/sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128. From-SVN: r181158
2011-11-08tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument.Jakub Jelinek10-19/+556
* tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument. Handle vectorization of SLP calls. (vect_analyze_stmt): Adjust caller, add call to it for SLP too. (vect_transform_stmt): Adjust vectorizable_call caller, remove assertion. * tree-vect-slp.c (vect_get_and_check_slp_defs): For calls start with op_idx 3. (vect_build_slp_tree): Allow CALL_EXPR. * lib/target-supports.exp (check_effective_target_vect_call_sqrtf, check_effective_target_vect_call_copysignf, check_effective_target_vect_call_lrint): New procedures. * gcc.dg/vect/vect.exp: Run fast-math-bb-slp* tests using $VECT_SLP_CFLAGS with -ffast-math. * gcc.dg/vect/fast-math-vect-call-1.c: New test. * gcc.dg/vect/fast-math-vect-call-2.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-1.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-2.c: New test. From-SVN: r181157
2011-11-08gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced ↵Richard Guenther2-1/+7
vars setup before adding to them. 2011-11-08 Richard Guenther <rguenther@suse.de> * gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced vars setup before adding to them. From-SVN: r181155
2011-11-08Merge from transactional-memory branch.Aldy Hernandez196-214/+15520
From-SVN: r181154
2011-11-08Fix context handling of alias-declarationDodji Seketeli6-4/+34
gcc/cp/ * decl.c (start_decl): Update comment. * error.c (dump_alias_template_specialization): Dump the context of the specialization. * parser.c (cp_parser_alias_declaration): Call pop_scope on the pushed scope yielded by start_decl. gcc/testsuite * g++.dg/cpp0x/alias-decl-11.C: New test. From-SVN: r181152
2011-11-08re PR c++/50864 (ICE with decltype and "declval" from another namespace)Paolo Carlini5-5/+42
/cp 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * parser.c (cp_parser_postfix_dot_deref_expression): Reject invalid uses of '->' and '.' as postfix-expression in namespace scope. /testsuite 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * g++.dg/parse/template26.C: New. * g++.dg/template/crash45.C: Adjust dg-error string. From-SVN: r181151