1. 06 Nov, 2010 16 commits
    • re PR fortran/46330 ([OOP] ICE after revision 166368) · fbc7f9df
      2010-11-06  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/46330
      	* trans-expr.c (gfc_trans_class_assign): Find 'vtab' symbol in correct
      	namespace.
      
      
      2010-11-06  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/46330
      	* gfortran.dg/class_27.f03: New.
      
      From-SVN: r166405
      Janus Weil committed
    • re PR middle-end/46314 (frontends use ASM_GENERATE_INTERNAL_LABEL) · 4ee3b013
      	PR middle-end/46314
      gcc:
      	* target.def (generate_internal_label): New asm_out hook.
      	* output.h (default_generate_internal_label): Declare.
      	* varasm.c (default_generate_internal_label): Define.
      gcc/cp:
      	* method.c (make_alias_for_thunk):
      	Use targetm.asm_out.generate_internal_label.
      gcc/java:
      	* class.c: Include target.h.
      	(make_local_function_alias):
      	Use targetm.asm_out.generate_internal_label.
      	* expr.c (lookup_label, generate_name): Likewise.
      
      From-SVN: r166404
      Joern Rennecke committed
    • In gcc/objc/: 2010-11-05 Nicola Pero <nicola.pero@meta-innovation.com> · a9625a91
      In gcc/objc/:
      2010-11-05  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              Fixed using the Objective-C 2.0 syntax with self and super.
              * objc-act.c (OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS): New.
              (maybe_make_artificial_property_decl): Added 'implementation'
              argument.  Use OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS when
              looking up getters or setters for a class.  If an implementation
              is specified, search it as well for a getter or setter.
              (objc_maybe_build_component_ref): Updated calls to
              maybe_make_artificial_property_decl; added code to deal with
              'self' and 'super' and with methods declared locally in the
              implementation.  Store the getter call expression in the
              PROPERTY_REF instead of throwing it away.
              (objc_build_class_component_ref): Updated calls to
              maybe_make_artificial_property_decl, and store the getter call
              expression in PROPERTY_REF instead of throwing it away.
              (lookup_method_static): Implemented
              OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS option.
              (objc_gimplify_property_ref): Do not build the getter method call
              here; instead use the one stored in the PROPERTY_REF.  If it's not
              there, produce helpful error messages.
              * objc-tree.def (PROPERTY_REF): Increased the number of operands
              from 2 to 3.  Updated comments.
              * objc-act.h (PROPERTY_REF_GETTER_CALL): New.
      
      In gcc/testsuite/:
      2010-11-05  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              Fixed using the Objective-C 2.0 dot-syntax with self and super.
              * objc.dg/property/dotsyntax-5.m: New.
              * objc.dg/property/dotsyntax-6.m: New.
              * objc.dg/property/dotsyntax-7.m: New.
              * objc.dg/property/dotsyntax-8.m: New.
              * objc.dg/property/dotsyntax-9.m: New.
              * objc.dg/property/dotsyntax-10.m: New.
              * objc.dg/property/dotsyntax-11.m: New.
              * obj-c++.dg/property/dotsyntax-5.mm: New.
              * obj-c++.dg/property/dotsyntax-6.mm: New.
              * obj-c++.dg/property/dotsyntax-7.mm: New.
              * obj-c++.dg/property/dotsyntax-8.mm: New.
              * obj-c++.dg/property/dotsyntax-9.mm: New.
              * obj-c++.dg/property/dotsyntax-10.mm: New.
              * obj-c++.dg/property/dotsyntax-11.mm: New.
      
      From-SVN: r166402
      Nicola Pero committed
    • encode-3.mm: Provide a different string check for the NeXT runtime when the type is READONLY. · cd746c27
      
      gcc/testsuite:
      
              * obj-c++.dg/encode-3.mm: Provide a different string check for the
              NeXT runtime when the type is READONLY.
      
      From-SVN: r166401
      Iain Sandoe committed
    • 387-2.c: Skip if -march= is specified. · ea0b50bd
      	* gcc.target/i386/387-2.c: Skip if -march= is specified.
      	* gcc.target/i386/387-6.c: Ditto.
      	* gcc.target/i386/387-2.c: Add -mfancy-math-387 to dg-options.
      	* gcc.target/i386/387-4.c: Ditto.
      	* gcc.target/i386/387-7.c: Ditto.
      	* gcc.target/i386/387-8.c: Ditto.
      	* gcc.target/i386/387-9.c: Ditto.
      	* gcc.target/i386/387-10.c: Ditto.
      	* gcc.target/i386/387-11.c: Ditto.
      	* gcc.target/i386/387-12.c: Ditto.
      
      	* gcc.target/i386/387-2.c: Add -mno-sse3 to dg-options.
      
      From-SVN: r166400
      Uros Bizjak committed
    • revert unintended change to gcc-def.exp. · 0e13f09b
      From-SVN: r166399
      Iain Sandoe committed
    • NS/CF String format syntax parsing. · 91ebb981
      gcc:
      
      	PR target/44981
      	* doc/extend.tex (format): Document NSString extension.
      	(format_arg): Likewise.
      	(Darwin Format Checks): New section.
      	* doc/tm.texi: Document string object hooks (generated).
      	* doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Rename.
      	(TARGET_STRING_OBJECT_REF_TYPE_P): New.
      	(TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
      	* target.def (objc_construct_string_object): Rename, amend 
      	documentation.
      	(string_object_ref_type_p): New hook.
      	(check_string_object_format_arg): New hook.
      	* c-parser.c (c_parser_attributes): Allow objective-c class names as
      	attribute identifiers.
      	* config/darwin-c.c (darwin_cfstring_ref_p): New.
      	(darwin_check_cfstring_format_arg): New.
      	(darwin_additional_format_types): New.
      	* config/darwin-protos.h (darwin_cfstring_ref_p) New.
      	(darwin_check_cfstring_format_arg): New.
      	* config/darwin.h (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Renamed.
      	(TARGET_STRING_OBJECT_REF_TYPE_P): New.
      	(TARGET_N_FORMAT_TYPES): New.
      	(TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
      
      gcc/c-family:
      
      	PR target/44981
      	* c-format.c (format_type): New type gcc_objc_string_format_type.
      	(valid_stringptr_type_p): New.
      	(handle_format_arg_attribute): Use valid_stringptr_type_p ().
      	(check_format_string): Pass expected type, use 
      	valid_stringptr_type_p (), check that the format string types are
      	consistent with the format specification.
      	(decode_format_attr): Warn if NSString is used outside objective-c.
      	(format_types_orig): Add NSString.
      	(format_name): New.
      	(format_flags): New.
      	(check_format_arg): Handle format strings requiring an external parser.
      	first_target_format_type: New variable.
      	(handle_format_attribute): Set up first_target_format_type, pass the
      	expected format arg string type to check_format_string().
      	* c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL):  New flag.
      	* stub-objc.c (objc_string_ref_type_p): New.
      	(objc_check_format_arg): New.
      
      gcc/objc:
      
      	PR target/44981
      	* objc-act.c (objc_build_string_object): Amend for renamed hook.
      	(objc_string_ref_type_p): New.
      	(objc_check_format_arg): New.
      
      gcc/testsuite:
      
      	PR target/44981
      	* gcc.dg/darwin-cfstring-format-1.c: New.
      	* gcc.dg/warn-nsstring.c: New.
      	* objc.dg/fsf-nsstring-format-1.m: New.
      	* obj-c++.dg/fsf-nsstring-format-1.mm: New.
      	* obj-c++.dg/torture/strings/const-cfstring-1.mm: Update for darwin10
      	linker warning.
      
      From-SVN: r166398
      Iain Sandoe committed
    • cygming.h (DWARF_FRAME_REGISTERS): Redefine. · 2952a37e
      	* config/i386/cygming.h (DWARF_FRAME_REGISTERS): Redefine.  Use 33
      	in 64-bit mode and 17 otherwise.
      
      Co-Authored-By: Pascal Obry <obry@adacore.com>
      
      From-SVN: r166397
      Eric Botcazou committed
    • re PR debug/45939 (Wrong debug info: Negative location range generated) · 8784e5ac
      2010-11-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	PR debug/45939
      	* var-tracking.c (emit_note_insn_var_location): Make sure that
      	call related var location notes come before the normal ones.
      
      From-SVN: r166396
      Andreas Krebbel committed
    • Fix a typo in ix86_delegitimize_address. · 77bb7c61
      2010-11-05  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/46326
      	* config/i386/i386.c (ix86_delegitimize_address): Fix a typo
      	in the last change.
      
      From-SVN: r166394
      H.J. Lu committed
    • explow.c (allocate_dynamic_stack_space): Check MALLOC_ABI_ALIGNMENT. · c070a3b9
      	* explow.c (allocate_dynamic_stack_space): Check
      	MALLOC_ABI_ALIGNMENT.
      
      From-SVN: r166393
      Ian Lance Taylor committed
    • user.cfg.in: Add typeindex. · cde99631
      
      2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* doc/doxygen/user.cfg.in: Add typeindex.
      
      	* testsuite/util/testsuite_common_types.h (constexpr_comparison_eq_ne,
      	constexpr_comparison_operators): New.
      	* testsuite/20_util/duration/comparisons: Move...
      	* testsuite/20_util/duration/comparison_operators: ...here.
      	* testsuite/20_util/duration/comparison_operators/constexpr.cc: New.
      	* testsuite/20_util/time_point/comparison_operators/constexpr.cc: Add.
      
      	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Adjust line
      	numbers.
      	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
      	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
      	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
      
      From-SVN: r166392
      Benjamin Kosnik committed
    • re PR c++/45473 (ICE: in dfs_walk_once, at cp/search.c:1659) · e52a5db6
      	PR c++/45473
      	* search.c (look_for_overrides): A constructor is never virtual.
      
      From-SVN: r166391
      Jason Merrill committed
    • Daily bump. · 614122f4
      From-SVN: r166390
      GCC Administrator committed
    • shared_ptr.h (shared_ptr<>::__shared_ptr(), [...]): Add constexpr specifier. · be9d3d73
      2010-11-05  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/bits/shared_ptr.h (shared_ptr<>::__shared_ptr(),
      	shared_ptr<>::shared_ptr(nullptr_t), weak_ptr<>::weak_ptr(),
      	enable_shared_from_this::enable_shared_from_this()): Add constexpr
      	specifier.
      	* include/bits/shared_ptr_base.h (__shared_count::__shared_count(),
      	__shared_count::__shared_count(), __shared_ptr<>::__shared_ptr(),
      	__shared_ptr<>::__shared_ptr(nullptr_t), __weak_ptr<>::__weak_ptr(),
      	__enable_shared_from_this::__enable_shared_from_this()): Likewise.
      	* include/bits/unique_ptr.h (default_delete,
      	unique_ptr<>::unique_ptr(), unique_ptr<>::unique_ptr(nullptr_t)):
      	Likewise.
      	* testsuite/20_util/default_delete/cons/constexpr.cc: Do not xfail.
      	* testsuite/20_util/shared_ptr/cons/constexpr.cc: Remove, the test
      	cannot work for a non-literal type like std::shared_ptr.
      	* testsuite/20_util/weak_ptr/cons/constexpr.cc: Likewise.
      	* testsuite/util/testsuite_common_types.h: Add comments.
      	* testsuite/20_util/unique_ptr/cons/constexpr.cc: Likewise.
      	* testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error line
      	numbers.
      	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
      
      From-SVN: r166386
      Paolo Carlini committed
    • re PR c/44772 (-Wc++-compat warns incorrectly for anonymous unions) · a75de692
      	PR c/44772
      	* c-decl.c (warn_cxx_compat_finish_struct): Don't call
      	pointer_set_contains if DECL_NAME is NULL.
      
      	* gcc.dg/Wcxx-compat-21.c: New test.
      
      From-SVN: r166384
      Jakub Jelinek committed
  2. 05 Nov, 2010 24 commits
    • re PR target/46084 (gcc.dg/split-4.c failed with -mavx -m32) · c3928dde
      gcc/:
      	PR target/46084
      	* explow.c (allocate_dynamic_stack_space): If flag_split_stack,
      	request enough additional space for alignment, and force
      	alignment.
      testsuite/:
      	* gcc.target/i386/pr46084.c: New test.
      
      From-SVN: r166383
      Ian Lance Taylor committed
    • i386.c (legitimate_pic_address_disp_p): Handle UNSPEC_PCREL. · 037de943
      2010-11-05  Kai Tietz  <kai.tietz@onevision.com>
      
              * config/i386/i386.c (legitimate_pic_address_disp_p):
              Handle UNSPEC_PCREL.
              (ix86_legitimate_address_p): Likewise.
              (legitimize_pic_address): Likewise.
              (output_pic_addr_const): Likewise.
              (ix86_delegitimize_address): Likewise.
              (ix86_find_base_term): Likewise.
              (memory_address_length): Likewise.
              (x86_output_mi_thunk): Handle special case x64
              for non local binding.
              * config/i386/i386.md (UNSPEC_PCREL): New.
              * config/i386/winnt.c (i386_pe_binds_local_p):
              Allow weak symbol for x64 windows with non-local binding.
      
      From-SVN: r166382
      Kai Tietz committed
    • user.cfg.in: Remove tr1_impl headers. · f706cf18
      2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* doc/doxygen/user.cfg.in: Remove tr1_impl headers.
      
      	* testsuite/tr1/4_metaprogramming/integral_constant/requirements/
      	constexpr_data.cc: New.
      
      	* testsuite/util/testsuite_tr1.h (LType, LTypeDerived, NLType): New.
      	* testsuite/20_util/is_literal_type/value.cc: New.
      	* testsuite/20_util/is_literal_type/requirements/typedefs.cc: Name.
      	* testsuite/20_util/is_literal_type/requirements/
      	explicit_instantiation.cc: New.
      
      From-SVN: r166381
      Benjamin Kosnik committed
    • target-supports.exp (check_function_available): Use -fno-builtin. · 8d598c74
      2010-11-05  Steve Ellcey  <sje@cup.hp.com>
      
      	* lib/target-supports.exp (check_function_available): Use -fno-builtin.
      	* (check_effective_target_mempcpy): New.
      	* gcc.c-torture/execute/pr45636.c: Move this...
      	* gcc.dg/torture/pr45636.c: to here.  Add add dg- directives.
      
      From-SVN: r166378
      Steve Ellcey committed
    • i386.exp (FLAGS): Remove. · 73f22c49
      	* gcc.target/i386/i386.exp (FLAGS): Remove.
      	Wrap gcc_target_compile with $clearcap_ldflags added to options.
      
      From-SVN: r166377
      Rainer Orth committed
    • re PR c++/46160 (ICE with volatile structure and enum) · 897145e3
      	PR c++/46160
      	* cp-gimplify.c (cp_gimplify_expr): Drop volatile MEM_REFs
      	on the RHS to avoid infinite recursion with gimplify_expr.
      
      	* g++.dg/opt/empty2.C: New test.
      
      From-SVN: r166372
      Jakub Jelinek committed
    • re PR target/45670 (Less efficient x86 addressing mode selection on 4.6, causes… · ee01a467
      re PR target/45670 (Less efficient x86 addressing mode selection on 4.6, causes -Os size regression from 4.5)
      
      	PR target/45670
      	* expr.c (expand_expr_real_1) <case MEM_REF>: Use EXPAND_SUM
      	instead of EXPAND_NORMAL for base expansion.
      
      	* gcc.target/i386/pr45670.c: New test.
      
      From-SVN: r166371
      Jakub Jelinek committed
    • re PR target/44754 (m32c_pragma_memregs / m32c_pragma_address warnings) · 444d6efe
      	PR target/44754
      	* config/m32c/m32c.c (m32_function_arg): Rename declaration to...
      	(m32c_function_arg).  Add comma between arguments two and three.
      	(m32c_promote_prototypes): Remove declaration.
      	(current_function_special_page_vector): Likewise.
      	(m32c_regno_reg_class): Change return type to enum reg_class.
      	(m32c_pushm_popm): Use add_reg_note.
      	(m32c_push_rounding): Change return type to unsigned int.
      	(m32c_legitimize_reload_address): Cast argument 11 to push_reload to
      	enum reload_type.
      	(m32c_insert_attributes): Constify variable name.
      	(m32c_output_aligned_common): Add ATTRIBUTE_UNUSED to argument decl.
      	(m32c_prepare_shift): Remove variable lref.
      	(m32c_expand_movcc): Remove variable cmp.
      	(m32c_expand_insv): Fix check of op0 rtx_code to use GET_CODE.
      	(m32c_compare_redundant): Remove variable op2.
      	* config/m32c/m32c-pragma.c ("c-family/c-common.h"): Include.
      	(m32c_pragma_memregs): Assign the number to target_memregs.
      	(m32c_pragma_address): Remove variable var_str.
      	* config/m32c/m32c.h (REG_CLASS_FROM_CONSTRAINT): Case value to
      	enum reg_class.
      	(LIMIT_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
      	* config/m32c/bitops.md (andsi3): Add default case to switch.
      	(iorsi3, xorsi3): Likewise.
      	* config/m32c/addsub.md (addsi3_1, subsi3_1): Likewise.
      	* config/m32c/jump.md (call, call_value): Likewise.
      	* config/m32c/m32c-protos.h (m32c_push_rounding): Update prototype.
      	(m32c_regno_reg_class): Likewise.
      	(current_function_special_page_vector): Declare.
      
      From-SVN: r166370
      Joern Rennecke committed
    • config.gcc: Support --with-fpmath=avx for x86. · b71e5eba
      	* config.gcc: Support --with-fpmath=avx for x86.
      	* config/i386/avxmath.h: New.
      	* doc/install.texi (--with-fpmath=): Document --with-fpmath=avx.
      
      From-SVN: r166369
      Uros Bizjak committed
    • re PR fortran/45451 ([OOP] Inconsistent status of ALLOCATABLE components inside CLASS variables.) · 611c64f0
      2010-11-05  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45451
      	PR fortran/46174
      	* class.c (gfc_find_derived_vtab): Improved search for existing vtab.
      	Add component '$copy' to vtype symbol for polymorphic deep copying.
      	* expr.c (gfc_check_pointer_assign): Make sure the vtab is generated
      	during resolution stage.
      	* resolve.c (resolve_codes): Don't resolve code if namespace is already
      	resolved.
      	* trans-stmt.c (gfc_trans_allocate): Call '$copy' procedure for
      	polymorphic ALLOCATE statements with SOURCE.
      
      2010-11-05  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45451
      	PR fortran/46174
      	* gfortran.dg/class_19.f03: Modified.
      	* gfortran.dg/class_allocate_6.f03: New.
      
      From-SVN: r166368
      Janus Weil committed
    • * dwarf2.h (enum dwarf_source_language): Add DW_LANG_Go. · 458ebeba
      From-SVN: r166367
      Ian Lance Taylor committed
    • re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues) · 6ab31ade
      	PR bootstrap/44756
      	* expr.c (can_store_by_pieces): Add ATTRIBUTE_UNUSED to cst.
      	* haifa-sched.c (initiate_bb_reg_pressure_info): Add ATTRIBUTE_UNUSED
      	to i.
      
      From-SVN: r166366
      Joern Rennecke committed
    • tree.h (struct tree_type): Don't use descbits in GTY annotation. · 7f7c6d91
      	* tree.h (struct tree_type): Don't use descbits in GTY
      	annotation.
      	* gengtype.c (walk_type): Don't recognize descbits option.
      
      From-SVN: r166365
      Ian Lance Taylor committed
    • re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues) · 3e926b4d
      	PR bootstrap/44756
      	* expr.c (emit_push_insn): Cast value of PUSH_ROUNDING before
      	comparing it to a signed value.
      
      From-SVN: r166360
      Joern Rennecke committed
    • defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG, [...]): Remove. · c243beb0
      	* defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG,
      	WORD_SWITCH_TAKES_ARG): Remove.
      	* doc/options.texi (Args): Document.
      	* doc/tm.texi.in (WORD_SWITCH_TAKES_ARG): Remove.
      	* doc/tm.texi: Regenerate.
      	* opt-functions.awk (switch_flags): Handle Args.
      	* opts-common.c: Update comment on tm.h include.
      	(decode_cmdline_option): Handle options with multiple arguments.
      	Don't check WORD_SWITCH_TAKES_ARG for unknown options.
      	* opts.h (CL_SEPARATE_NARGS_SHIFT, CL_SEPARATE_NARGS_MASK):
      	Define.
      	(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
      	CL_COMMON): Update values.
      	* system.h (WORD_SWITCH_TAKES_ARG): Poison.
      	* config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove.
      	* config/darwin.opt (Zsegaddr, sectalign, sectcreate,
      	sectobjectsymbols, sectorder, segcreate, segprot): New.
      
      From-SVN: r166359
      Joseph Myers committed
    • Check 256bit AVX register in move expanders. · d73ee4e7
      gcc/
      
      2010-11-05  H.J. Lu  <hongjiu.lu@intel.com>
      	    Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.c (ix86_expand_move): Set use_avx256_p if
      	256bit AVX register is used.
      	(ix86_expand_vector_move_misalign): Likewise.
      	(ix86_expand_vector_move): Replace use_avx256_p with
      	VALID_AVX256_REG_MODE.
      
      gcc/testsuite/
      
      2010-11-05  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* gcc.target/i386/avx-vzeroupper-19.c: New.
      
      Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
      
      From-SVN: r166358
      H.J. Lu committed
    • Remove gcc/ prefixes · 8b7e8529
      From-SVN: r166357
      Eric Botcazou committed
    • re PR target/44750 (pdp-11 fails to build) · 365b0dba
               PR target/44750
              * config/pdp11/t-pdp11 (dwarf2out.o, java/constants.o): Undo last
              change.  Set $@-warn.o to -Wno-error.
      
      From-SVN: r166356
      Joern Rennecke committed
    • re PR tree-optimization/46099 (ICE: in replace_ssa_name, at tree-cfg.c:5643 with… · cba1eb61
      re PR tree-optimization/46099 (ICE: in replace_ssa_name, at tree-cfg.c:5643 with -ftree-parallelize-loops -g)
      
      	PR tree-optimization/46099
      	* tree-parloops.c (take_address_of): Add GSI argument.  Return NULL
      	if it is NULL and uid wasn't found in the hash table.  Just fold the
      	result if it is NULL otherwise.  Insert other potentially needed
      	stmts right before current stmt instead of on the entry edge.
      	(struct elv_data): Add gsi and reset fields.
      	(eliminate_local_variables_1): Adjust caller.  If take_address_of
      	failed for debug stmt, set dta->reset and return.
      	(eliminate_local_variables_stmt): Change STMT argument for GSI,
      	pass GSI through to the callback, handle resetting of debug stmts.
      	(eliminate_local_variables): Adjust caller.  Process debug stmts
      	in second phase.
      
      	* gcc.dg/autopar/pr46099.c: New test.
      
      From-SVN: r166355
      Jakub Jelinek committed
    • re PR middle-end/43690 (Internal compiler error detected by avr-gcc.) · 502c5084
      	PR middle-end/43690
      	* gimplify.c (gimplify_asm_expr): If a "m" input is a
      	{pre,post}{in,de}crement, fail.
      
      	* c-c++-common/pr43690.c: New test.
      
      From-SVN: r166354
      Jakub Jelinek committed
    • cfgexpand.c (expand_debug_expr): Handle MEM_REF with non-zero offset. · cb115041
      	* cfgexpand.c (expand_debug_expr): Handle MEM_REF
      	with non-zero offset.
      
      From-SVN: r166353
      Jakub Jelinek committed
    • NeXT runtime compatibility changes. · a5ad8c30
      gcc/testsuite:
      
      	* objc.dg/torture/forward-1.m: Restore for m32 NeXT.
      	* objc.dg/demangle-1.m: Remove NeXT ifdef around +initialize 
      	declaration and implementation.
      	* objc.dg/property/dotsyntax-3.m: XFAIL NeXT m64 run.
      	* obj-c++.dg/property/at-property-13.mm: Likewise.
      	* obj-c++.dg/property/fsf-property-method-access.mm: Likewise.
      	* obj-c++.dg/property/property-1.mm: Likewise.
      	* obj-c++.dg/property/at-property-7.mm: Likewise.
      	* obj-c++.dg/property/at-property-9.mm: Likewise.
      	* obj-c++.dg/property/dotsyntax-2.mm: Likewise.
      	* obj-c++.dg/property/at-property-10.mm: Likewise.
      	* obj-c++.dg/property/synthesize-2.mm: Likewise.
      	* obj-c++.dg/property/at-property-12.mm: Likewise.
      	* obj-c++.dg/property/fsf-property-basic.mm: Likewise.
      	* obj-c++.dg/property/fsf-property-named-ivar.mm: Likewise.
      	* obj-c++.dg/property/at-property-6.mm: Likewise.
      	* obj-c++.dg/property/at-property-8.mm: Likewise.
      	* obj-c++.dg/property/dotsyntax-1.mm: Likewise.
      	* obj-c++.dg/property/dotsyntax-3.mm: Likewise.
      	* obj-c++.dg/property/at-property-11.mm: Likewise.
      	* obj-c++.dg/template-8.mm: Likewise.
      	* obj-c++.dg/encode-3.mm: Use abort (), cast char types.
      	* obj-c++.dg/demangle-2.mm: Add +initialize:, XFAIL NeXT m64.
      	* obj-c++.dg/property/at-property-2.mm: Comment out a case that ICEs and
      	put a FIXME for this.
      	* obj-c++.dg/property/property-2.mm: Remove.
      	* obj-c++.dg/property/property-3.mm: Remove.
      
      From-SVN: r166352
      Iain Sandoe committed
    • re PR debug/46307 (ICE with FMA_EXPR in DEBUG stmts) · 0f59b812
      	PR debug/46307
      	* tree-ssa-operands.c (get_expr_operands): Handle FMA_EXPR.
      	* tree-pretty-print.c (dump_generic_node): Likewise.
      	(op_code_prio): Likewise.
      	* cfgexpand.c (expand_debug_expr): Likewise.
      
      	* gcc.dg/pr46307.c: New test.
      
      From-SVN: r166351
      Jakub Jelinek committed
    • re PR c++/46304 (g++ crashes with ICE in bitmap_first_set_bit, at bitmap.c:770) · fc36036b
      	PR c++/46304
      	* pt.c (tsubst_copy): Handle COMPLEX_CST.
      
      From-SVN: r166350
      Jason Merrill committed