aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2012-07-21re PR fortran/48820 (TR 29113: Implement parts needed for MPI 3)Tobias Burnus11-50/+183
2012-07-21 Tobias Burnus <burnus@net-b.de> PR fortran/48820 * trans-intrinsic.c (gfc_conv_intrinsic_bound): Support lbound/ubound with dim= for assumed-rank arrays. * array.c (gfc_set_array_spec): Reject coarrays with assumed shape. * decl.c (merge_array_spec): Ditto. Return gfc_try. (match_attr_spec, match_attr_spec): Update call. 2012-07-21 Tobias Burnus <burnus@net-b.de> PR fortran/48820 * gfortran.dg/assumed_rank_3.f90: New. * gfortran.dg/assumed_rank_11.f90: New. * gfortran.dg/assumed_rank_1.f90: Update dg-error. * gfortran.dg/assumed_rank_2.f90: Update dg-error. * gfortran.dg/assumed_rank_7.f90: Update dg-error. From-SVN: r189743
2012-07-21mips-protos.h (mips_expand_ext_as_unaligned_load): Add a bool argument.Andrew Pinski6-5/+88
2012-07-21 Andrew Pinski <apinski@cavium.com> * config/mips/mips-protos.h (mips_expand_ext_as_unaligned_load): Add a bool argument. * config/mips/mips.c (mips_block_move_straight): Update call to mips_expand_ext_as_unaligned_load. (mips_expand_ext_as_unaligned_load): Add unsigned_p argument. Accept DImode dest when the width is that of SImode. * config/mips/mips.md (extv): Update call to mips_expand_ext_as_unaligned_load. (extzv): Likewise. 2012-07-21 Andrew Pinski <apinski@cavium.com> * gcc.target/mips/unaligned-1.c: New testcase. From-SVN: r189742
2012-07-21resolve.c (resolve_formal_arglist): Put variable declaration before the ↵Tobias Burnus2-1/+7
first assignment. 2012-07-21 Tobias Burnus <burnus@net-b.de> * resolve.c (resolve_formal_arglist): Put variable declaration before the first assignment. From-SVN: r189740
2012-07-21trans-expr.c (gfc_conv_derived_to_class): Fix argument passed to ↵Tobias Burnus2-2/+6
class_array_data_assign. 2012-07-21 Tobias Burnus <burnus@net-b.de> * trans-expr.c (gfc_conv_derived_to_class): Fix argument passed to class_array_data_assign. From-SVN: r189739
2012-07-21mips.c (mips_get_unaligned_mem): Copy *op after calling adjust_address.Andrew Pinski2-3/+9
2012-07-21 Andrew Pinski <apinski@cavium.com> * config/mips/mips.c (mips_get_unaligned_mem): Copy *op after calling adjust_address. From-SVN: r189738
2012-07-21Daily bump.GCC Administrator1-1/+1
From-SVN: r189737
2012-07-21mips.md (define_attr sync_*): Move before "type".Maxim Kuvyrkov21-71/+111
* config/mips/mips.md (define_attr sync_*): Move before "type". (define_attr "type"): New values "atomic" and "syncloop". * config/mips/sync.md (atomic_exchange<mode>, atomic_fetch_add<mode>): Set "type" attribute. * config/mips/generic.md (generic_atomic, generic_syncloop): New reservations. * gcc/config/mips/10000.md, gcc/config/mips/20kc.md, * gcc/config/mips/24k.md, gcc/config/mips/4130.md, * gcc/config/mips/4k.md, gcc/config/mips/5400.md, * gcc/config/mips/5500.md, gcc/config/mips/5k.md, * gcc/config/mips/7000.md, gcc/config/mips/74k.md, * gcc/config/mips/9000.md, gcc/config/mips/loongson2ef.md, * gcc/config/mips/loongson3a.md, gcc/config/mips/octeon.md, * gcc/config/mips/sb1.md, gcc/config/mips/sr71k.md, * gcc/config/mips/xlr.md: Handle "atomic" and "syncloop" types. From-SVN: r189734
2012-07-20* gcc.c-torture/execute/20101011-1.c (DO_TEST): Define as 0 for CRIS.Hans-Peter Nilsson2-0/+7
From-SVN: r189733
2012-07-20Fix ChangeLog formatting.Oleg Endo1-11/+11
From-SVN: r189731
2012-07-20sh.md: Group and sort shift related patterns.Oleg Endo2-298/+280
* config/sh/sh.md: Group and sort shift related patterns. (ashlsi3_n, *ashlhi3_n, lshrsi3_n): Remove length attributes. From-SVN: r189730
2012-07-20cris.c (cris_asm_output_ident): Remove unused local variables ↵Hans-Peter Nilsson2-4/+5
section_asm_op, size, buf. * config/cris/cris.c (cris_asm_output_ident): Remove unused local variables section_asm_op, size, buf. From-SVN: r189729
2012-07-20power4.md (power4-store-update): Fix reservation.Pat Haugen2-5/+8
2012-07-20 Pat Haugen <pthaugen@us.ibm.com> Steven Bosscher <steven@gcc.gnu.org> * config/rs6000/power4.md (power4-store-update): Fix reservation. (power4-three): Likewise. Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org> From-SVN: r189728
2012-07-20decl.c (gfc_verify_c_interop_param): Allow assumed-shape with -std=f2008ts.Tobias Burnus5-24/+41
2012-07-20 Tobias Burnus <burnus@net-b.de> * decl.c (gfc_verify_c_interop_param): Allow assumed-shape with -std=f2008ts. 2012-07-20 Tobias Burnus <burnus@net-b.de> * gfortran.dg/bind_c_array_params_2.f90: New. * gfortran.dg/bind_c_array_params.f03: Add -std=f2003 and update dg-error. From-SVN: r189726
2012-07-20assumed_rank_12.f90: Update dg-error.Tobias Burnus2-1/+5
2012-07-20 Tobias Burnus <burnus@net-b.de> * gfortran.dg/assumed_rank_12.f90: Update dg-error. From-SVN: r189725
2012-07-20arm.c (arm_cortex_a15_tune): New tune.Sameera Deshpande3-1/+19
gcc/ 2012-07-20 Sameera Deshpande <sameera.deshpande@arm.com> Greta Yorsh <Greta.Yorsh@arm.com> * config/arm/arm.c (arm_cortex_a15_tune): New tune. * config/arm/arm-cores.def (cortex-a15): Use it. Co-Authored-By: Greta Yorsh <greta.yorsh@arm.com> From-SVN: r189723
2012-07-20arm-protos.h (tune_params): Add prefer_ldrd_strd.Sameera Deshpande3-10/+32
gcc/ 2012-07-20 Sameera Deshpande <sameera.deshpande@arm.com> Greta Yorsh <Greta.Yorsh@arm.com> * config/arm/arm-protos.h (tune_params): Add prefer_ldrd_strd. * config/arm/arm.c (arm_slowmul_tune): Initialize it. (arm_fastmul_tune, arm_strongarm_tune): Likewise. (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune): Likewise. (arm_cortex_tune, arm_cortex_a5_tune, arm_cortex_a9_tune): Likewise. (arm_fa726te_tune): Likewise. Co-Authored-By: Greta Yorsh <greta.yorsh@arm.com> From-SVN: r189722
2012-07-20re PR c++/54038 (finalize_type_size enters infinite loop becasue ↵Jason Merrill4-11/+32
TYPE_NEXT_VARIANT (variant) == variant) PR c++/54038 * tree.c (build_cplus_array_type): Use build_cplus_array_type to build canonical array type rather than mess with its TYPE_*_VARIANT. From-SVN: r189719
2012-07-20tree-dfa.c (collect_dfa_stats): Simplify.Richard Guenther6-58/+27
2012-07-20 Richard Guenther <rguenther@suse.de> * tree-dfa.c (collect_dfa_stats): Simplify. * tree-ssa-structalias.c (compute_may_aliases): Do not dump referenced vars. * cfgexpand.c (estimated_stack_frame_size): Walk over local decls instead of referenced vars. * tree-ssa.c (delete_tree_ssa): Simplify. * tree-tailcall.c (find_tail_calls): Walk over local decls instead of referenced vars. (add_virtual_phis): Remove. (tree_optimize_tail_calls_1): Instead mark the virtual operand for renaming. From-SVN: r189718
2012-07-20basic-block.h (BB_FLAGS_TO_PRESERVE): New define.Steven Bosscher18-102/+207
gcc/ * basic-block.h (BB_FLAGS_TO_PRESERVE): New define. (brief_dump_cfg): Update prototype to take flags argument. (check_bb_profile): Remove prototype. * tracer.c (tracer): Update brief_dump_cfg calls. * cfghooks.c (dump_bb): Do not pass TDF_COMMENT to dump_bb_info. Call dump_bb_info before and after the cfghook dump_bb. Terminate the dump with a newline. (dump_flow_info): Do not call check_bb_profile. * cfg.c (clear_bb_flags): Update using BB_FLAGS_TO_PRESERVE. (check_bb_profile): Make static. Take indent and flags arguments. (dump_bb_info): Always dump loop depth. With TDF_DETAILS, call check_bb_profile. Print one edge per line. (brief_dump_cfg): Take a flags argument, and filter out TDF_COMMENT and TDF_DETAILS. * pretty-print.c (pp_base_newline): Set pp_needs_newline to false. * gimple-pretty-print.c (dump_gimple_bb_header): Do not use dump_bb_info here, it is already called from dump_bb. Idem for check_bb_profile. (dump_gimple_bb_footer): Likewise. (gimple_dump_bb_buff): Call pp_flush after dump_gimple_stmt to avoid broken dumps for statement histograms. (gimple_dump_bb): Handle ENTRY_BLOCK and EXIT_BLOCK. Do not call pp_flush here, the buffer should be empty. * sched-rgn.c (debug_region): Pass TDF_BLOCKS to dump_bb. * sched-vis.c (debug_bb_slim): Likewise. * tree-cfg.c (remove_bb): Pass dump_flags to dump_bb. (gimple_debug_bb): Pass TDF_BLOCKS to dump_bb. (gimple_dump_cfg): Do brief_dump_cfg with TDF_COMMENT. (dump_function_to_file): Do not call check_bb_profile on ENTRY_BLOCK and EXIT_BLOCK, check_bb_profile doesn't handle them. Use dump_bb instead of gimple_dump_bb. (print_loops_bb): Use dump_bb instead of gimple_dump_bb. * passes.c (execute_function_dump): Always call print_rtl_with_bb for RTL dumps. * cfgrtl.c (print_rtl_with_bb): Handle printing without an up-to-date CFG. With TDF_BLOCKS and TDF_DETAILS, do DF dumps at the top and bottom of each basic block. testsuite/ * gcc.dg/tree-prof/update-loopch.c: Look for counts on the dumps of the basic block and check loop depth. * gcc.dg/tree-ssa/pr18133-1.c: Dump details, not blocks. Update matching patterns and comments. * gcc.dg/tree-ssa/20031021-1.c: Fix check patterns. * gcc.dg/tree-ssa/vector-2.c: Likewise. From-SVN: r189717
2012-07-20re PR tree-optimization/54031 (Revision 189607 miscompiles Linux kernel)Richard Guenther2-1/+7
2012-07-20 Richard Guenther <rguenther@suse.de> PR tree-optimization/54031 * tree-ssa-ccp.c (get_value_from_alignment): Use get_pointer_alignment_1. From-SVN: r189715
2012-07-20tree-inline.c (add_local_variables): Remove check_var_ann parameter and dead ↵Richard Guenther2-10/+11
code. 2012-07-20 Richard Guenther <rguenther@suse.de> * tree-inline.c (add_local_variables): Remove check_var_ann parameter and dead code. (expand_call_inline): Adjust. (tree_function_versioning): Likewise. From-SVN: r189712
2012-07-20re PR c++/28656 (duplicated null argument warning on memcpy())Jakub Jelinek6-35/+100
PR c++/28656 * tree-vrp.c (nonnull_arg_p): Handle all nonnull attributes instead of just the first one. * c-common.c (check_function_nonnull): Handle multiple nonnull attributes properly. * c-c++-common/pr28656.c: New test. From-SVN: r189707
2012-07-20builtins.c (get_object_alignment_2): Correct offset handling when using type ↵Richard Guenther2-7/+20
alignment of a MEM_REF kind base. 2012-07-20 Richard Guenther <rguenther@suse.de> * builtins.c (get_object_alignment_2): Correct offset handling when using type alignment of a MEM_REF kind base. From-SVN: r189704
2012-07-20re PR target/53877 (__lzcnt_u16/__lzcnt_u32/__lzcnt_u64 aren't implemented)Kirill Yukhin2-0/+18
2012-07-20 Kirill Yukhin <kirill.yukhin@intel.com> PR target/53877 * config/i386/lzcntintrin.h (_lzcnt_u32): New. (_lzcnt_u64): Ditto. From-SVN: r189703
2012-07-20re PR c++/54026 (template const struct with mutable members erroneously ↵Jason Merrill4-3/+31
emitted to .rodata) PR c++/54026 * typeck.c (cp_apply_type_quals_to_decl): Check COMPLETE_TYPE_P. From-SVN: r189701
2012-07-20re PR fortran/48820 (TR 29113: Implement parts needed for MPI 3)Tobias Burnus33-120/+1411
2012-07-20 Tobias Burnus <burnus@net-b.de> PR fortran/48820 * array.c (match_array_element_spec, gfc_match_array_spec, spec_size, gfc_array_dimen_size): Add support for assumed-rank arrays. * check.c (dim_rank_check): Ditto. * class.c (gfc_add_component_ref): Ditto. (gfc_build_class_symbol): Regard assumed-rank arrays as having GFC_MAX_DIMENSIONS. And build extra class container for a scalar pointer class. * decl.c (merge_array_spec): Add assert. * dump-parse-tree.c (show_array_spec): Add support for assumed-rank arrays. * expr.c (gfc_is_simply_contiguous): Ditto. * gfortran.h (array_type): Ditto. (gfc_array_spec, gfc_expr): Add comment to "rank" field. * interface.c (compare_type_rank, argument_rank_mismatch, compare_parameter, gfc_procedure_use): Ditto. (compare_actual_formal): Fix NULL() to optional-dummy handling for polymorphic dummies. * module.c (mio_typespec): Add support for assumed-rank arrays. * resolve.c (resolve_formal_arglist, resolve_actual_arglist, resolve_elemental_actual, resolve_global_procedure, expression_shape, resolve_variable, update_ppc_arglist, check_typebound_baseobject, gfc_resolve_expr, resolve_fl_var_and_proc, gfc_resolve_finalizers, resolve_typebound_procedure, resolve_symbol): Ditto. (assumed_type_expr_allowed): Remove static variable. (actual_arg, first_actual_arg): New static variables. * simplify.c (simplify_bound, gfc_simplify_range): Add support for assumed-rank arrays. * trans-array.c (gfc_conv_array_parameter): Ditto. (gfc_get_descriptor_dimension): New function, which returns the descriptor. (gfc_conv_descriptor_dimension): Use it. (gfc_conv_descriptor_stride_get, gfc_conv_array_parameter): Handle GFC_ARRAY_ASSUMED_RANK_CONT and AS_ASSUMED_RANK. * trans-array.h (gfc_get_descriptor_dimension): New prototype. * trans-decl. (gfc_build_dummy_array_decl, gfc_trans_deferred_vars, add_argument_checking): Add support for assumed-rank arrays. * trans-expr.c (gfc_conv_expr_present, gfc_conv_variable, gfc_conv_procedure_call): Ditto. (get_scalar_to_descriptor_type, class_array_data_assign, conv_scalar_to_descriptor): New static functions. (gfc_conv_derived_to_class, gfc_conv_class_to_class): Use them. * trans-intrinsic.c (get_rank_from_desc): New function. (gfc_conv_intrinsic_rank, gfc_conv_associated): Use it. * trans-types.c (gfc_array_descriptor_base_caf, gfc_array_descriptor_base): Make space for scalar array. (gfc_is_nodesc_array, gfc_is_nodesc_array, gfc_build_array_type, gfc_get_array_descriptor_base): Add support for assumed-rank arrays. * trans.h (gfc_array_kind): Add GFC_ARRAY_ASSUMED_RANK and GFC_ARRAY_ASSUMED_RANK_CONT. 2012-07-20 Tobias Burnus <burnus@net-b.de> PR fortran/48820 * gfortran.dg/assumed_type_3.f90: Update dg-error. * gfortran.dg/assumed_rank_1.f90: New. * gfortran.dg/assumed_rank_1_c.c: New. * gfortran.dg/assumed_rank_2.f90: New. * gfortran.dg/assumed_rank_4.f90: New. * gfortran.dg/assumed_rank_5.f90: New. * gfortran.dg/assumed_rank_6.f90: New. * gfortran.dg/assumed_rank_7.f90: New. * gfortran.dg/assumed_rank_8.f90: New. * gfortran.dg/assumed_rank_8_c.c: New. * gfortran.dg/assumed_rank_9.f90: New. * gfortran.dg/assumed_rank_10.f90: New. * gfortran.dg/assumed_rank_12.f90: New. From-SVN: r189700
2012-07-20Daily bump.GCC Administrator1-1/+1
From-SVN: r189695
2012-07-19* config/sparc/sparc.md (adddi3_insn_sp32): Add earlyclobber.Eric Botcazou3-2/+6
From-SVN: r189689
2012-07-19tree-ssa-forwprop.c (combine_conversions): Punt if the RHS of the defining ↵Eric Botcazou8-0/+82
statement is a SSA name that occurs in abnormal... * tree-ssa-forwprop.c (combine_conversions): Punt if the RHS of the defining statement is a SSA name that occurs in abnormal PHIs. From-SVN: r189687
2012-07-19gimple-fold.c (canonicalize_constructor_val): Strip only useless type ↵Eric Botcazou6-1/+54
conversions. * gimple-fold.c (canonicalize_constructor_val): Strip only useless type conversions. From-SVN: r189685
2012-07-19decl.c (gnat_to_gnu_entity): Try to ensure that an object of CW type ↵Eric Botcazou6-1/+80
initialized to a value is sufficiently... * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Try to ensure that an object of CW type initialized to a value is sufficiently aligned for this value. From-SVN: r189682
2012-07-19re PR rtl-optimization/53942 (unable to find a register to spill in class ↵Jakub Jelinek4-2/+63
'CREG') PR rtl-optimization/53942 * function.c (assign_parm_setup_reg): Avoid zero/sign extension directly from likely spilled non-fixed hard registers, move them to pseudo first. * gcc.dg/pr53942.c: New test. From-SVN: r189681
2012-07-19mips.c (mips_set_mips16_mode): Clear SYNCI_MASK in MIPS16 mode.Steve Ellcey2-0/+8
2012-07-19 Steve Ellcey <sellcey@mips.com> * config/mips/mips.c (mips_set_mips16_mode): Clear SYNCI_MASK in MIPS16 mode. From-SVN: r189680
2012-07-19trans-expr.c (gfc_conv_procedure_call): Fix handling of polymorphic arguments.Tobias Burnus3-10/+33
2012-07-19 Tobias Burnus <burnus@net-b.de> * trans-expr.c (gfc_conv_procedure_call): Fix handling of polymorphic arguments. * resolve.c (resolve_formal_arglist): Ditto, mark polymorphic assumed-shape arrays as such. From-SVN: r189678
2012-07-19re PR c++/54021 ([c++0x] __builtin_constant_p should be constexpr)Jason Merrill4-1/+36
PR c++/54021 * call.c (build_cxx_call): Set optimize when folding __builtin_constant_p in a constexpr function. From-SVN: r189677
2012-07-19re PR debug/53235 (20120504 broke -fdebug-types-section)Jason Merrill3-4/+43
PR debug/53235 * dwarf2out.c (generate_type_signature): Handle the case of DIE being nested, rather than its declaration.. From-SVN: r189676
2012-07-19ia64: Update vector multiply pattern names; delete dot_prodRichard Henderson4-105/+33
With the even/odd v4hi multiply pattern names, we'll automatically generate the same code for dot_prodv4hi. The dot_prodv8qi pattern was actively incorrect wrt output mode. * config/ia64/vect.md (smulv4hi3_highpart): New. (umulv4hi3_highpart): New. (vec_widen_smult_even_v4hi): Rename from pmpy2_even. (vec_widen_smult_odd_v4hi): Rename from pmpy2_odd. (udot_prodv8qi, sdot_prodv8qi): Remove. (sdot_prodv4hi, udot_prodv4hi): Remove. * config/ia64/ia64.c (ia64_expand_dot_prod_v8qi): Remove. * config/ia64/ia64-protos.h: Update. From-SVN: r189674
2012-07-19Allow divmod on UNITS_PER_WORD vectorsRichard Henderson2-2/+4
* tree-vect-patterns.c (vect_recog_divmod_pattern): Do not require vectors larger than UNITS_PER_WORD. From-SVN: r189673
2012-07-19Fix 0 != CODE_FOR_nothing thinkoRichard Henderson3-2/+8
* expr.c (store_constructor): Initialize icode with CODE_FOR_nothing. * tree-vect-stmts.c (vectorizable_operation): Use LAST_INSN_CODE for dummy != CODE_FOR_nothing value. From-SVN: r189672
2012-07-19interface.c (compare_parameter, [...]): Fix handling of polymorphic arguments.Tobias Burnus2-6/+21
2012-07-19 Tobias Burnus <burnus@net-b.de> * interface.c (compare_parameter, compare_actual_formal): Fix handling of polymorphic arguments. From-SVN: r189669
2012-07-19decl.c (gnat_to_gnu_entity): Do not look up the REP part of the base type in ↵Eric Botcazou4-6/+57
advance. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Do not look up the REP part of the base type in advance. Deal with that of the variant types. (get_rep_part): Be prepared for record types with fields. From-SVN: r189666
2012-07-19tm.texi.in (MODE_AFTER): Add entity as the first macro argument.Uros Bizjak6-70/+77
* doc/tm.texi.in (MODE_AFTER): Add entity as the first macro argument. * doc/tm.texi: Regenerate. * mode-switching.c (optimize_mode_switching): Update MODE_AFTER call. * config/sh/sh.h (MODE_AFTER): Update. * config/epiphany/epiphany.h (MODE_AFTER): Update. From-SVN: r189665
2012-07-19re PR middle-end/54017 (Incorrect implementation of infinite loops in OpenMP ↵Jakub Jelinek5-83/+117
sections leads to SIGILL) PR middle-end/54017 * tree-cfgcleanup.c (cleanup_omp_return): Remove. (cleanup_tree_cfg_bb): Don't call it. * omp-low.c (expand_omp_sections): Fix up the !exit_reachable case handling. * c-c++-common/gomp/pr54017.c: New test. From-SVN: r189658
2012-07-19re PR target/54029 (SH: ICE in find_dead_or_set_registers)Christian Bruel2-2/+17
PR target/54029 * config/sh/sh.c (gen_far_branch): Set JUMP_LABEL for return jumps. From-SVN: r189652
2012-07-19tree-ssa-ccp.c (valid_lattice_transition): Clarify comment about transition ↵Richard Guenther5-1/+51
from invariant to known bits. 2012-07-19 Richard Guenther <rguenther@suse.de> Eric Botcazou <ebotcazou@adacore.com> * tree-ssa-ccp.c (valid_lattice_transition): Clarify comment about transition from invariant to known bits. (likely_value): Addresses with UNDEFINED components are UNDEFINED. * gnat.dg/loop_optimization11.adb: New testcase. * gnat.dg/loop_optimization11_pkg.ads: Likewise. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> From-SVN: r189650
2012-07-19re PR tree-optimization/53970 (-ftree-vectorization does not handle well ↵Richard Guenther2-1/+7
unaligned data) 2012-07-19 Richard Guenther <rguenther@suse.de> PR tree-optimization/53970 * tree-vect-data-refs.c (not_size_aligned): Avoid sign-compare warning. From-SVN: r189647
2012-07-19eh_personality.cc (__gxx_personality_seh0): New function.Tristan Gingold9-5/+96
libstdc++-v3/ * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function. Adjust for SEH. * config/abi/pre/gnu.ver: Add __gxx_personality_seh0. libobjc/ * exception.c (__gnu_objc_personality_seh0): New function. libjava/ * libgcj.ver: Add __gcj_personality_seh0. * exception.cc (__gcj_personality_seh0): New function. Adjust for SEH. libgcc/ * unwind-seh.c: New file. * unwind-generic.h: Include windows.h for SEH. (_Unwind_Exception): Use 6 private fields for SEH. (_GCC_specific_handler): Declare. * unwind-c.c (__gcc_personality_seh0): New function. Adjust for SEH. * config/i386/libgcc-cygming.ver: New file. * config/i386/t-seh-eh: New file. * config.host (x86_64-*-mingw*): Default to seh. gcc/ * opts.c (finish_options): Handle UI_SEH. * expr.c (build_personality_function): Handle UI_SEH. * dwarf2out.c (dwarf2out_begin_prologue): Handle UI_SEH. * coretypes.h (unwind_info_type): Add UI_SEH. * config/i386/winnt.c (i386_pe_seh_emit_except_personality): New function. (i386_pe_seh_init_sections): Likewise. * config/i386/cygming.h (TARGET_ASM_EMIT_EXCEPT_PERSONALITY): Define. (TARGET_ASM_INIT_SECTIONS): Define. * common/config/i386/i386-common.c (TARGET_EXCEPT_UNWIND_INFO): Define. (i386_except_unwind_info): New function. Co-Authored-By: Richard Henderson <rth@redhat.com> From-SVN: r189644
2012-07-18* pt.c (instantiate_decl): Don't recheck substitutions.Jason Merrill2-29/+4
From-SVN: r189640
2012-07-18DR 1170 PR c++/51213Paolo Carlini18-125/+234
DR 1170 PR c++/51213 * semantics.c (perform_access_checks): Add complain parm, return bool. (perform_deferred_access_checks): Likewise. (perform_or_defer_access_check): Likewise. (speculative_access_check): Remove. * call.c (enforce_access): Add complain parm, return bool. * decl.c, friend.c, class.c, init.c, parser.c: Adjust callers. * search.c: Adjust callers. * cp-tree.h (TINFO_RECHECK_ACCESS_P): New macro. (FNDECL_RECHECK_ACCESS_P): New macro. * method.c (synthesized_method_walk): Stop deferring access checks. * pt.c (recheck_decl_substitution): New. (instantiate_template_1): Set and check FNDECL_RECHECK_ACCESS_P. Co-Authored-By: Jason Merrill <jason@redhat.com> From-SVN: r189639
2012-07-18method.c (process_subob_fn): Make sure no_implicit_p is non-null before ↵Jason Merrill2-1/+6
trying to store through it. * method.c (process_subob_fn): Make sure no_implicit_p is non-null before trying to store through it. From-SVN: r189638