+2007-03-30 Richard Henderson <rth@redhat.com>
+ Kai Tietz <kai.tietz@onevision.com>
+
+ * c-pragma.c (struct def_pragma_macro_value): New.
+ (struct def_pragma_macro): New.
+ (pushed_macro_table): New.
+ (dpm_hash, dpm_eq): New.
+ (handle_pragma_push_macro, handle_pragma_pop_macro): New.
+ (init_pragma): Install them.
+ * doc/tm.texi (HANDLE_PRAGMA_PUSH_POP_MACRO): New.
+
+2007-03-30 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (avr_override_options): Clear
+ 'flag_delete_null_pointer_checks'.
+
+2007-03-30 Paolo Carlini <pcarlini@suse.de>
+
+ PR c++/26099
+ * c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN,
+ RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY,
+ RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR,
+ RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR,
+ RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF,
+ RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM,
+ RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as
+ C++ extensions.
+ * doc/extend.texi (Extensions to the C++ Language): Add Type Traits.
+
+2007-03-30 Steven Bosscher <steven@gcc.gnu.org>
+
+ * regmove.c: Move all of pass_stack_adjustments from here...
+ * combine-stack-adj.c: ...to this new file.
+ * Makefile.in: Add rules for combine-stack-adj.o.
+
+2007-03-30 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/31383
+ * tree-data-ref.c (affine_function_equal_p): Do not require the vectors
+ to have the same length.
+
+2007-03-30 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/PR30700
+ * dwarf2out.c (reference_to_unused): Ask cgraph for functions
+ availablility; add more sanity checking; ask varpool only about
+ VAR_DECL.
+
+2007-03-29 Richard Henderson <rth@redhat.com>
+
+ * unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG
+ to decide, but __SIZEOF_LONG_LONG__.
+
+2007-03-29 Richard Henderson <rth@redhat.com>
+
+ * emutls.c (struct __emutls_array): New.
+ (emutls_destroy): Use it instead of casting element 0 from void*.
+ (__emutls_get_address): Likewise.
+
+2007-03-29 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (initializer_constant_valid_p): Don't deny
+ DECL_DLLIMPORT_P on functions.
+
+ * config/i386/cygming.h: Remove function declarations.
+ (SUBTARGET_ENCODE_SECTION_INFO): Don't undef first.
+ (ASM_OUTPUT_LABELREF): Remove.
+ (COMMON_ASM_OP): Remove.
+ (ASM_OUTPUT_COMMON): Remove.
+ (ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
+ (ASM_DECLARE_OBJECT_NAME): Use i386_pe_maybe_record_exported_symbol.
+ (ASM_DECLARE_FUNCTION_NAME): Likewise.
+ * config/i386/i386-interix.h (SUBTARGET_ENCODE_SECTION_INFO):
+ Rename from TARGET_ENCODE_SECTION_INFO.
+ * config/i386/netware.h: Likewise.
+ * config/i386/i386-protos.h: Update.
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Turn ifdef
+ of TARGET_DLLIMPORT_DECL_ATTRIBUTES into straight if.
+ (legitimate_constant_p): Reject dllimports.
+ (dllimport_map, get_dllimport_decl): New.
+ (legitimize_dllimport_symbol): New.
+ (legitimize_address, ix86_expand_move): Use it.
+ (TARGET_BINDS_LOCAL_P): Redefine for TARGET_DLLIMPORT_DECL_ATTRIBUTES.
+ * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Remove.
+ (SYMBOL_FLAG_DLLIMPORT, SYMBOL_REF_DLLIMPORT_P): New.
+ (SYMBOL_FLAG_DLLEXPORT, SYMBOL_REF_DLLEXPORT_P): New.
+ * config/i386/predicates.md (constant_call_address_operand): Only
+ accept symbols; reject dllimport_p symbols.
+ * config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Use
+ i386_pe_maybe_record_exported_symbol.
+ * config/i386/winnt.c (DLL_IMPORT_PREFIX, DLL_EXPORT_PREFIX): Remove.
+ (i386_pe_determine_dllexport_p): Rename from i386_pe_dllexport_p.
+ (i386_pe_determine_dllimport_p): Rename from i386_pe_dllimport_p;
+ trust the setting of DECL_DLLIMPORT_P.
+ (i386_pe_dllexport_name_p, i386_pe_dllimport_name_p): Remove.
+ (i386_pe_mark_dllexport, i386_pe_mark_dllimport): Remove.
+ (gen_stdcall_or_fastcall_suffix): Return NULL if no change required;
+ tidy the argument scanning loop.
+ (i386_pe_encode_section_info): Set SYMBOL_FLAG_DLLIMPORT and
+ SYMBOL_FLAG_DLLEXPORT in SYMBOL_REF_FLAGS.
+ (i386_pe_strip_name_encoding): Remove.
+ (i386_pe_binds_local_p): New.
+ (i386_pe_strip_name_encoding_full): Use default_strip_name_encoding.
+ (i386_pe_output_labelref): Remove.
+ (i386_pe_asm_output_aligned_decl_common): New.
+ (i386_pe_maybe_record_exported_symbol): Rename from
+ i386_pe_record_exported_symbol; check for dllexported symbols.
+
+2007-03-29 Zack Weinberg <zack@mrtock.ucsd.edu>
+
+ * gengtype.c (oprintf): Mostly revert changes from 2007-03-26;
+ add comment explaining why vsnprintf cannot be used.
+
+2007-03-29 Douglas Gregor <doug.gregor@gmail.com>
+
+ PR tree-optimization/30666
+ * tree.c (build_complex_type): When creating type names for DWARF2
+ debug info, create TYPE_DECLs for TYPE_NAME instead of
+ IDENTIFIER_NODEs.
+ (build_common_tree_nodes_2): Use build_complex_type when building
+ predefined complex types, to preserve canonical types.
+
+2007-03-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * ifcvt.c (struct noce_if_info): Add then_else_reversed field.
+ (noce_get_alt_condition): Look at it to determine whether to
+ reverse the condition or not.
+ (noce_get_condition): Substitute the truth for lies.
+ (noce_find_if_block): Set the then_else_reversed field.
+
+2007-03-29 Lars Poeschel <larsi@wh2.tu-dresden.de>
+
+ * config/fr30/fr30.md (movdi): Do not accept immediates as the
+ destination of this insn.
+ * config/fr30/fr30.c (fr30_move_double): Use emit_move_insn rather
+ than calling gen_rtx_SET directly. Use r0 to hold the value of
+ 'address + 4' rather than a stack based temporary which can be
+ mis-optimized away.
+
+2007-03-29 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.c (s390_secondary_input_reload_class,
+ s390_secondary_output_reload_class): Functions removed.
+ (s390_secondary_reload): New function.
+ (TARGET_SECONDARY_RELOAD): Target macro defined.
+ * config/s390/s390.h (SECONDARY_INPUT_RELOAD_CLASS,
+ SECONDARY_OUTPUT_RELOAD_CLASS): Macro definitions removed.
+ * config/s390/s390.md ("reload_outti", "reload_outdi",
+ "reload_indi", "reload_insi", "reload_out<mode>", "reload_in<mode>",
+ "reload_out<mode>"): Expanders removed.
+ ("reload<mode>_plus", "reload<mode>_nonoffmem_in",
+ "reload<mode>_nonoffmem_out"): Expanders added.
+
+2007-03-29 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * regmove.c (optimize_reg_copy_1): Don't perform DEST->SRC repair action if
+ SRC->DEST replacement failed anyway.
+
+2007-03-28 Mike Stump <mrs@apple.com>
+
+ * config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Add.
+ * config/darwin.h (MAX_OFILE_ALIGNMENT): Fix.
+ * config/rs6000/darwin.h (ASM_OUTPUT_ALIGNED_COMMON): Removed #undef.
+
+2007-03-28 Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
+
+ * config.gcc: Accept barcelona as a variant of amdfam10.
+ * config/i386/i386.c (override_options): Likewise.
+ * doc/invoke.texi: Likewise.
+
+2007-03-28 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree-dfa.c (get_ref_base_and_extent): Do not expect positive
+ offsets for BIT_FIELD_REF and COMPONENT_REF.
+
2007-03-28 Richard Guenther <rguenther@suse.de>
* tree.c (is_global_var): Move ...