1. 25 Nov, 2009 34 commits
  2. 24 Nov, 2009 6 commits
    • i386.md (plusminus_carry_mnemonic): New code attribute. · 14c27152
      	* config/i386/i386.md (plusminus_carry_mnemonic): New code attribute.
      	(add<mode>3_carry): Change operand order of plus RTX.
      	(*add<mode>3_carry): Ditto.
      	(*addsi3_carry_zext): Ditto.
      	(*add<dwi>3_doubleword): Update for changed operand order.
      	(*negti2_1 splitter): Ditto.
      	(*negdi2_1 splitter): Ditto.
      	(<plusminus_insn><mode>3_carry): Macroize expander from
      	{add,sub}<mode>3_carry patterns using plusminus code iterator.
      	(*<plusminus_insn><mode>3_carry): Macroize insn from
      	*{add,sub}<mode>3_carry patetrns using plusminus code iterator.
      	(neg<mode>2): Macroize expander from neg{qi,hi,si,di,ti}2
      	patterns using SDWIM mode iterator.
      	(*neg<dwi>2_doubleword): New insn_and_split pattern.  Macroize
      	pattern from *neg{di,ti}2_1 patterns and corresponding splitters
      	using DWIH mode iterator.
      	(*neg<mode>2_1): Macroize insn from neg{qi,hi,si,di}2_1 patterns
      	using SWI mode iterator.
      	(*neg<mode>2_cmpz): Ditto from neg{qi,hi,si,di}2_cmpz patterns.
      	(one_cmpl<mode>2): Macroize expander from one_cmpl{qi,hi,si,di}2
      	patterns using SWIM mode iterator.
      	(*one_cmpl<mode>2_1): Macroize insn from one_cmpl{hi,si,di}2_1
      	patterns using SWI248 mode iterator.
      	(*one_cmpl<mode>2_2): Macroize insn from one_cmpl{qi,hi,si,di}2_2
      	patterns using SWI mode iterator.
      	(*one_cmpl<mode>2_2 splitter): Macroize splitter from
      	one_cmpl{qi,hi,si,di}2_2 splitter patterns using SWI mode iterator.
      
      From-SVN: r154522
      Uros Bizjak committed
    • * zlib.m4: New file. · 678ff823
      From-SVN: r154521
      Joel Brobecker committed
    • re PR c++/42137 (error: expected constructor, destructor, or type conversion before ‘{’ token) · 108e2445
      	PR c++/42137
      	* parser.c (cp_parser_mem_initializer_id): Pass typename_type to
      	cp_parser_class_name.
      	(cp_parser_unqualified_id): Same, rather than class_type.
      
      	PR c++/11764
      	* parser.c (cp_parser_expression_statement): Give helpful error
      	for constructor name used as type.
      
      From-SVN: r154519
      Jason Merrill committed
    • pt.c (determine_specialization): Give helpful error about missing "template<>". · 3474a3b7
      	* pt.c (determine_specialization): Give helpful error about missing
      	"template<>".
      
      From-SVN: r154518
      Jason Merrill committed
    • sem_util.adb (Set_Debug_Info_Needed): For an E_Class_Wide_Subtype, also set the… · 032d1b71
      sem_util.adb (Set_Debug_Info_Needed): For an E_Class_Wide_Subtype, also set the flag on the Equivalent_Type.
      
      	* sem_util.adb (Set_Debug_Info_Needed): For an E_Class_Wide_Subtype,
      	also set the flag on the Equivalent_Type.
      	* gcc-interface/utils.c (finish_record_type): Replace DO_NOT_FINALIZE
      	parameter with DEBUG_INFO_P.  Rename FIELDLIST into FIELD_LIST.
      	(rest_of_record_type_compilation): Rename FIELDLIST into FIELD_LIST.
      	(build_vms_descriptor32): Adjust call to finish_record_type.
      	(build_vms_descriptor): Likewise.
      	(build_unc_object_type): Likewise.
      	* decl.c (gnat_to_gnu_entity): Adjust calls to finish_record_type and
      	components_to_record.
      	(make_packable_type): Adjust call to finish_record_type.
      	(maybe_pad_type): Likewise.  Tweak condition.
      	(components_to_record): Likewise.  Replace DO_NOT_FINALIZE parameter
      	with MAYBE_UNUSED.  Adjust recursive call.
      	(create_variant_part_from): Adjust call to finish_record_type.  Do not
      	call rest_of_record_type_compilation on the new record types.
      	* trans.c (gigi): Adjust call to finish_record_type.
      	* gigi.h (finish_record_type): Adjust prototype and comment.
      	(rest_of_record_type_compilation): Adjust comment.
      
      From-SVN: r154515
      Eric Botcazou committed
    • exp_util.adb (Make_CW_Equivalent_Type): Do not mark the type as frozen for… · cbae498b
      exp_util.adb (Make_CW_Equivalent_Type): Do not mark the type as frozen for targets that do not require front-end layout.
      
      	* exp_util.adb (Make_CW_Equivalent_Type): Do not mark the type as
      	frozen for targets that do not require front-end layout.
      	(New_Class_Wide_Subtype): Always reset the freezing status to False.
      	* exp_ch8.adb: Do not 'with' Targparm.
      	(Expand_N_Object_Renaming_Declaration): Always freeze a class-wide
      	subtype that has been built from the expression.
      	* exp_intr.adb (Expand_Unc_Deallocation): If the designated type is
      	class wide, freeze the implicit type that has been built from the
      	expression at the dereference point.
      	* freeze.adb (Freeze_Entity): Adjust comment.
      	* gcc-interface/decl.c (Gigi_Equivalent_Type) <E_Class_Wide_Type>:
      	Remove useless test.
      	* gcc-interface/trans.c (process_freeze_entity): Do not special-case
      	class-wide subtypes.
      
      	* s-osinte-aix.adb (clock_gettime): Fix comment.
      	* s-osinte-darwin.adb (clock_gettime): Likewise.
      
      From-SVN: r154514
      Eric Botcazou committed