+2009-06-26 Steven Bosscher <steven@gcc.gnu.org>
+
+ PR middle-end/40525
+ * ifcvt.c (dead_or_predicable): If predicating MERGE_BB fails,
+ try the non-cond_exec path also.
+
+2009-06-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/40468
+ * pa.c (branch_to_delay_slot_p, branch_needs_nop_p): New functions.
+ (output_cbranch): Use new functions.
+ (output_lbranch, output_bb, output_bvb, output_dbra, output_movb):
+ Likewise.
+
+2009-06-25 Michael Meissner <meissner@linux.vnet.ibm.com>
+ Pat Haugen <pthaugen@us.ibm.com>
+ Revital Eres <ERES@il.ibm.com>
+
+ * config/rs6000/rs6000-protos.h (rs6000_secondary_reload_class):
+ Change some of the functions called by macros to being called
+ through a pointer, so debug functions can be inserted if
+ -mdebug=addr or -mdebug=cost.
+ (rs6000_preferred_reload_class_ptr): Ditto.
+ (rs6000_secondary_reload_class_ptr): Ditto.
+ (rs6000_secondary_memory_needed_ptr): Ditto.
+ (rs6000_cannot_change_mode_class_ptr): Ditto.
+ (rs6000_secondary_reload_inner): Ditto.
+ (rs6000_legitimize_reload_address): Ditto.
+ (rs6000_legitimize_reload_address_ptr): Ditto.
+ (rs6000_mode_dependent_address): Ditto.
+ (rs6000_mode_dependent_address_ptr): Ditto.
+
+ * config/rs6000/rs6000.c (reg_offset_addressing_ok_p): New
+ function to return true if the mode allows reg + integer
+ addresses.
+ (virtual_stack_registers_memory_p): New function to return true if
+ the address refers to a virtual stack register.
+ (rs6000_legitimate_offset_address_p): Move code to say whether a
+ mode supports reg+int addressing to reg_offset_addressing_ok_p and
+ call it.
+ (rs6000_legitimate_address_p): Add checks for modes that only can
+ do reg+reg addressing. Start adding VSX support.
+ (rs6000_legitimize_reload_address): Ditto.
+ (rs6000_legitimize_address): Ditto.
+ (rs6000_debug_legitimate_address_p): New debug functions for
+ -mdebug=addr and -mdebug=cost.
+ (rs6000_debug_rtx_costs): Ditto.
+ (rs6000_debug_address_costs): Ditto.
+ (rs6000_debug_adjust_cost): Ditto.
+ (rs6000_debug_legitimize_address): Ditto.
+ (rs6000_legitimize_reload_address_ptr): Point to call normal
+ function or debug function. Make functions called via pointer
+ static.
+ (rs6000_mode_dependent_address_ptr): Ditto.
+ (rs6000_secondary_reload_class_ptr): Ditto.
+ (rs6000_hard_regno_mode_ok): Add preliminary VSX support.
+ (rs6000_emit_move): Add -mdebug=addr support. Change an abort
+ into a friendlier error.
+ (rs6000_init_builtins): Add initial VSX support.
+ (rs6000_adjust_cost): Fix some spacing issues.
+
+ * config/rs6000/rs6000.h (enum reg_class): Add VSX_REGS.
+ (REG_CLASS_NAMES): Ditto.
+ (REG_CLASS_CONTENTS): Ditto.
+ (PREFERRED_RELOAD_CLASS): Move from a macro to calling through a
+ pointer, to add -mdebug=addr support.
+ (CANNOT_CHANGE_MODE_CLASS): Ditto.
+ (SECONDARY_RELOAD_CLASS): Call through a pointer to add
+ -mdebug=addr support.
+ (LEGITIMIZE_RELOAD_ADDRESS): Ditto.
+ (GO_IF_MODE_DEPENDENT_ADDRESS): Ditto.
+ (enum rs6000_builtins): Add RS6000_BUILTIN_BSWAP_HI.
+
+ * config/rs6000/rs6000.md (bswaphi*): Add support for swapping
+ 16-bit values.
+ (bswapsi*): Set attribute types for load/store. Add combiner
+ patterns to eliminate zero extend on 64-bit.
+ (bswapdi*): Add support for swapping 64-bit values. Use ldbrx and
+ stdbrx if the hardware supports those instructions.
+
+2009-06-25 Ian Lance Taylor <iant@google.com>
+
+ * doc/invoke.texi (Option Summary): Mention -static-libstdc++.
+ (Link Options): Document -static-libstdc++.
+
+2009-06-25 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR target/38731
+ * config/rs6000/rs6000.c (LOCAL_ALIGNMENT): Redefine to just use
+ DATA_ALIGNMENT instead.
+
+2009-06-25 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Disambiguate
+ indirect references against the callused/escaped solutions.
+ (call_may_clobber_ref_p_1): Likewise.
+
+2009-06-25 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/40493
+ * tree-sra.c (sra_modify_expr): Correct BIT_FIELD_REF argument numbers.
+ (enum unscalarized_data_handling): New type.
+ (handle_unscalarized_data_in_subtree): Return what has been done.
+ (load_assign_lhs_subreplacements): Handle left flushes differently.
+ (sra_modify_assign): Use unscalarized_data_handling, simplified
+ condition determining whether to remove the statement.
+
+2009-06-25 Basile Starynkevitch <basile@starynkevitch.net>
+
+ * doc/plugins.texi (Building GCC plugins): Correct typo in Makefile
+ excerpt - @ should be doubled for texinfo.
+
+2009-06-24 Ian Lance Taylor <iant@google.com>
+
+ * config/arc/arc.c: Include "df.h".
+ (arc_attribute_table): Make static. Move higher in file.
+ (arc_address_cost): Call SMALL_INT on INTVAL, not rtx.
+ (output_shift): Initialize n later to avoid warning.
+ * config/arm/arm.c (arm_attribute_table): Make static. Move
+ higher in file.
+ * config/avr/avr.c (avr_attribute_table): Make static. Move
+ higher in file.
+ (reg_class_tab): Change array type from int to enum reg_class.
+ (avr_jump_mode): Change GET_MODE to GET_CODE when checking for
+ LABEL_REF.
+ (out_tsthi, ashlhi3_out): Don't use AS2 with "or" or "and".
+ (lshrhi3_out): Likewise.
+ (class_likely_spilled_p): Change return type to bool.
+ (avr_rtx_costs): Use local code variable with enum type.
+ * config/avr/avr.md (movmemhi): Use add_reg_note.
+ (andhi3, andsi3): Don't use AS2 with "and".
+ (iorhi3, iorsi3): Don't use AS2 with "or".
+ * config/avr/avr-protos.h (class_likely_spilled_p): Update
+ declaration.
+ * config/crx/crx.c: Include "df.h".
+ (crx_attribute_table): Make static.
+ * config/m32r/m32r.c: Include "df.h".
+ (m32r_attribute_table): Make static. Move higher in file.
+ (pop): Use add_reg_note.
+ (block_move_call): Change 0 to LCT_NORMAL in function call.
+ * config/m32r/m32r.md (movsi_insn): Remove unused local value.
+ * config/m32r/m32r.h (INITIALIZE_TRAMPOLINE): Likewise.
+ * config/m32r/m32r-protos.h (m32r_compute_function_type): Always
+ declare, not just when TREE_CODE is defined.
+ * config/m68hc11/m68hc11.c: Include "expr.h".
+ (m68hc11_attribute_table): Make static. Move higher in file.
+ (m68hc11_small_indexed_indirect_p): Change 0 to VOIDmode in
+ function call.
+ (m68hc11_register_indirect_p): Likewise.
+ (m68hc11_function_arg_padding): Change return type to enum
+ direction.
+ (emit_move_after_reload): Use add_reg_note.
+ (m68hc11_emit_logical): Change code parameter to enum rtx_code.
+ (m68hc11_split_logical): Likewise.
+ (m68hc11_rtx_costs): Add local code_and outer_code variables with
+ enum type.
+ * config/m68hc11/predicates.md (reg_or_some_mem_operand): Change 0
+ to VOIDmode in function call.
+ * config/m68hc11/m68hc11-protos.h: Don't check TREE_CODE to see if
+ tree is defined.
+ (m68hc11_split_logical): Update declaration.
+ (m68hc11_function_arg_padding): Update declaration.
+ * config/mcore/mcore.c (regno_reg_class): Change form array of int
+ to array of enum reg_class.
+ (mcore_attribute_table): Make static. Move higher in file.
+ (mcore_rtx_costs): Add cast to enum type.
+ * config/mcore/mcore.h (regno_reg_class): Update declaration.
+ (GO_IF_LEGITIMATE_INDEX): Add cast to avoid warning.
+ * config/sh/sh.c (sh_attribute_table): Make static. Move higher
+ in file.
+ * config/sh/predicates.md (trapping_target_operand): Rename and to
+ and_expr.
+ * config/sparc/sparc.c (sparc_attribute_table): Make static. Move
+ higher in file.
+ * config/spu/spu.c (spu_attribute_table): Make static. Move
+ higher in file.
+ * config/v850/v850.c (v850_attribute_table): Make static. Move
+ higher in file.
+ (v850_rtx_costs): Use local code with enum type.
+ (expand_epilogue): Add cast.
+ * config/v850/v850-c.c (ghs_pragma_section): Initialize repeat.
+
+2009-06-23 Takashi YOSHII <yoshii.takashi@renesas.com>
+
+ PR target/40515
+ * doc/invoke.texi (SH Options): Document -m2a, -m2a-single,
+ -m2a-single-only and -m2a-nofpu.
+ * config/sh/sh.opt: Document m2a generates FPU code.
+
+2009-06-24 Anatoly Sokolov <aesok@post.ru>
+
+ * defaults.h (CAN_ELIMINATE): Provide default.
+ * doc/tm.texi (CAN_ELIMINATE): Revise documentation.
+ * config/alpha/alpha.h (CAN_ELIMINATE): Delete.
+ * config/m32c/m32c.h (CAN_ELIMINATE): Delete.
+ * config/spu/spu.h (CAN_ELIMINATE): Delete.
+ * config/xtensa/xtensa.h (CAN_ELIMINATE): Delete.
+ * config/moxie/moxie.h (CAN_ELIMINATE): Delete.
+ * config/cris/cris.h (CAN_ELIMINATE): Delete.
+ * config/mn10300/mn10300.h (CAN_ELIMINATE): Delete.
+ * config/pa/pa64-linux.h (CAN_ELIMINATE): Delete.
+ * config/mmix/mmix.h (CAN_ELIMINATE): Delete.
+
+2009-06-24 DJ Delorie <dj@redhat.com>
+
+ * mep-ext-cop.cpu: Fix copyright notice.
+ * mep-default: Fix copyright notice.
+ * mep-core: Fix copyright notice.
+ * mep: Fix copyright notice.
+ * mep-ivc2: Fix copyright notice.
+ * mep-c5: Fix copyright notice.
+
+2009-06-24 Denis Chertykov <chertykov@gmail.com>
+
+ * doc/contrib.texi (Contributors):
+
+2009-06-24 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ PR middle-end/40501
+ * tree-ssa-math-opts.c (execute_optimize_bswap): Convert the bswap
+ src and dst operands if necessary.
+
+2009-06-23 DJ Delorie <dj@redhat.com>
+
+ Add MeP port.
+ * config.gcc: Add mep support.
+ * recog.c: Resurrect validate_replace_rtx_subexp().
+ * recog.h: Likewise.
+ * config/mep/: Add new port:
+ * config/mep/constraints.md: New file.
+ * config/mep/default.h: New file.
+ * config/mep/intrinsics.h: New file.
+ * config/mep/intrinsics.md: New file.
+ * config/mep/ivc2-template.h: New file.
+ * config/mep/mep-c5.cpu: New file.
+ * config/mep/mep-core.cpu: New file.
+ * config/mep/mep-default.cpu: New file.
+ * config/mep/mep-ext-cop.cpu: New file.
+ * config/mep/mep-intrin.h: New file.
+ * config/mep/mep-ivc2.cpu: New file.
+ * config/mep/mep-lib1.asm: New file.
+ * config/mep/mep-lib2.c: New file.
+ * config/mep/mep-pragma.c: New file.
+ * config/mep/mep-protos.h: New file.
+ * config/mep/mep-tramp.c: New file.
+ * config/mep/mep.c: New file.
+ * config/mep/mep.cpu: New file.
+ * config/mep/mep.h: New file.
+ * config/mep/mep.md: New file.
+ * config/mep/mep.opt: New file.
+ * config/mep/predicates.md: New file.
+ * config/mep/t-mep: New file.
+
+2009-06-23 Ian Lance Taylor <iant@google.com>
+
+ * configure.ac: Invoke AC_PROG_CXX. Separate C specific warnings
+ from loose_warn into c_loose_warn and from strict_warn into
+ c_strict_warn. Set and substitute warn_cxxflags. Check for
+ --enable-build-with-cxx. Set and substitute
+ ENABLE_BUILD_WITH_CXX. Set and substitute HOST_LIBS.
+ * Makefile.in (CXXFLAGS): New variable.
+ (C_LOOSE_WARN, C_STRICT_WARN): New variables.
+ (GCC_WARN_CFLAGS): Add $(C_LOOSE_WARN). Add $(C_STRICT_WARN) if
+ the default is the same as $(STRICT_WARN).
+ (GCC_WARN_CXXFLAGS, WARN_CXXFLAGS): New variables.
+ (CXX): New variable.
+ (COMPILER): New value if ENABLE_BUILD_WITH_CXX.
+ (COMPILER_FLAGS, LINKER, LINKER_FLAGS): Likewise.
+ (ALL_COMPILERFLAGS, ALL_LINKERFLAGS): Likewise.
+ (HOST_LIBS): New variable.
+ (GCC_CFLAGS): Add $(C_LOOSE_WARN).
+ (ALL_CXXFLAGS): New variable.
+ (LIBS, BACKENDLIBS): Add $(HOST_LIBS).
+ * doc/install.texi (Configuration): Document
+ --enable-build-with-cxx, --with-stage1-ldflags,
+ --with-stage1-libs, --with-boot-ldflags, --with-boot-libs.
+ * configure: Rebuild.
+
+2009-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * config/arm/arm.c (arm_override_options): Fix braces and formatting
+ from previous commit.
+
+2009-06-23 Ian Lance Taylor <iant@google.com>
+
+ * Makefile.in ($(out_object_file)): Depend upon $(DF_H).
+
+2009-06-23 Ian Lance Taylor <iant@google.com>
+
+ * reload.c (alternative_allows_const_pool_ref): Mark mem parameter
+ with ATTRIBUTE_UNUSED.
+
+2009-06-23 Michael Meissner <meissner@linux.vnet.ibm.com>
+ Pat Haugen <pthaugen@us.ibm.com>
+ Revital Eres <eres@il.ibm.com>
+
+ * config.in (HAVE_AS_POPCNTD): Add default definition.
+ (HAVE_AS_LWSYNC): Ditto.
+
+ * configure.ac (gcc_cv_as_powerpc_mfpgpr): Provide real binutils
+ release number.
+ (gcc_cv_as_powerpc_cmpb): Ditto.
+ (gcc_cv_as_powerpc_dfp): Ditto.
+ (gcc_cv_as_powerpc_vsx): Ditto.
+ (gcc_cv_as_powerpc_popcntd): Add feature test for assembler
+ supporting the popcntd/lwsync instructions.
+ (gcc_cv_as_powerpc_lwsync): Ditto.
+ * configure: Regenerate.
+
+ * config/rs6000/aix53.h (ASM_CPU_SPEC): Add support for
+ -mcpu=native and -mcpu=power7.
+ * config/rs6000/aix61.h (ASM_CPU_SPEC): Ditto.
+
+ * config/rs6000/linux64.opt (-mprofile-kernel): Move switch to be
+ a variable instead of a mask to reduce the number of mask bits.
+ * config/rs6000/sysv4.opt (-mbit-align): Ditto.
+ (-mbit-word): Ditto.
+ (-mregnames): Ditto.
+ * config/rs6000/rs6000.opt (-mupdate): Ditto.
+ (-mfused-madd): Ditto.
+
+ * config/rs6000/rs6000.opt (-mpopcntd): New switch for non-VSX ISA
+ 2.06 instructions.
+ (-mvsx): New switch for VSX instructions.
+ (-misel): Move from a variable to a mask to allow it to be set by
+ -mcpu=.
+
+ * config/rs6000/rs6000-protos.h (rs6000_hard_regno_nregs): Change
+ function declaration to an array declaration.
+ (rs6000_hard_regno_nregs): New external array declaration.
+
+ * config/rs6000/t-rs6000 (MD_INCLUDES): Define, add all of the .md
+ files included by rs6000.md.
+
+ * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Use
+ SET_PROFILE_KERNEL macro to reset the -mprofile-kernel switch.
+
+ * config/rs6000/rs6000.c (rs6000_isel): Delete, -misel moved to be
+ a target mask.
+ (rs6000_debug_reg): New -mdebug= variables.
+ (rs6000_debug_addr): Ditto.
+ (rs6000_debug_cost): Ditto.
+ (rs6000_pmode): New variable to hold Pmode.
+ (rs6000_pointer_size): New variable to hold POINTER_SIZE.
+ (rs6000_class_max_nregs): New array to hold CLASS_MAX_NREGS
+ calculated at compiler start.
+ (rs6000_hard_regno_nregs): Change function to an array which holds
+ HARD_REGNO_NREGS calculated at compiler start.
+ (rs6000_explicit_options): Delete isel field.
+ (rs6000_vector_unit): New array to hold which vector unit
+ supports arithmetic options for a given type.
+ (rs6000_vector_mem): New array to hold which vector unit supports
+ memory reference operations for a given type.
+ (rs6000_vector_align): New array to given the alignment of each
+ vector type.
+ (power7_cost): New basic costs for power7.
+ (SET_PROFILE_KERNEL): New macro for resetting -mprofile-kernel.
+ (rs6000_hard_regno_nregs_internal): New function, moved from
+ HARD_REGNO_NREGS, to calculate the number of registers each hard
+ register takes for each type.
+ (rs6000_debug_reg_print): New function for -mdebug=reg support.
+ (rs6000_debug_vector_unit): New array, map rs6000_vector to
+ string.
+ (+rs6000_init_hard_regno_mode_ok): New function, move calculation
+ of HARD_REGNO_NREGS, CLASS_MAX_NREGS, REGNO_REG_CLASS, and vector
+ unit information here so it is calculated once at compiler startup
+ time.
+ (rs6000_override_options): Make -misel a target mask. Add more
+ power7 target masks. Setup Pmode and POINTER_SIZE. Add initial
+ VSX support. Add support for -mdebug=reg, -mdebug=addr, and
+ -mdebug=cost.
+ (POWERPC_MASKS): Add MASK_POPCNTD, MASK_VSX, and MASK_ISEL.
+ (rs6000_handle_option): Move -misel from variable to target mask.
+ (rs6000_builtin_mask_for_load): Add VSX support.
+ (rs6000_conditional_register_usage): Ditto.
+ (USE_ALTIVEC_FOR_ARG_P): Ditto.
+ (function_arg_boundary): Ditto.
+ (rs6000_expand_builtin): Ditto.
+ (def_builtin): Make abort message a little friendlier.
+ (rs6000_emit_int_cmove): Add support for 64-bit isel.
+
+ * config/rs6000/rs6000.h (ASM_CPU_POWER7_SPEC): Depend on the
+ assembler support the popcntd instruction instead of a vsx
+ instruction to enable power7 support.
+ (ASM_CPU_SPEC): Add support for -mcpu=native and -mcpu=power7.
+ (EXTRA_SPECS): Add ASM_CPU_NATIVE_SPEC to allow passing the right
+ option to the assembler if -mcpu=native.
+ (ASM_CPU_NATIVE_SPEC): Ditto.
+ (TARGET_POPCNTD): If assembler doesn't support popcntd, turn off
+ ISA 2.06 features.
+ (TARGET_LWSYNC_INSTRUCTION): Define whether it is safe to issue
+ the lwsync instruction.
+ (enum processor_type): Add PROCESSOR_POWER7.
+ (rs6000_debug_reg): New -mdebug= options.
+ (rs6000_debug_addr): Ditto.
+ (rs6000_debug_cost): Ditto.
+ (rs6000_isel): Delete.
+ (enum rs6000_vector): New enum to say what vector unit we have.
+ (VECTOR_UNIT_*): New macros to say which vector unit has
+ arithmetic operations for a given type.
+ (VECTOR_MEM_*): New macros to say which vector unit has memory
+ operations for a given type.
+ (TARGET_LDBRX): Whether the machine supports the ldbrx
+ instruction.
+ (TARGET_ISEL): Delete, -misel moved to be a mask.
+ (TARGET_ISEL64): New macro for 64-bit isel support.
+ (UNITS_PER_VSX_WORD): New macro.
+ (POINTER_SIZE): Move to be an external variable, rather than
+ calculating whether we are generating 32 ot 64-bit code.
+ (Pmode): Ditto.
+ (STACK_BOUNDARY): Add VSX support.
+ (LOCAL_ALIGNMENT): Ditto.
+ (SLOW_UNALIGNED_ACCESS): Ditto.
+ (VSX_REGNO_P): New macro for VSX support.
+ (VFLOAT_REGNO_P): Ditto.
+ (VINT_REGNO_P): Ditto.
+ (VLOGICAL_REGNO_P): Ditto.
+ (VSX_VECTOR_MODE): Ditto.
+ (VSX_SCALAR_MODE): Ditto.
+ (VSX_MODE): Ditto.
+ (VSX_MOVE_MODE): Ditto.
+ (VSX_REG_CLASS_P): Ditto.
+ (HARD_REGNO_NREGS): Instead of calling a function, use an array
+ lookup.
+ (UNITS_PER_SIMD_WORD): Add VSX support.
+ (MODES_TIEABLE_P): Ditto.
+ (STARTING_FRAME_OFFSET): Ditto.
+ (STACK_DYNAMIC_OFFSET): Ditto.
+ (EPILOGUE_USES): Ditto.
+ (REGNO_REG_CLASS): Move to array lookup.
+ (CLASS_MAX_NREGS): Ditto.
+ (rs6000_vector_reg_class): Add declaration.
+ (ADDITIONAL_REGISTER_NAMES): Add VSX names for the registers that
+ overlap with the floating point and Altivec registers.
+
+ * config/rs6000/e500.h (CHECK_E500_OPTIONS): Disallow -mvsx.
+
+ * config/rs6000/driver-rs6000.c (asm_names): New static array to
+ give the appropriate asm switches if -mcpu=native.
+ (host_detect_local_cpu): Add support for "asm".
+ (host_detect_local_cpu): Follow GNU code guidelines for name.
+
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Move
+ -mbit-word to a variable instead of being a target mask.
+
+ * config/rs6000/sync.md (lwsync): If the assembler supports it,
+ emit the lwsync instruction instead of emitting the instruction as
+ an integer constant.
+
+ * config/rs6000/spe.md (spe_fixuns_truncdfsi2): Rename from
+ fixuns_trundfsi2, move expander into rs6000.md.
+
+ * config/rs6000/rs6000.md (cpu): Add power7.
+ (sel, *ptrsize): New mode attributes for 32/64-bit isel.
+ (logical predicate patterns): Change the single instruction
+ primitives that set CR0 to be fast_compare instead of compare.
+ (norsi*): Ditto.
+ (popcntwsi2): Add support for ISA 2.06 popcount instructions.
+ (popcntddi2): Ditto.
+ (popcount<mode>): Ditto.
+ (floating multiply/add insns): Name the floating point
+ multiply/add insns.
+ (isel_signed_<mode>): Add support for -misel on 64-bit systems.
+ (isel_unsigned_<mode>): Ditto.
+ (fixuns_trundfsi2): Move expander here from spe.md.
+ (smindi3): Define if we have -misel on 64-bit systems.
+ (smaxdi3): Ditto.
+ (umindi3): Ditto.
+ (umaxdi3): Ditto.
+
+2009-06-23 Anatoly Sokolov <aesok@post.ru>
+
+ * config.gcc (avr-*-rtems*, avr-*-*): Set extra_gcc_objs and
+ extra_objs.
+ * config/avr/avr.c (avr_current_device): New variable.
+ (avr_arch_types, avr_mcu_types): Move to avr-deveces.c.
+ (avr_arch, mcu_type_s): Move to avr.h.
+ * config/avr/avr.h (base_arch_s). Add reserved2, arch_name and
+ default_data_section_start fields.
+ (avr_arch): Moved from avr.c.
+ (mcu_type_s): Moved from avr.c. Add short_sp, data_section_start and
+ library_name fields.
+ (avr_current_device, avr_mcu_types, avr_arch_types,
+ avr_device_to_arch, avr_device_to_data_start,
+ avr_device_to_startfiles, avr_device_to_devicelib): Declare.
+ (EXTRA_SPEC_FUNCTIONS): Define.
+ (LINK_SPEC): Remove device name to '-m ...' and '-Tdata ...' linker
+ options mapping. Use device_to_arch and device_to_data_start insted.
+ (STARTFILE_SPEC): Use device_to_startfile instead of crt_binutils.
+ (CRT_BINUTILS_SPECS, EXTRA_SPECS): Remove.
+ * config/avr/t-avr (driver-avr.o, avr-devices.o): New rules.
+ * config/avr/driver-avr.c: New file.
+ * config/avr/avr-devices.c: New file.
+
+2009-06-23 Jakub Jelinek <jakub@redhat.com>
+
+ * var-tracking.c (unshare_variable): Force initialized to
+ be VAR_INIT_STATUS_INITIALIZED unless flag_var_tracking_uninit.
+ (set_variable_part): Likewise.
+ (struct variable_union_info): Remove pos_src field.
+ (vui_vec, vui_allocated): New variables.
+ (variable_union): Pass VAR_INIT_STATUS_UNKNOWN to unshare_variable
+ unconditionally. Avoid XCVECNEW/free for every sorting, for dst_l
+ == 1 use a simpler sorting algorithm. Compute pos field right
+ away, don't fill in pos_src. For dst_l == 2 avoid qsort.
+ Avoid quadratic comparison if !flag_var_tracking_uninit.
+ (variable_canonicalize): Pass VAR_INIT_STATUS_UNKNOWN to
+ unshare_variable unconditionally.
+ (dataflow_set_different_2): Removed.
+ (dataflow_set_different): Don't traverse second hash table.
+ (compute_bb_dataflow): Pass VAR_INIT_STATUS_UNINITIALIZED
+ unconditionally to var_reg_set or var_mem_set.
+ (emit_notes_in_bb): Likewise.
+ (delete_variable_part): Pass VAR_INIT_STATUS_UNKNOWN to
+ unshare_variable.
+ (emit_note_insn_var_location): Don't set initialized to
+ VAR_INIT_STATUS_INITIALIZED early.
+ (vt_finalize): Free vui_vec if needed, clear vui_vec and
+ vui_allocated.
+ * rtl.c (rtx_equal_p): Don't implement on top of rtx_equal_p_cb.
+
+ * tree-object-size.c (addr_object_size): Instead of checking
+ for non-NULL TREE_CHAIN of the FIELD_DECL check that there
+ are no FIELD_DECLs following it.
+
+2009-06-23 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * tree-ssa-math-opts.c (find_bswap): Increase the search depth in
+ order to match bswaps with signed source operands.
+
+2009-06-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * sdbout.c (sdbout_one_type): Fix braces in switch.
+
+2009-06-23 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (struct variable_info): Add is_global_var
+ member.
+ (var_anything, anything_tree, var_nothing, nothing_tree, var_readonly,
+ readonly_tree, var_escaped, escaped_tree, var_nonlocal, nonlocal_tree,
+ var_callused, callused_tree, var_storedanything, storedanything_tree,
+ var_integer, integer_tree): Remove global variables.
+ (new_var_info): Do not pass new id, append the new var to the
+ global variable vector.
+ (do_ds_constraint): Use is_global_var member of the variable-info.
+ (new_scalar_tmp_constraint_exp): Adjust.
+ (create_function_info_for): Likewise.
+ (create_variable_info_for): Likewise.
+ (find_what_var_points_to): Remove dead code.
+ (init_base_vars): Simplify.
+ (compute_points_to_sets): Adjust.
+
+2009-06-22 Adam Nemet <anemet@caviumnetworks.com>
+
+ * combine.c (try_combine): Dump information about the insns we're
+ combining.
+
+2009-06-22 Adam Nemet <anemet@caviumnetworks.com>
+
+ * combine.c (combine_simplify_rtx): Remove TRULY_NOOP_TRUNCATION
+ check when calling force_to_mode on TRUNCATE's operand.
+
+2009-06-22 Ian Lance Taylor <iant@google.com>
+
+ * config/rs6000/rs6000.opt: Move msched-epilog before
+ msched-prolog.
+
+2009-06-22 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/arm/arm.md (prologue_use): Set length of fake insn to 0.
+
+2009-06-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * doc/invoke.texi (Link Options): -nodefaultlibs and -nostdlib
+ override library linkage flags such as -static-libgcc or
+ -shared-libgcc.
+
+2009-06-22 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ * config/m68k/m68k-devices.def: Add line for MCF5221x.
+
+2009-06-22 Ian Lance Taylor <iant@google.com>
+
+ * config/linux.opt: Put mglibc ahead of muclibc.
+
+ * c-decl.c (diagnose_mismatched_decls): Add -Wc++-compat warning
+ for duplicate decls.
+
+2009-06-22 Matthias Klose <doko@ubuntu.com>
+
+ * Makefile.in (install-plugin): Remove extra `/' after $(DESTDIR).
+
+2009-06-22 Steven Bosscher <steven@gcc.gnu.org>
+
+ PR objc/28050
+ * c-parser.c (c_parser_objc_message_args): Return error_mark_node
+ instead of NULL if a parser error occurs.
+
+2009-06-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * dwarf2out.c (dwarf2_debug_hooks): Initialize
+ non-DWARF2_DEBUGGING_INFO version.
+
+2009-06-22 Kai Tietz <kai.tietz@onevision.com>
+
+ * config.gcc (i[34567]86-*-mingw*, x86_64-*-mingw*): Add
+ i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
+
+ * config/i386/mingw32.h (LIBGCC2_HAS_TF_MODE): Define.
+ (LIBGCC2_TF_CEXT): Define.
+ (TF_SIZE): Define.
+
+2009-06-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ PR target/40463
+ * config/arm/linux-eabi.h (CLEAR_INSN_CACHE): Fix definition.
+
+2009-06-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * config/arm/arm.c (arm_override_options): Disable
+ -mcaller-super-interworking and -mcallee-super-interworking.
+ * doc/invoke.texi (ARM Options): Document this.
+
+2009-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm.c (arm_print_operand): Deal with HIGH.
+ * config/arm/constraints.md (j): New constraint for movw operands.
+ (N): Remove thumb2 meaning.
+ * config/arm/arm.md (*arm_movw): Delete.
+ (*arm_movsi_insn): Use j constraint for movw instead of N constraint.
+ * config/arm/vfp.md (*arm_movsi_vfp, *thumb2_movsi_vfp): Likewise.
+ * config/arm/thumb2.md (*thumb2_movsi_insn): Likewise.
+
+2009-06-22 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/40492
+ * tree-sra.c (sra_modify_assign): Pass zero offsets to
+ build_ref_for_offset.
+
+2009-06-22 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * alias.c: Use REG_P, MEM_P, CONST_INT_P, LABEL_P, CALL_P, NOTE_P and
+ JUMP_TABLE_DATA_P predicates where applicable.
+ * auto-inc-dec.c: Ditto.
+ * builtins.c: Ditto.
+ * caller-save.c: Ditto.
+ * calls.c: Ditto.
+ * cfgcleanup.c: Ditto.
+ * cfglayout.c: Ditto.
+ * cfgrtl.c: Ditto.
+ * combine.c: Ditto.
+ * combine-stack-adj.c: Ditto.
+ * cse.c: Ditto.
+ * cselib.c: Ditto.
+ * dbxout.c: Ditto.
+ * df-scan.c: Ditto.
+ * dse.c: Ditto.
+ * dwarf2asm.c: Ditto.
+ * dwarf2out.c: Ditto.
+ * emit-rtl.c: Ditto.
+ * except.c: Ditto.
+ * explow.c: Ditto.
+ * expmed.c: Ditto.
+ * expr.c: Ditto.
+ * final.c: Ditto.
+ * function.c: Ditto.
+ * fwprop.c: Ditto.
+ * gcse.c: Ditto.
+ * genpreds.c: Ditto.
+ * genrecog.c: Ditto.
+ * ifcvt.c: Ditto.
+ * ira-costs.c: Ditto.
+ * ira-lives.c: Ditto.
+ * jump.c: Ditto.
+ * loop-iv.c: Ditto.
+ * lower-subreg.c: Ditto.
+ * modulo-sched.c: Ditto.
+ * optabs.c: Ditto.
+ * postreload.c: Ditto.
+ * print-rtl.c: Ditto.
+ * recog.c: Ditto.
+ * reginfo.c: Ditto.
+ * regmove.c: Ditto.
+ * reload1.c: Ditto.
+ * reload.c: Ditto.
+ * reorg.c: Ditto.
+ * rtlanal.c: Ditto.
+ * rtl.c: Ditto.
+ * sched-vis.c: Ditto.
+ * sdbout.c: Ditto.
+ * sel-sched-ir.c: Ditto.
+ * simplify-rtx.c: Ditto.
+ * targhooks.c: Ditto.
+ * var-tracking.c: Ditto.
+ * vmsdbgout.c: Ditto.
+
+2009-06-22 Matthias Klose <doko@ubuntu.com>
+
+ * Makefile.in (install-plugin): Always use DESTDIR.
+
+2009-06-22 Olivier Hainque <hainque@adacore.com>
+
+ * config/pa/pa.c (output_call): Don't optimize post call jumps
+ into return address adjustments if the call may throw.
+
+2009-06-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb1_output_casesi): New function.
+ * arm.h (CASE_VECTOR_PC_RELATIVE): Thumb-1 code is also relative if
+ optimizing for size or PIC.
+ (CASE_VECTOR_SHORTEN_MODE): Handle thumb-1.
+ * arm.md (UNSPEC_THUMB1_CASESI): New constant.
+ (casesi): Handle Thumb-1 when optimizing for size or PIC.
+ (thumb1_casesi_internal_pic): New expand rule.
+ (thumb1_casesi_dispatch): New pattern.
+ * aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Use shortened vectors for
+ thumb-1 mode.
+ * coff.h (JUMP_TABLES_IN_TEXT_SECTION): Thumb-1 jump tables are now
+ in the text seciton when PIC or optimizing for size.
+ * elf.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
+ * lib1funcs.asm ([__ARM_EABI__]): Add an attribute describing stack
+ preservation properties of code.
+ (__gnu_thumb1_case_sqi, __gnu_thumb1_case_uqi): New functions.
+ (__gnu_thumb1_case_shi, __gnu_thumb1_case_uhi): New functions.
+ (__gnu_thumb1_case_si): New function.
+ * t-arm (LIB1ASMSRC): Define here.
+ (LIB1ASMFUNCS): Add some common functions.
+ * t-arm-elf (LIB1ASMSRC): Delete.
+ (LIB1ASMFUNCS): Append to existing set.
+ * t-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-strongarm-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-symbian (LIB1ASMFUNCS): Likewise.
+ * t-vxworks (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-wince-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+
+2009-06-21 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/38729
+ * tree-ssa-loop-niter.c (find_loop_niter_by_eval): Restrict
+ to loops with a single exit if -fno-expensive-optimizations.
+
+2009-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ * var-tracking.c (struct shared_hash_def, shared_hash): New types.
+ (dataflow_set): Change vars type from htab_t to shared_hash.
+ (shared_hash_pool, empty_shared_hash): New variables.
+ (vars_clear): Removed.
+ (shared_hash_shared, shared_hash_htab, shared_hash_copy,
+ shared_hash_find_slot_unshare, shared_hash_find_slot,
+ shared_hash_find_slot_noinsert, shared_hash_find): New
+ static inlines.
+ (shared_hash_unshare, shared_hash_destroy): New functions.
+ (unshare_variable): Unshare set->vars if shared, use
+ shared_hash_htab.
+ (vars_copy): Use htab_traverse_noresize instead of htab_traverse.
+ (get_init_value, find_src_set_src, dump_dataflow_set,
+ clobber_variable_part, emit_notes_for_differences): Use
+ shared_hash_htab.
+ (dataflow_set_init): Remove second argument, set vars to
+ empty_shared_hash instead of creating a new htab.
+ (dataflow_set_clear): Call shared_hash_destroy and set vars
+ to empty_shared_hash instead of calling vars_clear.
+ (dataflow_set_copy): Don't call vars_copy, instead just share
+ the src htab with dst.
+ (variable_union): Use shared_hash_*, use initially NO_INSERT
+ lookup if set->vars is shared. Don't keep slot cleared before
+ calling unshare_variable. Unshare set->vars if needed.
+ Even ->refcount == 1 vars must be unshared if set->vars is shared
+ and var needs to be modified.
+ (variable_canonicalize): New function.
+ (dataflow_set_union): If dst->vars is empty, just share src->vars
+ with dst->vars and traverse with variable_canonicalize to canonicalize
+ and unshare what is needed.
+ (dataflow_set_different): If old_set and new_set use the same shared
+ htab, they aren't different. If number of htab elements is different,
+ htabs are different. Use shared_hash_*.
+ (dataflow_set_destroy): Call shared_hash_destroy instead of
+ htab_delete.
+ (compute_bb_dataflow, emit_notes_in_bb, vt_emit_notes): Don't pass
+ second argument to dataflow_set_init.
+ (vt_initialize): Likewise. Initialize shared_hash_pool and
+ empty_shared_hash, move bb in/out initialization afterwards.
+ Use variable_htab_free instead of NULL as changed_variables del hook.
+ (variable_was_changed): Change type of second argument to pointer to
+ dataflow_set. When inserting var into changed_variables, bump
+ refcount. Unshare set->vars if set is shared htab and slot needs to
+ be cleared.
+ (set_variable_part): Use shared_hash_*, use initially NO_INSERT
+ lookup if set->vars is shared. Unshare set->vars if needed.
+ Even ->refcount == 1 vars must be unshared if set->vars is shared
+ and var needs to be modified. Adjust variable_was_changed caller.
+ (delete_variable_part): Use shared_hash_*. Even ->refcount == 1
+ vars must be unshared if set->vars is shared and var needs to be
+ modified. Adjust variable_was_changed caller.
+ (emit_note_insn_var_location): Don't pool_free var.
+ (emit_notes_for_differences_1): Initialize empty_var->refcount to 0
+ instead of 1.
+ (vt_finalize): Call htab_delete on empty_shared_hash->htab and
+ free_alloc_pool on shared_hash_pool.
+
+2009-06-20 Anthony Green <green@moxielogic.com>
+
+ * config/moxie/sfp-machine.h (__gcc_CMPtype, CMPtype): Define.
+ * config/moxie/moxie.h (LOAD_EXTEND_OP): Define.
+
+2009-06-20 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (find_func_aliases): For memset use
+ a constraint from NULL if we memset to zero.
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Add builtins
+ we explicitly handle that do not read from memory.
+ (call_may_clobber_ref_p_1): Properly handle builtins that may
+ set errno.
+
+2009-06-20 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/40495
+ * tree-ssa-structalias.c (get_constraint_exp_for_temp): Remove.
+ (new_scalar_tmp_constraint_exp): New function.
+ (process_constraint): Do not create temporary decls.
+ (process_all_all_constraints): Likewise.
+ (handle_const_call): Likewise.
+ (create_function_info_for): Do not set decl.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * config/rs6000/rs6000.c (rs6000_explicit_options): Make static.
+ (rs6000_attribute_table): Make static; move before use.
+
+2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree.c (substitute_in_expr) <COMPONENT_REF>: Tweak and reformat.
+ <tcc_vl_exp>: Call process_call_operands on the new CALL_EXPR.
+ Propagate the TREE_READONLY flag without overwriting it.
+ (substitute_placeholder_in_expr) <tcc_vl_exp>: Likewise.
+ Propagate the TREE_READONLY flag onto the result.
+ (process_call_operands): Move around. Use correct constant value.
+
+2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ PR target/40482
+ * config/arm/arm.c (thumb_shiftable_const): Truncate val to
+ 32 bits.
+ * config/arm/arm.md: Likewise.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * tree-cfg.c (gimple_redirect_edge_and_branch): Change ERROR_MARK
+ to GIMPLE_ERROR_MARK.
+
+ * c-typeck.c (build_conditional_expr): Add op1_original_type and
+ op2_original_type parameters. Warn about using different enum
+ types.
+ * c-parser.c (c_parser_conditional_expression): Pass original
+ types to build_conditional_expr.
+ * c-tree.h (build_conditional_expr): Update declaration.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * config/i386/i386.c (ix86_function_specific_save): Test that
+ fields match values, rather than testing the values are in a
+ certain range.
+
+2009-06-19 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle
+ ADDR_EXPR pointers.
+ (ptr_derefs_may_alias_p): Likewise.
+ (ptr_deref_may_alias_ref_p_1): New function.
+ (ptr_deref_may_alias_ref_p): Likewise.
+ (ref_maybe_used_by_call_p_1): Handle builtins that are not
+ covered by looking at the ESCAPED solution.
+ (call_may_clobber_ref_p_1): Likewise.
+ * tree-ssa-structalias.c (get_constraint_for_ptr_offset):
+ Handle NULL_TREE offset. Do not produce redundant constraints.
+ (process_all_all_constraints): New helper function.
+ (do_structure_copy): Use it.
+ (handle_lhs_call): Likewise.
+ (find_func_aliases): Handle some builtins with pointer arguments
+ and/or return values explicitly.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * varasm.c (const_rtx_hash_1): Remove const qualifier from shift.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * rtl.h (SUBREG_PROMOTED_UNSIGNED_P): Add cast to int.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * ggc-page.c (ggc_pch_write_object): Initialize emptyBytes.
+ * sdbout.c (sdb_debug_hooks): Initialize non-SDB_DEBUGGING_INFO
+ version.
+
+ * c-decl.c (finish_decl): If -Wc++-compat, warn about
+ uninitialized const.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * dse.c (struct store_info): Rename bitmap field to bmap. Change
+ all uses.
+
+ * c-decl.c (in_struct, struct_types): Remove.
+ (struct c_binding): Add in_struct field.
+ (c_binding_ptr): Define type, along with VEC.
+ (struct c_struct_parse_info): Define.
+ (struct_parse_info): New static variable.
+ (bind): Initialize in_struct field.
+ (start_struct): Remove enclosing_in_struct and
+ enclosing_struct_types parameters. Add
+ enclosing_struct_parse_info parameter. Change all callers. Set
+ struct_parse_info rather than in_struct and struct_types.
+ (grokfield): If -Wc++-compat and there is a symbol binding for the
+ field name, set the in_struct flag and push it on the
+ struct_parse_info->fields vector.
+ (warn_cxx_compat_finish_struct): New static function.
+ (finish_struct): Remove enclosing_in_struct and
+ enclosing_struct_types parameters. Add
+ enclosing_struct_parse_info parameter. Change all callers. Don't
+ set C_TYPE_DEFINED_IN_STRUCT here. Call
+ warn_cxx_compat_finish_struct. Free struct_parse_info and set to
+ parameter. Only push on struct_types if warn_cxx_compat.
+ (finish_enum): Only push on struct_types if warn_cxx_compat.
+ (declspecs_add_type): Add loc parameter. Change all callers.
+ Change all error calls to error_at. Pass loc, not input_location,
+ to pedwarn calls. Warn if -Wc++-compat and a typedef name is
+ defined in a struct. If -Wc++-compat and parsing a struct, record
+ that a typedef name was used.
+ * c-parser.c (c_parser_declspecs): Get location to pass to
+ declspecs_add_type.
+ (c_parser_struct_or_union_specifier): Update calls to start_struct
+ and finish_struct.
+ * c-tree.h (struct c_struct_parse_info): Declare.
+ (finish_struct, start_struct): Update declarations.
+ (declspecs_add_type): Update declaration.
+
+2009-06-19 Ian Lance Taylor <iant@google.com>
+
+ * c-decl.c (grokdeclarator): If -Wc++-compat, warn about a global
+ variable with an anonymous type.
+
+2009-06-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * see.c: Remove for real.
+
+2009-06-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * optabs.h (enum optab_index): Add new OTI_significand.
+ (significand_optab): Define corresponding macro.
+ * optabs.c (init_optabs): Initialize significand_optab.
+ * genopinit.c (optabs): Implement significand_optab using
+ significand?f2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle
+ BUILT_IN_SIGNIFICAND{,F,L}.
+ (expand_builtin): Expand BUILT_IN_SIGNIFICAND{,F,L} using
+ expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * config/i386/i386.md (significandxf2, significand<mode>2): New
+ expanders to implement significandf, significand and significandl
+ built-ins as inline x87 intrinsics.
+
+2009-06-18 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (avr_override_options): Remove setting value of
+ PARAM_INLINE_CALL_COST.
+
2009-06-18 Richard Henderson <rth@redhat.com>
PR 40488
* timevar.def (TV_SEE): Remove.
* tree-pass.h (pass_see): Remove declaration.
* doc/invoke.texi (-fsee): Remove documentation.
- * testsuite/gcc.dg/20080522-1.c: Remove testcase.
- * testsuite/gcc.dg/20080528-1.c: Remove testcase.
2009-06-18 Martin Jambor <mjambor@suse.cz>
* config/rs6000/crtsavgpr.asm: Likewise.
* config/rs6000/crtsavfpr.asm: Likewise.
- * dwarf2out.c (output_cfi_directive): Pass 1 instead of
- 0 to second argument of DWARF2_FRAME_REG_OUT macros.
+ * dwarf2out.c (output_cfi_directive): Pass 1 instead of 0 to second
+ argument of DWARF2_FRAME_REG_OUT macros.
2009-06-03 Julian Brown <julian@codesourcery.com>