summaryrefslogtreecommitdiff
path: root/gcc_arm/ChangeLog.Cygnus
diff options
context:
space:
mode:
Diffstat (limited to 'gcc_arm/ChangeLog.Cygnus')
-rwxr-xr-xgcc_arm/ChangeLog.Cygnus3393
1 files changed, 3393 insertions, 0 deletions
diff --git a/gcc_arm/ChangeLog.Cygnus b/gcc_arm/ChangeLog.Cygnus
new file mode 100755
index 0000000..212eb15
--- /dev/null
+++ b/gcc_arm/ChangeLog.Cygnus
@@ -0,0 +1,3393 @@
+Mon Oct 18 23:25:10 1999 Jonathan Larmour <jlarmour@cygnus.co.uk>
+
+ * config/arm/t-thumb-elf (EXTRA_MULTILIB_PARTS): Ensure crtbegin.o
+ and crtend.o are multilibbed.
+
+Wed Mar 10 19:56:20 1999 Jeff Johnston <jjohnstn@cygnus.com>
+
+ * config/d10v/d10v.h (LIB_SPEC): Added -lnosys to default libraries
+ to include stubs for OS routines not provided by newlib.
+
+1999-02-25 Jim Lemke <jlemke@cygnus.com>
+
+ * config/rs6000/sysv4.h: Add -mmpc860c0[=num] option.
+ * invoke.texi: Add -mmpc860c0[=num] option.
+
+Mon Mar 1 17:14:25 1999 Jim Wilson <wilson@cygnus.com>
+
+ * flow.c (merge_blocks): Disable when flag_exceptions is true.
+
+Wed Feb 10 18:22:55 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/rs6000/rs6000_output_load_toc_table: Fix the bug (comma
+ usage).
+
+Fri Feb 5 16:21:01 1999 Michael Meissner <meissner@cygnus.com>
+
+ * system.h (abort): Add missing comma to error message so filename
+ is not part of the format string.
+
+ * rs6000.md (movdf_hardfloat32): Add support for non offsetable
+ load of fp value into integer register support.
+
+Fri Feb 5 14:26:48 1999 Michael Meissner <meissner@cygnus.com>
+
+ * config/rs6000/rs6000.h (TARGET_OPTIONS): Add -mbranch-cost=n
+ support.
+ (BRANCH_COST): Ditto.
+ (rs6000_branch_cost{,_string}): New externals for altering branch
+ costs.
+
+ * config/rs6000/rs6000.c (rs6000_branch_cost{,_string}): New
+ externals for altering branch costs.
+ (rs6000_override_options): Add support for -mbranch-cost=n.
+
+ * invoke.texi (-mbranch-cost=n): New option description.
+
+Fri Feb 5 13:28:55 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * invoke.texi (-m{no-}sched-{epilog,prolog}): New options
+ documentations
+
+ * config/rs6000/rs6000.md (prologue, epilogue,
+ move{si,di}_{from,to}_cr, load{si,di}_svr4_relocatable_toc,
+ loadsi_svr4_toc, load{si,di}_nonsvr4_toc): New define_expand and
+ define_insn for scheduling prologue/epilogue.
+
+ * config/rs6000/rs6000.h (MASK_SCHED_PROLOG,
+ MASK_SCHED_EPILOG, TARGET_SCHED_PROLOG, TARGET_SCHED_EPILOG):
+ New macros for new options.
+ (TARGET_SWITCHES): Add new options description for scheduling
+ prologue/epilogue.
+ (rs6000_expand_prologue, rs6000_expand_epilogue): New
+ functions defintion.
+
+ * config/rs6000/rs6000.c (rs6000_expand_prologue,
+ rs6000_expand_epilogue, rs6000_output_prolog,
+ rs6000_output_epilog): New functions for scheduling
+ prologue/epilogue.
+
+ (rs6000_output_load_toc_table, rs6000_allocate_stack_space,
+ output_prolog, output_epilog): New cygnus local function
+ implementations.
+
+Fri Feb 5 13:12:13 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * Makefile.in (check-consistency): New makefile entry for
+ GCC compilers consistency testing.
+
+Thu Feb 4 10:08:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (CPP_SPEC): Define __AM33__ when in am33 mode.
+
+Wed Feb 3 13:22:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (height reduction patterns): Add missing earlyclobbers for
+ case where the pattern is not split before regalloc.
+
+Tue Feb 2 20:29:34 1999 Catherine Moore <clm@cygnus.com>
+
+ * configure.in (arm-*-oabi): Support.
+ (thumb-*-oabi): Support.
+ * configure: Regenerate.
+ * config/arm/telf-oabi.h: New file.
+ * config/arm/telf.h (ASM_OUTPUT_DWARF2_ADDR_CONST):
+ Don't use user_label_prefix.
+ * config/arm/thumb.h (ASM_SPEC): Conditionally define.
+ * config/arm/unknown-elf-oabi.h: New file.
+
+Mon Feb 1 15:05:57 1999 Dave Brolley <brolley@cygnus.com>
+
+ * cppfiles.c (find_include_file): Use open_include_file_name instead
+ of calling open directly.
+
+Mon Feb 1 11:39:25 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md: Add attribute 'delay_type'.
+ Add delay slot specification.
+ Add delay_type attributes to insns with non default type.
+ Enable multiplication patterns: mulsidi3 umulsidi3 mulsihi3
+ umulsihi3 mulsi3
+ Add delayed branch print operands.
+
+ * config/fr30/fr30.c (fr30_print_operand): Add codes '#' and 'p'
+ to handle delayed branched and hi/lo register pair respectively.
+
+ * config/fr30/fr30.h (PRINT_OPERAND_PUNCT_VALID_P): Define for
+ '#'.
+ (DWARF_LINE_MIN_INSTR_LENGTH): Set to 2.
+
+ * config/fr30/t-fr30 (LIB1ASMFUNCS): Remove _mulsi3.
+ * config/fr30/lib1funcs.asm: Remove mulsi3 function.
+
+1999-01-31 Michael Meissner <meissner@cygnus.com>
+
+ * config/rs6000/t-vxworks: New file to suppress building libc
+ routines under VxWorks.
+
+ * configure (powerpcle-wrs-vxworks): Add new configuration.
+ (powerpc{,le}-*-vxworks*): Include rs6000/t-vxworks.
+
+ * config/rs6000/vxppc.h ({CPP,LIB,LINK,STARTFILE,ENDFILE}_SPEC,
+ CPP_PREDEFINES): Remove definitions.
+ ({CPP_OS_DEFAULT,LIB_DEFAULT,STARTFILE_DEFAULT,ENDFILE_DEFAULT,
+ LINK_START_DEFAULT,LINK_OS_DEFAULT,CPP_ENDIAN_BIG,
+ CPP_ENDIAN_LITTLE}_SPEC, CPP_PREDEFINES): Define.
+
+ * config/rs6000/vxppcle.h: New little endian VxWorks support file.
+
+ * invoke.texi (-mvxworks): Document.
+
+ * config/rs6000/sysv4.h (CPP_OS_VXWORKS_SPEC): Define CPU_FAMILY
+ as PPC and define CPU.
+ (TARGET_SWITCHES): Add -mvxworks switch to control whether or not
+ the target is VxWorks. If EXTRA_SUBTARGET_SWITCHES is defined, it
+ provides additional switches from a subtarget that includes
+ sysv4.h.
+ (SUBTARGET_EXTRA_SPECS, *_SPEC): Add -mvxwork support.
+ (USER_LABEL_PREFIX): Undef before including svr4.h.
+ (ASM_DECLARE_FUNCTION_NAME): Use asm_fprintf to get the current
+ user prefix in front of the name.
+ (ASM_OUTPUT_INTERNAL_LABEL_PREFIX): Use asm_fprintf to get the
+ current internal label prefix in front of the name.
+ (ASM_OUTPUT_LABELREF): Ditto.
+ ({USER_LABEL,LOCAL_LABEL,REGISTER,IMMEDIATE}_PREFIX): Define.
+ (SUBTARGET_OVERRIDE_OPTIONS): Don't set rs6000_wchar_type{,_size}.
+ (RELATIVE_PREFIX_NOT_LINKDIR): Disable AIX specific support.
+ (WCHAR_*): Set wchar_t to be an int as per standard, not unsigned
+ short.
+ (CPP_SYSV_SPEC): Define _SOFT_FLOAT on machines that use software
+ floating point.
+ (CC1_SPEC, LINK_TARGET_SPEC): Fix typos.
+
+ * config/rs6000/eabi-ci.asm (___{C,D}TOR_LIST__): Add
+ -fleading-underscore support.
+
+ * config/rs6000/eabi-cn.asm (___{C,D}TOR_END__): Ditto.
+
+ * config/rs6000/eabi.asm (__eabi): Don't use FUNC_START/FUNC_END,
+ always use __eabi, even for libraries compiled with
+ -fleading-underscore.
+
+ * ginclude/ppc-asm.h (FUNC_START): Make sure label for function
+ start uses FUNC_NAME.
+ (FUNC_{START,END,NAME}): Prepend the macro __USER_LABEL_PREFIX__
+ into function names.
+
+ * config/rs6000/t-ppcgas (MULTILIB_{OPTIONS,DIRNAMES}): Add new
+ multilibs that use -fleading-underscore.
+
+ * config/rs6000/rs6000.c (rs6000_wchar_type{,_size}): Remove,
+ variables are no longer used.
+
+ * config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Explicitly pass
+ -oformat elf32-powerpcle if -mcall-i960-old.
+
+1999-01-31 Michael Meissner <meissner@cygnus.com>
+
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Add
+ support for -mcall-i960-old. The -mcall-i960-old option now sets
+ -mno-bit-word. If -mcall-i960-old, make wchar_t be an int.
+ (WCHAR_TYPE{,_SIZE}): If -mcall-i960-old, make wchar_t be an int.
+ (CPP_SYSV_SPEC): Ditto
+ (NO_BUILTIN_WCHAR_TYPE): Define, wchar_t is a variable type.
+ (rs6000_wchar_type{,_size}): New globals to hold type string and
+ size for wchar_t.
+ (ASM_SPEC): If -mcall-i960-old, pass -mlittle.
+ (TARGET_FLAGS): Add -m{,no-}bit-word to control whether bitfields
+ can cross word boundaries or not, independent of whether they
+ cause the structure to take on the base type's alignment.
+ (BITFIELD_NBYTES_LIMITED): Depend on whether -m{,no-}bit-word was
+ passed.
+
+ * config/rs6000/rs6000.c (rs6000_wchar_type{,_size}): Provide
+ externals if NO_BUILTIN_WCHAR_TYPE is defined.
+
+ * cccp.c (toplevel): If NO_BUILTIN_WCHAR_TYPE is defined, do not
+ define wide char support.
+ (main): Ditto.
+ (special_symbol): Ditto.
+ (initialize_builtins): Ditto.
+
+ * cpplib.c (toplevel): If NO_BUILTIN_WCHAR_TYPE is defined, do not
+ define wide char support.
+ (special_symbol): Ditto.
+ (initialize_builtins): Ditto.
+
+ * config/rs6000/t-ppcgas (MULTILIB_*): Add multilib for
+ -mcall-i960-old.
+
+ * invoke.texi (-mcall-960-old, -m(no-)bit-word): New options
+ description.
+
+Sat Jan 30 19:40:16 1999 Jim Wilson <wilson@cygnus.com>
+
+ * fold-const.c (fold): Don't pass MINUS_EXPR to
+ reduce_expression_tree_depth.
+
+Thu Jan 28 01:08:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (find_related): Check if a register belonging to a set
+ of related values is clobbered in an insn where it is also used.
+ (optimize_related_values_1): Handle REG_UNUSED notes.
+ (optimize_related_values): Likewise.
+
+Tue Jan 26 12:42:06 1999 Jim Wilson <wilson@cygnus.com>
+
+ * flow.c (merge_blocks): Don't call squeeze_notes if start == end.
+
+1999-01-25 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Add description of backend's
+ responsibility to fill unfilled delay slots with NOPs.
+
+Fri Jan 22 07:50:33 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (DRIVER_DEFINES): Fix accidental breakage of
+ TOOLDIR_BASE_PREFIX.
+
+Thu Jan 21 18:11:27 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (emit_push_insn): Fix typo.
+
+Thu Jan 21 02:54:27 1999 Jeffrey A Law (law@cygnus.com)
+
+ * lcm.c (pre_lcm, pre_rev_lcm): Update comments to reflect reality.
+
+ * flow.c (merge_blocks): When searching for EH notes in a block,
+ quit when we hit the end of the block. Don't merge with the
+ exit block if the predecessor has an EH note. Also leave any
+ CODE_LABEL in its original position when merging with the exit
+ block.
+
+Wed Jan 20 15:30:00 1999 Dave Brolley <brolley@cygnus.com>
+
+ * configure.in: Turn on --enable-c-mchar by default.
+ * configure: Regenerate.
+
+Tue Jan 19 05:40:26 1999 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (merge_blocks): Don't merge a block with the epilogue if
+ the block consists of just a JUMP_INSN.
+
+ * flow.c (merge_blocks): Allow limited merging with the last basic
+ block.
+
+ * Makefile.in (libgcc2.a, LIB2FUNCS_EH): Remove -O0. Resyncs code
+ with net version.
+
+Sat Jan 16 01:06:16 1999 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (mem_set_in_block): Deleted.
+ (mem_first_set, mem_last_set): Deleted.
+ (modify_mem_list): New variable.
+ (mems_conflict_for_gcse_p): New function.
+ (gcse_mems_conflict_p, gcse_mem_operand): New variables.
+ (load_killed_in_block_p): New function.
+ (oprs_unchanged_p): Use load_killed_in_block_p.
+ (oprs_not_set_p, expr_killed_p): Likewise.
+ (compute_transp): Do not pessimize memory references.
+ (record_last_mem_set_info): Keep a list of all instructions which
+ can modify memory for each basic block.
+ (mark_call, mark_set, mark_clobber): Use record_last_mem_set_info.
+ (gcse_main): Initialize & finalize alias analysis.
+ (alloc_gcse_mem): Allocate space for modify_mem_list array.
+ (free_gcse_mem): Free the modify_mem_list array.
+ (compute_hash_table): Clear modify_mem_list.
+ (reset_opr_set_tables): Likewise.
+
+ * gcse.c (invalidate_nonnull_info): Remove unused variables.
+
+ * pa.h (EXTRA_CONSTRAINT): Handle 'S'.
+
+ * pa.md (fused multiply): Add variants which reduce height for the
+ fused multiply, but which still generate 2 insns.
+ (fnegabs): Similarly.
+
+ * pa.md (return, return_internal): Use bve for PA2.0.
+
+ * pa.md (subsi3): Turn into an expander. Create two anonymous
+ patterns. One for PA2.0 one for PA1.x. Use mtsarcm for PA2.0.
+
+1999-01-15 Brendan Kehoe <brendan@cygnus.com>
+
+ * system.h (abort): Adjust where to report bugs as a cygnus-local
+ change.
+
+Fri Jan 15 10:40:37 1999 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in: Remove inclusion of libgloss.h from fr30 target as
+ it is no longer needed.
+ * configure: Regenerate.
+
+1999-01-14 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/i960/i960.h (TARGET_FLAG_MOVE_COALESCENCE,
+ TARGET_MOVE_COALESCENCE, and TARGET_SWITCHES): Definitions for new
+ options `-mmove-coalescence' and `-mno-move-coalescence'.
+ (INIT_EXPANDERS, init_expanders): Definitions for i960 insn
+ expanders.
+
+ * config/i960/i960.c (i960_const0_r12r13, i960_const0_r12r15): New
+ static variables for making move coalescence.
+ (machine_function): New structure describing machine status for
+ expanders.
+ (i960_save_machine_status, i960_restore_machine_status,
+ i960_init_expanders): New functions for work with machine status.
+ (emit_move_sequence, i960_output_move_double_zero,
+ i960_output_move_quad_zero): New code for coalescing move
+ instructions.
+
+ * invoke.texi (-mmove-coalescence, -mno-move-coalescence): New
+ options description.
+
+1999-01-13 Nick Clifton <nickc@cygnus.com>
+
+ * ginclude/va-fr30.h (va_arg): Handle structures specially.
+ (va_aggregate_p): New macro: Detect structures based on their
+ type.
+
+ * config/fr30/fr30.h: (MUST_PASS_IN_STACK): Define: All
+ structures must now be passed on the stack.
+ (DEFAULT_PCC_STRUCT_RETUR): Define.
+
+Mon Jan 11 11:42:07 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md: Add real PA8000 scheduling information.
+
+ * pa.c (adjust_cost): No cost adjustments needed for PA8000.
+ (following_call): Always return zero for the PA8000.
+
+ * pa.h (REG_ALLOC_ORDER): Rework.
+
+1999-01-11 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in: Add extra_parts for FR30 target to build C++
+ contructor and destructor code.
+ * configure: Regenerate.
+ * config/fr30/t-fr30: Add rules to build crti.o and crtn.o.
+ * config/fr30/fr30.h (STARTFILE_SPEC): Add crti.o and crtbegin.o.
+ (ENDFILE_SPEC): Add crtend.o and crtn.o.
+ * config/fr30/crti.asm: New file: Stack frame creation code for
+ .init amd .fini sections.
+ * config/fr30/crtn.asm: New file: Stack frame removal code for
+ .init and .fini sections.
+
+Sun Jan 10 16:58:23 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (HAVE_PRE_INCREMENT): Disable on the PA8000, except for
+ prologue/epilogue sequences.
+ (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise.
+ HAVE_POST_DECREMENT): Likewise.
+
+ * pa-hpux10.h, pa-hpux11.h (ASM_FILE_START): Fix minor logic error.
+
+ * pa.h (ISSUE_RATE): Refine for the PA8000.
+
+Thu Dec 31 16:03:59 1998 Michael Meissner <meissner@cygnus.com>
+
+ * d10v.c ({gpr,accum}_operand): Rewrite December 17th change to
+ work better during the reload phase if we have run out of
+ registers.
+ (reg_or_0_operand): Call gpr_operand for non-integer constants.
+ (arith16_operand): Ditto.
+ (arith_4bit_operand): Ditto.
+ (arith_nonnegative_operand): Ditto.
+ (arith32_operand): Ditto.
+ (arith64_operand): Ditto.
+ (arith_lower0_operand): Ditto.
+
+1998-12-24 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.c (override_options): For TARGET_MIPS16 force
+ mips_align_loops to 0.
+
+1998-12-23 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.h (FUNCTION_PROFILER): Define.
+
+ * config/arm/arm.c (arm_asm_output_label): Use variable
+ 'user_label_prefix' rather than macro USER_LABEL_PREFIX.
+
+ * config/arm/t-thumb-elf: Add multilib option for leading
+ underscores.
+
+ * config/arm/telf.h (USER_LABEL_PREFIX): Default to no leading
+ underscore.
+ (ASM_OUTPUT_DWARF2_ADDR_CONST): Use variable 'user_label_prefix'
+ rather than macro USER_LABEL_PREFIX.
+
+Wed Dec 23 10:03:26 1998 Michael Tiemann <tiemann@holodeck.cygnus.com>
+
+ * config/generic/generic.h: Remove space before paren in
+ LOAD_EXTEND_OP macro.
+
+1998-12-18 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Remove contraints from the
+ define_expand versions of negsi and one_cmpl.
+
+Fri Dec 18 12:09:17 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md: Fix define_expands that were using
+ constraints to work without constraints, since they are not
+ supported.
+
+1998-12-18 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/lib1funcs.asm: Only use 32 division operations, not 33.
+
+1998-12-17 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/lib1funcs.asm: Use macro to generate body of divide
+ and modulo functions.
+
+1998-12-17 Michael Meissner <meissner@cygnus.com>
+
+ * d10v.c ({gpr,accum}_operand): Always check whether a hard
+ register is valid, instead of just passing the buck to
+ register_operand before the reload pass.
+
+1998-12-17 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/abi64.h (LONG_MAX_SPEC): Handle -mabi=eabi.
+
+1998-12-16 Nick Clifton <nickc@cygnus.com>
+
+ * ginclude/va-fr30.h (va_arg): Fix definition to work with small
+ types and irregularly sized types.
+
+ * config/fr30/fr30.h (FRAME_POINTER_REQUIRED): Use a frame pointer
+ for varags functions.
+ (FUNCTION_ARGS): Also check MUST_PASS_IN_STACK().
+ (FUNCTION_ARGS_PASS_BY_REFERENCE): Define.
+
+ * config/fr30/fr30.c (fr30_num_arg_regs): Return 0 if the type
+ satisifies MUST_PASS_IN_STACK().
+
+ * config/fr30/fr30.md (enter_func): Fix pattern to match real
+ behaviour of the insn.
+
+Tue Dec 15 14:09:40 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Add comments for required patterns
+ plus how to use a fixed condition code register.
+
+1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.h (GAS_ASM_SPEC): Pass mabi to gas.
+ (ABI_GAS_ASM_SPEC,abi_gas_asm_spec): New.
+ (EXTRA_SPECS): Added ABI_GAS_ASM_SPEC,abi_gas_asm_spec.
+
+Mon Dec 14 19:22:58 1998 Jim Wilson <wilson@cygnus.com>
+
+ * d30v/d30v.c (move_input_operand, move_output_operand): Accept
+ ADDRESSOF as valid memory operand address.
+
+1998-12-14 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.c (print_operand): Fix LTU and GEU opcodes.
+ (print_operand): Add 'A' operator to print a signed byte value as
+ an unsigned byte value.
+ (fr30_notice_update_cc): Function removed.
+
+ * config/fr30/fr30.h (TRAMPOLINE_TEMPLATE): Define.
+ (TRAMPOLINE_SIZE): Define.
+ (INITIALIZE_TRAMPOLINE): Define.
+ (NOTICE_UPDATE_CC): Undefine.
+
+ * config/fr30/fr30.md: Switch over from using cc0 to using reg 16
+ as a fixed condition code register.
+ Remove the "cc" attribute.
+ (movqi_internal): Use 'A' operator to get an unsigned version of a
+ signed byte value.
+
+Mon Dec 14 17:08:17 1998 Jim Wilson <wilson@cygnus.com>
+
+ * regmove.c (REL_USE_HASH): Use unsigned HOST_WIDE_INT instead of
+ unsigned.
+
+1998-12-13 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in: Add inclusion of libgloss.h
+
+ * config/generic/generic.md (movsi_internal): Improve defintion to
+ include multiple alternatives and add comment explaining why this
+ is desireable.
+
+ * config/fr30/fr30.h (STARTING_FRAME_OFFSET): Change value to 0.
+
+ * config/fr30/fr30.md (movqi_internal): Accept any integer value,
+ not just QI values.
+ (call): Only allows MEMs in REGs.
+
+ * config/fr30/fr30.c (fr30_function_args_partial_nregs): Fix to
+ work properly.
+
+1998-12-12 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/lib1funcs.asm: Fix divide routines.
+ * config/fr30/fr30.h: Rework frame pointer elimination.
+ * config/fr30/fr30.c: Rework frame pointer elimination.
+ * config/fr30/fr30.md: Rework use of cc0.
+
+1998-12-11 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Do not use memory_operand() to test
+ for memory references when performing a define_expand() as it will
+ miss invalid memory constructs.
+
+ * config/fr30/fr30.md: Force MEMs for Qi and HI mode moves to be
+ loaded into a reg.
+ Check peephole conversions of push and pop sequences to make sure
+ that the registers are in ascending order.
+
+ * config/fr30/fr30.c (fr30_check_multiple_regs): New function -
+ Check registers are in ascending order.
+
+ * config/fr30/fr30.h (ENDFILE_SPEC): Add link with simulator library.
+ Add prototype for fr30_check_multiple_regs().
+
+ * config/fr30/lib1funcs.asm: Basic implemenation of divide and
+ modulo funcitons.
+
+1998-12-10 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md: Add pattern for "enter" insn.
+ * config/fr30/fr30.c: Use enter insns as part of function
+ prologue.
+
+ * config/generic/generic.c (generic_setup_incoming_varargs): New
+ stub function.
+ * config/generic/generic.h: (SETUP_INCOMING_VARARGS): Define.
+
+ * config/fr30/t-fr30: Remove _negsi2 and _one_cmplsi2 functions.
+ * config/fr30/lib1funcs.asm: Remove stubs for negsi2 and
+ one_cmplsi2. Make other stubs generate an abort.
+
+ * config/fr30/fr30.h: Create a new fake hard register for the
+ argument pointer.
+ (INITIAL_ELIMINATION_OFFSET): Fix to cope with Fr30 frame layout.
+ (SETUP_INCOMING_VARARGS): Define to call fr30_steup_incoming_varargs().
+ (STRICT_ARGUMENT_NAMING); Define as false.
+ (PREDICATE_CODES): Add low_register_operand().
+
+ * config/fr30/fr30.md: Add peephole for va_arg() load insns. Not
+ working yet.
+ Add peepholes for pushing low registers.
+ Add patterns for: negsi2 and one_cmplsi2
+ Add grunge reload pattern for computing stack addresses.
+
+ * config/fr30/fr30.c: Improve stack layout comment.
+ (MUST_SAVE_FRAME_POINTER): Also save FP if frame_pointer_needed is
+ true.
+ (fr30_expand_prologue): Push arguments into pretend argument area.
+ (fr30_setup_incoming_varags): New function: compute size of
+ pretend argument area.
+ (low_register_operand): New predicate: Return true if argument is
+ a hard register in the range 0 to 7.
+
+ * Makefile.in: Export va-fr30.h to gcc's include directory.
+ * ginclude/varargs.h: Include va-fr30.h if __fr320__ is defined.
+ * ginclude/stdarg.h: Include va-fr30.h if __fr320__ is defined.
+ * ginclude/va-fr30.h: Varargs implemenation for the FR30.
+
+ * config/arm/arm.h (TARGET_OPTIONS): Fixup egcs merge problem.
+
+1998-12-08 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md: Add missing (MEM:SI ...) around memory
+ references!
+ (reload_frame_pointer_add): New pattern to cope with implicit
+ assumption built into reload.
+ (stack_pointer_store, frame_pointer_store): swap order of operands.
+
+ * config/fr30/fr30.c (fr30_expand_epilogue): Pop frame pointer if
+ it was pushed during the prologue.
+
+Sun Dec 6 03:40:07 1998 Jeffrey A Law (law@cygnus.com)
+
+ * fold-const.c (reduce_expression_tree_depth): Set TREE_CONSTANT on
+ new expressions we create, if applicable.
+
+Fri Dec 4 23:10:36 1998 Jeffrey A Law (law@cygnus.com)
+
+ * fold-const.c (fold): Call reduce_expression_tree_depth for
+ simple associative operators.
+ (reduce_expression_tree_depth): New function.
+
+1998-12-04 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md: Improve support for small memory model.
+
+ * Fixed branch length calculations.
+
+1998-12-03 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.h: Add -msmall-model command line switch.
+
+ Define r0 as a fixed register for use by the .md patterns.
+
+ Undefine MACHINE_DEPENDENT_REORD.
+
+ * config/fr30/fr30.md: Use r0 as a scratch register for branches and
+ jumps.
+
+ Use LDI:20 instead of LDI:32 to load addresses if TARGET_SMALL_MODEL
+ is enabled.
+
+ * config/fr30/fr30.c: Delete fr30_reorg() function.
+
+1998-12-02 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.h: Undefine STARTFILE_SPEC and ENDFILE_SPEC.
+ * config/fr30/fr30.md: Enable the generation of the LDI:20
+ instruction.
+
+Wed Dec 2 01:18:53 1998 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (merge_blocks): Call squeeze_notes.
+
+Tue Dec 1 15:29:17 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md (movsi_register_store): Allow ADDRESSOF
+ stores.
+ (branch_true, branch_false): Use comparision_operator to ensure
+ that an operator is actually present in the RTL.
+ (jump, branch): Reduce distance calculation to cope with
+ inaccuracies in insn length calculations.
+
+ * config/fr30/fr30.c (fr30_print_operand): Add 'R' operand to
+ print a MEM as if it were a REG.
+ Add folding to the file.
+
+ * config/fr30/fr30.h: Add folding to the file.
+
+Tue Dec 1 11:59:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (trap_if): Another typo in !GENERATE_BRANCHLIKELY case.
+
+Mon Nov 30 17:05:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (trap_if): Fix typo in !GENERATE_BRANCHLIKELY case.
+
+Fri Nov 27 18:40:10 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (mulsidi3_i, umulsidi3_i): Make rtl describe operation
+ correctly independent of endianness.
+ (mulsidi3, umulsidi3): Now define_insn. Hide details that
+ confuse the optimizers.
+ (mulsidi3+1, umulsidi3+1): New define_split.
+
+1998-11-25 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/t-fr30 (LIB1ASMFUNCS): Add _one_cmplsi2.
+
+ * config/fr30/lib1funcs.asm (__one_cmplsi2): New function stub.
+
+ * config/fr30/fr30.h (MACHINE_DEPENDENT_REORG): Define and set to
+ fr30_reorg().
+
+ * config/fr30/fr30.c (fr30_reorg): New function - detect illegal
+ jump insns created by jump2 pass of gcc and correct them.
+
+Thu Nov 26 00:49:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (udivsi3_i1, divsi3_i1, umulhisi3_i, mulhisi3_i): Name.
+ (smulsi3_highpart_i): Name.
+ (udivsi3): Wrap emitted insns in REG_LIBCALL / REG_RETVAL notes.
+ (divsi3, mulhisi3, umulhisi3, mulsidi3, umulsidi3): Likewise.
+ (smulsi3_highpart, umulsi3_highpart): Likewise.
+
+Tue Nov 24 17:58:29 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.md (jump): Support jumps to code outside +/-
+ 255 byte range.
+
+Tue Nov 24 14:03:17 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.h (TARGET_OPTIONS): Fix merge problem.
+
+Tue Nov 24 00:34:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (hoist_expr_reaches_here_p): Make sure to check all paths.
+
+Mon Nov 23 17:24:24 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c (override_options): Use tilde, not minus to
+ invert a bitfield!
+
+Sun Nov 22 20:33:20 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (DImode div and mod insns):Fix typos.
+
+ * z8k.c (struct option): Add new "description field".
+
+ * z8k.h (EXTRA_CONSTRAINT): Do not call abort.
+ (REG_OK_FOR_INDEX_P): Define with a value.
+ (OPTIMIZATION_OPTIONS): Add new parameter.
+
+ * mips.md (moddi3): Fix typo.
+
+Fri Nov 20 14:51:42 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/fr30/fr30.h: Make MDL and MDH be fixed until the multiply
+ patterns can be fixed.
+
+ * config/fr30/fr30.c (sp_displacement_operand): Fix range to be
+ 0 -> 60 not 0 -> 64.
+ Add %b and %B output operand operators to generate condition
+ codes.
+
+ * config/fr30/fr30.md: Fix branch patterns to use correct
+ condition mnemonics.
+ Rewrite conditional branches to support both long branches and
+ short branches.
+
+ * config/fr30/t-fr30: Define mutlipy and divide functions for
+ libgcc1-asm.a
+
+ * config/fr30/lib1funcs.asm: Assembler code for multiply and
+ divide functions.
+
+Thu Nov 19 13:33:07 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/pe.h: Define USER_LABEL_PREFIX as "_"
+
+Wed Nov 18 14:40:34 1998 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in: Add configury for mips-lsi-elf.
+ * configure: Regenerate.
+ * config/mips/t-lsi: New file.
+
+ * range.c (live_range): Fix size arg to insn_ruid bzero call.
+ Check INSN_UID before storing into insn_ruid array.
+
+Wed Nov 18 10:57:49 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.md: Fix define_split for sasf insns, so that it
+ will not generate bad code if the source and destination registers
+ are the same.
+
+Mon Nov 16 09:46:46 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/d10v/d10v.c (print_operand_memory_reference): Surround
+ user symbols with parentheses in order to distinguish them from
+ register names.
+
+ * config/generic/generic.md (movdf, movdf_internal): Commented out
+ these patterns since they are optional.
+
+Fri Nov 13 10:14:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (optimize_related_values_1): Reject optimization if
+ offset for rel_base_reg_user would be to large.
+
+Fri Nov 13 04:36:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (rel_record_mem): Don't do anything if the register
+ already has an invalidate_luid.
+
+Thu Nov 12 16:44:23 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Fix comment describing epilogue
+ pattern.
+
+ * config/generic/generic.h: Add required definitions of
+ ASM_OUTPUT_CHAR, ASM_OUTPUT_SHORT and ASM_OUTPUT_INT.
+
+Thu Nov 12 23:02:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (invalidate_related): Don't do anything if the register
+ already has an invalidate_luid.
+ (optimize_related_values): Don't update death field if
+ invalidate_luid field is set.
+
+Sat Oct 31 18:10:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.c (secondary_reload_class): No secondary register is needed
+ when copying sp+X into any of extended registers.
+
+Fri Oct 30 14:51:26 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (languages): Add missing ";;" in case statement.
+
+Thu Oct 29 19:08:12 1998 Jim Wilson <wilson@cygnus.com>
+
+ * d10v/d10v.c (d10v_split_logical_op): If reload_completed, create
+ REGs instead of SUBREGS.
+
+Wed Oct 28 23:05:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * invoke.texi: Add new alignment options for MIPS targets.
+ * tm.texi (FUNCTION_BOUNDARY_MAX_SKIP): Document new target macro.
+ * varasm.c (FUNCTION_BOUNDARY_MAX_SKIP): Provide a default value.
+ (assemble_start_function): Use ASM_OUTPUT_MAX_SKIP_ALIGN if defined.
+ * mips.c: Add new variables for alignment and maximum skip support.
+ (override_options): Handle alignment and maximum skip arguments.
+ * mips.h (SUBTARGET_TARGET_OPTIONS): Add new alignment and maximum
+ skip options.
+ (FUNCTION_BOUNDARY, LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Use
+ alignment and maximum skip values computed in override_options.
+ (FUNCTION_BOUNDARY_MAX_SKIP): Define.
+ (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
+
+Wed Oct 28 15:29:56 1998 Jim Wilson <wilson@cygnus.com>
+
+ * c-common.c (c_get_alias_set): Handle ARRAY_REF of union field.
+
+Tue Oct 27 17:02:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.md: Commented out some unecessary patterns.
+
+Tue Oct 27 15:09:42 1998 Nick Clifton (nickc@cygnus.com)
+
+ Merge in arm-elf related changes from EGCS:
+
+ * configure.in: Add arm-*-linux-gnu, armv2-*-linux and arm-*-elf
+ targets.
+
+ * configure: Regenerated.
+
+ * config/arm/aout.h: Add default definitions of REGISTER_PREFIX,
+ USER_LABEL_PREFIX and LOCAL_LABEL_PREFIX. Make other macro
+ definitions conditional on their not having been already defined.
+
+ * config/arm/lin1funcs.asm: Add ELF only macros to generate .size
+ and .type directives, and add "(PLT)" qualification to function
+ calls.
+
+ * config/arm/linux.h: Deleted. This file is now superceeded by
+ either linux-elf.h or linux-aout.h.
+
+ * config/arm/linux-gas.h: Define `inhibit_libc' if cross-compiling.
+ (CLEAR_INSN_CACHE): New macro, currently disabled (awaiting kernel
+ support).
+ Move definitions from old linux.h file here.
+
+ * config/arm/elf.h: Now contains only generic ARM/ELF support.
+
+ * config/arm/linux-aout.h: Support for Linux with a.out.
+
+ * config/arm/linux-elf.h: New file. Support for Linux with ELF.
+
+ * config/arm/linux-elf26.h: New file. Support for Linux with ELF
+ using the 26bit APCS.
+
+ * config/arm/unknown-elf.h: New file. Support for OS'es other
+ than Linux with ELF.
+
+ * config/arm/coff.h: Include aout.h for basic assembler macros.
+
+ * config/arm/arm.h: Make macro definitions conditional on their
+ not having been already defined.
+
+Thu Oct 22 16:28:42 1998 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c reload.c reload.h: Install Bernd's reload patches on
+ this branch for testing.
+
+Wed Oct 21 15:14:35 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/t-generic: Add definitions of CROSS_LIBGCC1 and
+ LIB2FUNCS_EXTRA.
+ Add (commented out) MULTILIB support.
+
+ * config/generic/generic.c (generic_compute_frame_size): New function stub.
+ (generic_print_operand_address): New function stub.
+ (generic_print_operand): New function stub.
+
+ * config/generic/generic.h: Add forward declarations of structure types
+ for use in exported function prototypes.
+ Remove *note constructs.
+ Document --help strings.
+ Fix conflicts between names of args to macros and references to those
+ names in the accompanying text.
+ REG_CLASS_CONTENTS: Define ALL_REGS class in terms of FIRST_PSEUDO_REGISTER.
+ Uncomment definitions which must be present oin order for cc1 to build.
+ RETURN_VALUE_REGNUM: New register macro - the number of a register
+ that holds a scalar function's return value.
+
+Wed Oct 21 11:43:46 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850ea.h (MASK_US_BIT_SET): Change value to 0x1000
+ to avoid clash with MASK_NO_APP_REGS.
+ (MASK_US_BIT_SET): Change value to 0x2000 to avoid clash with
+ MASK_NO_DISABLE_CALLT.
+
+ * config/v850/v850.c (construct_dispose_instruction): Obey setting
+ of TARGET_DISABLE_CALLT.
+ (construct_prepare_instruction): Obey setting of TARGET_DISABLE_CALLT.
+
+Mon Oct 19 14:31:56 1998 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in: Add FR30 target.
+ * configure: Add FR30 target.
+ * config.sub: Add FR30 target.
+ * config/fr30: New directory.
+ * config/fr30/fr30.c: New target specific C source.
+ * config/fr30/fr30.h: New target specific header file.
+ * config/fr30/fr30.md: New target specific machine description.
+ * config/fr30/xm-fr30.h: New target specific cross make header.
+ * config/fr30/t-fr30: New target specific makefile fragment.
+
+ * config/m32r/m32r.h (TARGET_SWITCHES, TARGET_OPTIONS): Document m32r
+ specific command line switches.
+
+Mon Oct 19 14:05:30 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (nonnull_local, nonnull_killed): New file static variables.
+ (invalidate_nonnull_info): New functions
+ (delete_null_pointer_checks): Likewise.
+ * toplev.c (rest_of_compilation): Call delete_null_pointer_checks
+ immediately before and after the first CSE pass.
+
+Mon Oct 19 07:33:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/rs6000/sysv4.h (CPP_SPEC): Define _SOFT_FLOAT
+ if -msoft-float.
+
+Sun Oct 18 14:57:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (compute_transpout): New function.
+ (insert_insn_end_bb): New argument PRE. All callers changed. Make
+ some sanity checks conditional on value of PRE.
+ (transp, comp, antloc): Renamed from pre_transp, pre_comp, pre_antloc.
+ Replace all references.
+ (hoist_transp, hoist_comp, hoist_antloc): Delete. Change all references
+ to transp, comp and antloc respectively.
+ (transpout): New bitmap.
+ (alloc_pre_mem, alloc_hoist_mem): Allocate transpout.
+ (free_pre_mem, free_hoist_mem): Deallocate transpout.
+ (compute_pre_data): Compute pre_transpout.
+ (compute_code_hoist_data): Likewise.
+ (hoist_code): We can not hoist an expression into a block if the
+ expression is not in tranpout for the block.
+
+Fri Oct 16 10:47:53 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.h (TARGET_SWITCHES): Add --help documentation.
+ (TARGET_OPTIONS): Add --help documentation.
+
+Thu Oct 15 13:44:30 1998 Jim Wilson <wilson@cygnus.com>
+
+ * d30v/d30v.c (d30v_eh_epilogue_sp_ofs): New variable.
+ (d30v_stack_info): Correct calculation for link_offset.
+ (d30v_function_epilogue): Don't clear d30v_return_addr_rtx here.
+ (d30v_expand_epilogue): Use d30v_epilogue_sp_ofs.
+ (struct machine_function): New type.
+ (d30v_save_machine_status, d30v_restore_machine_status,
+ d30v_init_expanders): New functions.
+ (d30v_return_addr): Call push_topmost_sequence, pop_topmost_sequence.
+ * d30v/d30v.h (INCOMING_RETURN_ADDR_RTX): Change VOIDmode to Pmode.
+ (INIT_EXPANDERS): New macro.
+ (d30v_init_expanders, d30v_eh_epilogue_sp_ofs): Add declarations.
+ * d30/d30v.md (eh_epilogue): New. Set d30v_eh_epilogue_sp_ofs.
+
+Wed Oct 14 21:38:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (optimize_related_values): Check if cc0 is set.
+
+ * regmove.c (optimize_related_values): Fix problem with multiple
+ related values in single insn.
+
+Tue Oct 13 12:25:24 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c: Synchronised with egcs.
+
+ * config/v850/v850.md: Synchronised with egcs.
+
+ * config/m32r/m32r.md (sne): Only accept unsigned 16bit integers.
+
+Tue Oct 13 07:55:04 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/elf.h: Fix typo.
+ * config/arm/telf.h: Ditto.
+
+Mon Oct 12 22:57:24 1998 Jeffrey A Law (law@cygnus.com)
+
+ * sparc.h: Fix minor merge lossage in 64bit sparc support.
+
+Mon Oct 12 14:10:48 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.c: Fix CYGNUS LOCAL markers.
+
+ * config/arm/arm.c (arm_override_options): Add initialisation of
+ arm_ld_sched boolean.
+
+ Fix CYGNUS LOCAL markers.
+
+ * config/arm/arm.md: Add ldsched attribute and use in computing
+ functional units.
+
+ Fix CYGNUS LOCAL markers.
+
+ Replace (reg 24) with (reg:CC 24).
+
+ * config/arm/arm.h: Add export of arm_ld_sched.
+
+Mon Oct 12 09:21:32 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/elf.h (MAKE_DECL_ONE_ONLY): Define.
+ (UNIQUE_SECTION_P): Define.
+ (UNIQUE_SECTION): Define.
+ * config/v850/v850.c (print_operand): Extend meaning
+ of 'c' operands to support .vtinherit.
+
+Sun Oct 11 03:20:26 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (hppa_legitimize_address): Handle full offsets for PA2.0
+ FP loads and stores.
+ * pa.h (TARGET_PARISC_2_0): Define.
+ (TARGET_SWITCHES): Add -mpa-risc-2-0, -mno-pa-risc-2-0.
+ (GO_IF_LEGITIMATE_ADDRESS): Handle full offsets for PA2.0 FP loads
+ and stores.
+ (LEGITIMIZE_RELOAD_ADDRESS): Similarly.
+ * pa.md: Add several new PA2.0 patterns. Split a few of the
+ fix/float patterns into define_expands and define_insns.
+ * pa-hpux10.h (ASM_FILE_START): Emit .level pa2.0 if generating
+ PA2.0 opcodes.
+ * pa-hpux11.h (ASM_FILE_START): Likewise.
+
+Thu Oct 8 17:06:15 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/elf.h (DWARF_DEBUGGING_INFO): Define.
+ (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
+ (ASM_OUTPUT_DWARF_ADDR_CONST): Redfeine to work for Dwarf-1.
+
+ * config/arm/telf.h (DWARF_DEBUGGING_INFO): Define.
+ (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
+ (ASM_OUTPUT_DWARF_ADDR_CONST): Redfeine to work for Dwarf-1.
+ (ASM_OUTPUT_DEF): Define.
+
+Thu Oct 8 11:02:06 1998 Jim Wilson <wilson@cygnus.com>
+
+ * d30v.md (seq, sne, sgt, sge, slt, sle, sgtu, sgeu, sltu, sleu):
+ Add (eq:SI ... (const_int 1)) around operand 1.
+ (setcc_internal): Likewise.
+ (decscc): Likewise for operand 2.
+ (incscc): Switch operands 1 and 2, then likewise for operand 1.
+
+Thu Oct 8 10:59:42 1998 Nick Clifton <nickc@cygnus.com>
+
+ * d30v.c (d30v_emit_cond_move): Generate pattern that can be
+ matched by the new setcc_internal pattern.
+
+ * tree.h: Remove (unused) data_area field of struct
+ tree_decl.
+
+ * c-decl.c (duplicate_decls): Remove code to copy data_area
+ field of struct tree_decl.
+ (start_decl): Remove invocation of SET_DEFAULT_SECTION_NAME.
+ (start_function): Add invocation of SET_DEFAULT_DECL_ATTRIBUTES.
+
+ * tm.texi (SET_DEFAULT_SECTION_NAME): Remove definition of
+ this unused macro.
+
+Wed Oct 7 02:39:12 1998 Richard Henderson <rth@cygnus.com>
+
+ * gcse.c (insert_insn_end_bb): When a call ends a bb, insert
+ the new insns before the argument regs are loaded.
+
+Tue Oct 6 10:59:15 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/sparc/sysv4.h (ASM_OUTPUT_SECTION_NAME): Don't
+ check for flag_function_sections.
+
+Mon Oct 5 09:59:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in: Remove CYGNUS LOCAL markers for unlibsubdir changes.
+
+Fri Oct 2 16:58:37 1998 Nick Clifton <nickc@cygnus.com>
+
+ * dwarf2out.c (gen_subprogram_die): If errorcount nonzero, don't
+ call abort if the function is already defined.
+
+Thu Oct 1 17:59:03 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c: Import changes from egcs.
+
+Wed Sep 30 10:41:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.md: Replace 'memory_operand' with
+ 'indirect_operand' in set1, not1 and clr1 patterns.
+
+ * config/v850/v850.c (compute_register_save_size): Detect when
+ out-of-line helper functions will be used to create function
+ prologues, and allow for their affect on the frame size.
+
+ * config/v850/v850.h (EXTRA_SWITCHES): Default the contents of this
+ macro to empty.
+
+ * config/v850/lib1funcs.asm: Add type attributes for callt
+ functions.
+
+Tue Sep 29 09:36:33 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/d30v/libgcc1.asm: Fixinstruction ordering conflicts
+ detected by recent changes in the assembler.
+
+Mon Sep 28 13:20:44 1998 Catherine Moore <clm@cygnus.com>
+
+ * configure.in: Add CYGNUS LOCAL markers.
+ * config/arm/aout.h: Ditto.
+ * config/arm/arm.h: Ditto.
+ * config/arm/t-arm-elf: Ditto.
+ * config/arm/t-thumb-elf: Ditto.
+
+Fri Sep 15 16:00:00 1998 Jim Wilson <wilson@cygnus.com>
+
+ * reload1.c (reload): Use reload_address_index_reg_class and
+ reload_address_base_reg_class when setting caller_save_spill_class.
+ * config/arm/arm.md (insv): Add comment. In CONST_INT case, and
+ operand3 with mask before using it.
+
+Wed Sep 23 16:35:17 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (enum reg_class): Add NONARG_LO_REGS
+ support.
+ (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS,
+ PREFERRED_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
+ (GO_IF_LEGITIMATE_ADDRESS): Disable REG+REG addresses before reload
+ completes. Re-enable HImode REG+OFFSET addresses.
+ (LEGITIMIZE_RELOAD_ADDRESS): Define.
+
+Wed Sep 23 20:42:54 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (optimize_related_values_1): Set use->insn when emitting
+ the linking insn before the final 'use' for a register that does not
+ die within the scope of the optimization.
+
+Tue Sep 22 10:01:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/generic/generic.h: Update description of HANDLE_PRAGMA
+ and add description of HANDLE_PRAGMA_PACK_PUSH_POP.
+
+Mon Sep 21 15:04:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (count_sets): New function.
+ (gen_add3_insn): If single instruction add fails and source and
+ destination register are different, try a move / add sequence.
+ (rel_use_chain): New member match_offset.
+ (optimize_related_values_1): Set it, and use it to avoid linking
+ chains when this requires more than one instruction for the add.
+ (add_limits): New file scope array.
+ (optimize_related_values): Initialize it.
+
+Mon Sep 21 14:55:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (optimize_related_values_1): Don't use rel_base->reg
+ for a chain that needs an out-of-range offset.
+ Take setting of rel_base_reg_user into account when deciding
+ if there are enough registers available.
+
+Fri Sep 18 11:54:03 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/elfos.h: Modify prefixes for UNIQUE_SECTION_NAME.
+ * config/svr4.h: Likewise.
+ * config/mips/elf.h: Likewise.
+ * config/mips/elf64.h: Likewise.
+
+Fri Sep 18 09:44:55 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.h (m32r_block_immediate_operand): Add to
+ PREDICATE_CODES.
+
+ * config/m32r/m32r.md: Add "movstrsi" and "movstrsi_internal"
+ patterns.
+
+ * config/m32r/m32r.c (m32r_print_operand): Add 's' and 'p'
+ operators.
+ (block_move_call): New function: Call a library routine to copy a
+ block of memory.
+ (m32r_expand_block_move): New function: Expand a "movstrsi"
+ pattern into a sequence of insns.
+ (m32r_output_block_move): New function: Expand a
+ "movstrsi_internal" pattern into a sequence of assembler opcodes.
+
+Wed Sep 16 14:13:38 1998 Stan Cox <scox@cygnus.com>
+
+ * i386-coff.h (DBX_DEBUGGING_INFO): Added.
+
+Wed Sep 16 12:09:12 1998 Catherine Moore <clm@cygnus.com>
+
+ * flags.h: Add flag_data_sections.
+ * toplev.c: Add option -fdata-sections. Add flag_data_sections.
+ (compile_file): Error if flag_data_sections not supported.
+ * varasm.c (assemble_variable): Handle flag_data_sections.
+
+Tue Sep 15 16:41:00 1998 Michael Tiemann <michael@impact.tiemann.org>
+
+ * fold-const.c (fold): Fix typo in COND_EXPR handling code.
+ (invert_truthvalue): Enable truthvalue inversion for
+ floating-point operands if -ffast-math.
+
+ * regmove.c (find_related): We also have to track expressions that
+ are just naked registers. Otherwise, we burn one register to
+ prime the related values, and we'll also miss the second (but not
+ subsequent) opportunities to use related values.
+
+ * lcm.c (compute_antinout): Start by setting all bits in
+ OLD_CHANGED, not NEW_CHANGED.
+ (compute_earlyinout): Ditto.
+
+ * lcm.c (compute_redundant): Free temp_bitmap when we're done with
+ it.
+
+ * libgcc1.c (__abssf2, __absdf2): New libcalls.
+ * Makefile.in (LIB1FUNCS): Add code for new ABS libcalls.
+ * optabs.c (init_optabs): Intialize abs_optabs to use ABS
+ libcalls.
+
+Tue Sep 15 17:09:49 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Add special case for FPSCR.
+ (GO_IF_LEGITIMATE_ADDRESS): Allow indexed addressing for PSImode
+ after reload.
+ (LEGITIMIZE_RELOAD_ADDRESS): Don't operate on
+ RELOAD_FOR_INPUT_ADDRESS for PSImode.
+ * sh.md (movpsi): New expander.
+ (fpu_switch): Add r/r and m/r alternatives. Move r/m before
+ c/m. Add insn predicate.
+
+Tue Sep 15 09:47:50 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/aout.h: Check if ASM_DECLARE_FUNCTION_NAME
+ already declared.
+ * config/arm/elf.h (TYPE_ASM_OP): Define.
+ (SIZE_ASM_OP): Define.
+ (TYPE_OPERAND_FMT): Define.
+ (ASM_DECLARE_RESULT): Define.
+ (ASM_DECLARE_FUNCTION_NAME): Define.
+ (ASM_DECLARE_OBJECT_NAME): Define.
+ (ASM_FINISH_DECLARE_OBJECT): Define.
+ (ASM_DECLARE_FUNCTION_SIZE): Define.
+ (ASM_OUTPUT_SECTION_NAME): Change default to "ax".
+ * config/arm/telf.h (ASM_OUTPUT_SECTION_NAME): Change
+ default to "ax".
+
+Mon Sep 14 09:39:28 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (compute_preds_succs): Only split edges when the last insn
+ in the basic block is a conditional branch.
+ (merge_blocks): Do not merge a block with a tablejump with anything.
+
+Tue Sep 8 21:36:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (pre_insert): Fix thinko.
+
+Mon Sep 7 23:50:56 1998 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.c (rs6000_override_options): Add -mcpu=740 as a place
+ holder.
+
+Thu Sep 3 18:16:16 1998 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.c (rs6000_override_options): Add -mcpu=750 as a place
+ holder.
+
+Thu Sep 3 23:33:57 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (push_obstacks_nochange, end_temporary_allocation): Declare.
+ * regmove.c (obstack.h): Include.
+ (REL_USE_HASH_SIZE, REL_USE_HASH, rel_alloc, rel_new): Define.
+ (struct related, struct related_baseinfo, struct update): New structs.
+ (struct rel_use_chain, struct rel_use): Likewise.
+ (regno_related, rel_base_list, unrelatedly_used): New variables.
+ (related_obstack): Likewise.
+ (regclass_compatible_p, lookup_related): New functions.
+ (rel_build_chain, rel_record_mem, invalidate_related): Likewise.
+ (find_related, chain_starts_earlier, chain_ends_later): Likewise.
+ (optimize_related_values_1, optimize_related_values_0): Likewise.
+ (optimize_related_values): Likewise.
+ (regmove_optimize): Use regclass_compatible_p.
+ Call optimize_related_values.
+
+Wed Sep 2 19:00:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (pre_insert): Do not insert an expression into the same
+ block more than once.
+ * lcm.c (compute_antinout): Avoid useless computations when the
+ global properties of the current block's successors have not changed.
+ (compute_earlyinout): Similarly.
+
+Tue Sep 1 11:30:33 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Change (reg:CC 17) to (reg:SI 17).
+ * config/m32r/m32r.h: Make register 17 be fixed.
+
+Mon Aug 31 11:29:15 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/elf.h: Rework constructor/destructor support.
+ * config/arm/telf.h: Likewise.
+ * config/arm/t-arm-elf: New file.
+ * config/arm/t-thumb-elf: New file.
+ * configure.in: Change tmake_file to t-arm-elf for
+ arm-elf and to t-thumb-elf for thumb-elf.
+ * configure: Rebuild.
+
+Mon Aug 31 09:53:24 1998 Jeffrey A Law (law@cygnus.com)
+
+ * range.c (live_range): Do not perform LRS on phony loops.
+
+ * mn10300.md (widening multiplies): Fix order of output operands
+ in assembler template.
+
+ * range.c (range_finish): Start block 0 at the first CODE_LABEL or
+ real insn.
+
+Wed Aug 26 17:13:37 1998 Tom Tromey <tromey@cygnus.com>
+
+ * gthr.h: Document __GTHREAD_MUTEX_INIT_FUNCTION.
+ * gthr-qt.h: New file.
+ * frame.c (init_object_mutex): New function.
+ (init_object_mutex_once): Likewise.
+ (find_fde): Call it.
+ (__register_frame_info): Likewise.
+ (__register_frame_info_table): Likewise.
+ (__deregister_frame_info): Likewise.
+ * configure.in: Recognize `qt' as a thread package. Add
+ appropriate -I option to gthread_flags when using qt.
+ * configure: Rebuilt.
+
+Wed Aug 26 16:22:51 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (rest_of_compilation): Enable LRS at -O2 and higher for
+ systems which prefer stabs debug symbols.
+ * invoke.texi: Restore lost LRS docs. Note LRS is enabled at -O2
+ and higher for some systems.
+
+ * toplev.c (rest_of_compilation): Run recompute_reg_usage before
+ LRS, not after.
+
+Wed Aug 26 09:30:59 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.c (thumb_exit): Do not move a4 into lr if it
+ already contains the return address.
+
+ * cse.c (equiv_constant): Cope with gen_lowpart_if_possible()
+ returning 0.
+
+Wed Aug 26 11:18:57 1998 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.md (lshrsi3_internal2+2): Fix type-o.
+
+Tue Aug 25 11:38:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c (movsi_source_operand): Treat CONSTANT_P_RTX
+ as an ordinary operand.
+
+Sat Aug 22 00:11:51 1998 Jeffrey A Law (law@cygnus.com)
+
+ * rs6000.md (movdf_softfloat32): Accept any valid memory
+ address.
+
+Fri Aug 21 14:19:52 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (movdi, movdf): When using movu to load the high half
+ of a DImode/DFmode value, do not forget to also load the load half.
+
+Thu Aug 20 15:04:28 1998 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.h (ASM_GENERATE_INTERNAL_LABEL): Remove definition, svr4.h
+ supplies an appropriate one.
+
+ * d10v.c: Include system.h, not stdio.h to get sys/param.h pulled
+ in before rtl.h in case the system defines MIN and MAX.
+ * d30v.h: Ditto.
+
+Wed Aug 19 11:57:57 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
+
+Tue Aug 18 10:02:53 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/elf.h: Define ASM_SPEC and LINK_SPEC.
+
+Wed Aug 12 14:12:40 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.md (extendqisi2_insn): Cope with REG +
+ OFFSET addressing.
+
+ * config/arm/m32r.md (sne): Only generate xor insns when the
+ constant is unsigned.
+
+Wed Aug 12 12:09:54 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (hpux11 support): Move it before the default hpux
+ case to avoid using the generic hpux config files for hpux11.
+ * configure: Rebuilt.
+
+Wed Aug 12 12:47:50 1998 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips/mips.h (ENCODE_SECTION_INFO): Set SYMBOL_REF_FLAG for
+ VAR_DECL's in gp addressable sections.
+
+Wed Aug 12 09:02:55 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c (m32r_not_same_reg): New function. Returns
+ true iff its two arguments are rtx's that refer to different
+ registers.
+
+ * config/m32r/m32r.h (PREDICATE_CODES): Add m32r_not_same_reg().
+
+ * config/m32r/m32r.md (andsi3, iorsi3, xorsi3): Use
+ m32r_not_same_reg() rather than rtx_equal_p().
+
+Tue Aug 11 09:15:23 1998 Nick Clifton <nickc@cygnus.com>
+
+ * tm.texi (SET_DEFAULT_SECTION_NAME): Add CYGNUS LOCAL markers.
+
+Mon Aug 10 11:36:04 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.h: Add prototypes for some exported functions.
+
+ Remove spurious CYGNUS LOCAL markers, and add required CYGNUS
+ LOCAL markers.
+
+ Define HANDLE_PRAGMA and SET_DEFAULT_SECTION_NAME macros and the
+ enums used by the code in v850.c that implements them.
+ New enums: v850_pragma_state, v850_pragma_type, GHS_section_kind.
+
+ * config/v850/v850.c: Add prototypes for functions not prototypes
+ in v850.h.
+
+ Add default cases to some switch statements, in order to eliminate
+ warning messages when compiled with -Wall.
+
+ Add support for sda, tda and zda attributes. Moved here from
+ c-decl.c. Add code to implement some GHS pragmas.
+ New functions: push_data_area, pop_data_area, v850_handle_pragma,
+ mark_current_function_as_interrupt, parse_ghs_pragma_token,
+ v850_set_default_section_name.
+
+Fri Aug 7 17:25:29 1998 Nick Clifton <nickc@cygnus.com>
+
+ * c-decl.c (duplicate_decls): Copy data area from old decl into
+ new decl.
+ (start_decl): Add use of SET_DEFAULT_SECTION_NAME, if defined.
+ (start_function): Add use of SET_DEFAULT_SECTION_NAME, if defined.
+
+ * c-lex.c (check_newline): Call HANDLE_PRAGMA before
+ HANDLE_SYSV_PRAGMA if both are defined. Generate warning messages
+ if unknown pragmas are encountered.
+ (handle_sysv_pragma): Interpret return code from
+ handle_pragma_token (). Return success/failure indication rather
+ than next unprocessed character.
+
+ * c-pragma.c (handle_pragma_token): Return success/failure status
+ of the parse.
+
+ * c-pragma.h: Change prototype of handle_pragma_token().
+
+ * tm.texi (HANDLE_PRAGMA): Document the use of HANDLE_PRAGMA when
+ USE_CPPLIB is enabled.
+ (SET_DEFAULT_SECTION_NAME): New macro. Allows backend to setup
+ the section name of a decl when it is created.
+
+ * tree.h (DECL_DATA_AREA): New macro. Accesses data_area field of
+ a decl
+ (struct tree_decl): Add new field 'data_area'.
+
+ * varasm.c: (handle_pragma_weak): Only create this function if
+ HANDLE_PRAGMA_WEAK is defined.
+
+Mon Aug 3 08:00:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * configure.in: Support arm-*-elf and thumb-*-elf.
+ * configure: Regenerate.
+
+Fri Jul 31 16:13:04 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/elf.h: New file.
+ * config/arm/telf.h: New file.
+ * config/arm/aout.h: Check if ASM_FILE_START previously
+ defined.
+ * config/arm/arm.h: Check if STRUCTURE_SIZE_BOUNDARY
+ previously defined.
+
+Fri Jul 31 16:00:41 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * mips.md (mulsi3_mult3): Add TARGET_MIPS5400 to condition.
+ (muls_r5400, msac_r5400): Don't disparage output-LO alternative.
+ (msac_r5400): Use "*d" for accumulator, to give preference to LO
+ initially but not during reload.
+ (muls_r5400_di, msac_r5400_di, xmulsi3_highpart_5400,
+ xmulsi3_neg_highpart_5400): Fix typo, SIGN_EXTRACT for
+ SIGN_EXTEND.
+ (macc_r5400_di): Absorb into mul_acc_64bit_di.
+ (mul_acc_64bit_di): Don't use match_dup for accumulator, use "0"
+ constraint.
+ * t-vr5000 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add VR5400
+ options.
+
+Fri Jul 31 10:23:55 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * m32r/m32r.h (ASM_OUTPUT_SOURCE_LINE): Always output line number
+ labels with .debugsym if no parallel insns.
+
+Fri Jul 31 09:45:07 1998 Nick Clifton <nickc@cygnus.com>
+
+ * reload1.c (init_reload): On SMALL_REGISTER_CLASSES machines,
+ when searching for a reload_address_reg_class, avoid fixed
+ registers as well as argument registers.
+
+Wed Jul 29 11:47:10 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.md (extendqisi2_insn): Remove earlyclobber
+ constraint from second alternative.
+
+Tue Jul 28 18:54:28 1998 Stan Cox <scox@cygnus.com>
+
+ * sp86x-aout.h (HAVE_ATEXIT): New macro.
+
+Tue Jul 28 11:12:46 1998 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * cse.c (cse_insn): Enable subsitution inside libcall only for REG,
+ SUBREG, MEM.
+ * rtlanal.c (replace_rtx): Prohibit replaces in CONST_DOUBLE.
+
+Fri Jul 24 14:22:39 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (am33 movqi, movhi, movsi, movsf): Handle CONST_DOUBLE.
+
+Fri Jul 24 11:17:04 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.c (thumb_print_operand): Decode %_ in asm
+ strings as the insertion of USER_LABEL_PREFIX.
+ * config/arm/thumb.h (PRINT_OPERAND_PUNCT_VALID_P): Accept _ as a
+ valid code.
+ * config/arm/thumb.md: Use %_ as a prefix to gcc library function
+ calls.
+
+Thu Jul 23 13:16:29 1998 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (dwarf2out_finish): Call stripattributes on TEXT_SECTION.
+
+Thu Jul 23 11:12:06 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * expr.c (expand_expr): Expand RETURN_EXPR.
+
+Wed Jul 22 21:43:54 1998 Stan Cox <scox@cygnus.com>
+
+ * longlong.h (count_leading_zeros): Sparclite scan instruction was
+ being invoked incorrectly.
+
+ * i386.c (ix86_prologue): Added SUBTARGET_PROLOGUE invocation.
+ * i386/cygwin32.h (STARTFILE_SPEC, LIB_SPEC, SUBTARGET_PROLOGUE):
+ Add -pg support.
+ * i386/win32.h: New file. Hybrid mingw32.h/cygwin32.h configuration.
+
+Wed Jul 22 18:40:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * dwarf2out.c (output_aranges): Call stripattributes
+ for TEXT_SECTION references.
+ (output_line_info): Likewise.
+
+Tue Jul 21 23:42:34 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.c (print_operand_address): Handle POST_INC.
+ * mn10300.h (HAVE_POST_INCREMENT): Define.
+ (GO_IF_LEGITIMATE_ADDRESS): Handle POST_INC for the am33.
+ (GO_IF_MODE_DEPENDENT_ADDRESS): POST_INC is mode dependent.
+
+Mon Jul 20 16:40:31 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cpplib.c (cpp_handle_option): More fixes for cplusplus_comments.
+
+Mon Jul 20 15:09:54 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * mips.md (attribute "type"): Add new value "frsqrt".
+ (function unit specs): Handle frsqrt like fsqrt, except if r5400.
+ (sqrtsf2+1 et al): Use frsqrt type for rsqrt.FMT instructions.
+ (function unit "memory"): Treat r5400 like r5000.
+ (function unit "imuldiv"): Set costs for r5400. Delete a
+ duplicated entry.
+ (function units "adder", "divide"): Don't use for r5400.
+ (function unit "alu_5400"): Don't use for imul or idiv
+ instructions; do use for arith, darith, move, icmp, nop. Adjust
+ issue delay.
+
+Fri Jul 17 11:16:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (LIMIT_RELOAD_CLASS): Refine for the am33.
+
+ * mn10300.h (zero_ereg): Delete declaration for unused variable.
+ (MODES_TIEABLE_P): Provide am33 aware version.
+
+ * mn10300.md (movqi, movhi): Provide am33 versions which allow
+ ADDRESS_REGS to be used as destinations.
+ (umulsidi3, mulsidi3): Do not accept immediate operands.
+
+ * mn10300.h (HARD_REGNO_MODE_OK): Address registers can hold HImode
+ and QImode objects on the am33.
+
+Thu Jul 16 14:50:58 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (movXX): Use movu when profitable.
+
+ * mn10300.c (expand_epilogue): Fix thinko in previous change.
+
+ * mn10300.md (umulsidi3, mulsidi3): New am33 patterns.
+
+ * mn10300.c (count_tst_insns): Count tst insns for EXTENDED_REGS
+ as well as clearing an EXTENDED_REGS register.
+ (expand_prologue): Set up zero_areg and zero_dreg if we can optimzie
+ comparisons or sets of EXTENDED_REGS against zero.
+ (output_tst): Heandle optimizing for extended regs.
+
+ * mn10300.h (REGISTER_MOVE_COST): Define appropriately for the am33.
+
+ * mn10300.md (am33 logicals): New patterns.
+ (am33 zero and sign extension): New patterns.
+ (am33 shifts): New patterns.
+
+Tue Jul 14 14:15:30 1998 Nick Clifton <nickc@cygnus.com>
+
+ * gcc.c: Remove ANSI-C ism from --help code.
+
+ * toplev.c: Support --help with USE_CPPLIB.
+
+Tue Jul 14 10:57:43 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (am33 mulsi): New pattern.
+ (am33 tstqi, tsthi): New patterns.
+
+ * mn10300.md (movXX patterns): Optimize loading zero into an
+ extended register if we know a data or address register already
+ has the value zero in it.
+
+ * mn10300.h (TARGET_SWITCHES): Turn off -mmult-bug for the am33.
+
+ * mn10300.md (subsi3, am33 version): Fix code generation when
+ operands0 and operands2 are the same register.
+
+Mon Jul 13 21:45:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (expand_builtin): Do not warn for targets which do not
+ support CONSTANT_P_RTX. Temporary patch until next merge
+
+Mon Jul 13 11:10:15 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850ea.h (EXTRA_SWITCHES): Document these switches.
+ * config/v850/v850e.h (EXTRA_SWITCHES): Document these switches.
+ * config/v850/v850.h (TARGET_OPTIONS, TARGET_SWITCHES,
+ EXTRA_SWITCHES): Document these switches.
+
+ * cccp.c (main): Add support for parsing --help.
+ (display_help): New function: display command line switches.
+
+ * cpplib.c (cpp_handle_option): Add support for parsing --help.
+ (display_help): New function: display command line switches.
+
+ * gcc.c (main): Add support for parsing --help, and passing it on
+ to the sub-processes invoked by gcc.
+ (display_help): New function: display comman line switches.
+
+ * tm.texi (TARGET_SWITCHES and TARGET_OPTIONS): Document
+ 'description' field added to structure.
+
+ * toplev.c: Add support for parsing --help.
+ Add documentation strings to command line option tables.
+ (display_help): New function: display comman line switches.
+
+Mon Jul 13 11:18:58 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.c: Add rough am33 support.
+ * mn10300.md: Likewise.
+ * mn10300.h: Likewise.
+ * t-mn10300: Likewise.
+Mon Jul 13 11:10:15 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/semi.h (USER_LABEL_PREFIX): Change to "" to match
+ FSF sources.
+
+ * config/arm/tcoff.h (USER_LABEL_PREFIX): Change to "" to match
+ change to semi.h
+
+Sun Jul 12 13:34:23 1998 Michael Meissner <meissner@cygnus.com>
+
+ * jump.c (duplicate_loop_exit_test): Fix typo in last change.
+
+Sat Jul 11 02:59:08 1998 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (extendhisi2_mem, movhi, movhi_bytes): Propagate the volatile
+ and structure attribute flags to MEMs generated.
+ (splits for sign-extended HI & QI mode from memory): Also propagate
+ the volatile flag.
+
+Sat Jul 11 01:18:33 1998 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c (duplicate_loop_exit_test): Avoid out of bounds access
+ to the reg info virtual array.
+
+Thu Jul 9 10:49:08 1998 Jeffrey A Law (law@cygnus.com)
+
+ * arm/tpe.h (JUMP_TABLES_IN_TEXT_SECTION): Define with a value.
+ * i386/i386elf.h: Likewise.
+ * i386/rtemself.h: Likewise.
+ * z8k/z8k.h: Likewise.
+
+ * Makefile.in: Fix minor merge lossage which caused incorrect
+ dependencies.
+
+Wed Jul 8 23:37:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * d30v.h (STDIO_PROTO): Likewise.
+
+Wed Jul 8 16:53:37 1998 Jim Wilson <wilson@cygnus.com>
+
+ * range.c (range_print_flags): Add static to definition.
+
+1998-07-08 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/fp-bit.c (__gexf2, __fixxfsi, __floatsixf): Add function
+ stubs.
+
+ * toplev.c (lang_options): Add -Wlong-long, -Wno-long-long
+ options.
+ * c-decl.c (warn_long_long): Define.
+ (c_decode_option): Parse -Wlong-long, -Wno-long-long options.
+ (grokdeclarator): Add flag `warn_long_long' as guard for
+ warning "ANSI C does not support `long long'".
+ * invoke.texi: Add description of options -Wlong-long,
+ -Wno-long-long.
+ * gcc.1: The same as above.
+
+Wed Jul 8 09:45:22 1998 Nick Clifton <nickc@cygnus.com>
+
+ * haifa-sched.c (debug_ready_list): Remove static qualifier, so
+ that it can be called from machine back ends.
+
+ * libgcc1-test.c: Remove duplicate prototype for memcpy().
+
+ * config/arm/arm.c (arm_override_options): Reference 'flags'
+ rather than 'tune_flags'.
+
+Wed Jul 8 03:22:22 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Merge from egcs snapshot 19980707.
+
+Mon Jul 6 09:32:14 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/tpe.h (REDO_SECTION_INFO_P): Define.
+
+ * config/arm/thumb.c (thumb_override_options): Warn about and
+ ignore '-fpic'.
+
+ * config/m32r/m32r.h (MUST_PASS_IN_STACK): Override default
+ version.
+
+Thu Jul 2 08:11:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * haifa-sched.c (alloc_EXPR_LIST): Change to use
+ unused_expr_list.
+
+Mon Jun 29 12:15:00 Catherine Moore <clm@cygnus.com>
+
+ * config/sparc/lb1spc.asm (.udiv, .div) Replace routines.
+
+1998-06-26 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (LOOP_TEST_THRESHOLD): If loop unrolling and saving
+ space, don't suppress moving the loop test from top to the bottom.
+
+Thu Jun 25 09:53:24 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
+ noticed by grahams@rcp.co.uk.
+
+Wed Jun 24 10:39:32 1998 Stan Cox <scox@cygnus.com>
+
+ * sparc.md (sethi_di_sp32): Swap registers if we are
+ compiling in little endian mode.
+
+ * sparc.h (CPP_ENDIAN_SPEC, LIBGCC2_WORDS_BIG_ENDIAN): Check for
+ mlittle-endian-data in addition to mlittle-endian.
+
+ * sp86x-aout.h (ASM_SPEC, SUBTARGET_SWITCHES): -mlittle-endian-data
+
+ * ginclude/va-d30v.h (va_arg): struct args < 4 bytes must be offset.
+
+Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * reload.c (find_reloads): Fix check for failure to match any
+ alternative, to account for Mar 26 change in initial "best" cost.
+
+Tue Jun 23 14:20:57 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/d30v/d30v.h (FIXED_REGISTERS): Remove reference to return
+ address register.
+ (CALL_USED_REGISTERS): Ditto.
+
+Tue Jun 23 16:42:29 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cpplib.c (open_include_file_name): Mark as local change.
+
+Mon Jun 22 10:30:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * varasm.c (assemble_variable): Emit alignment warning.
+
+Sat Jun 20 04:10:50 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (MD_SCHED_{VARIABLE_ISSUE,INIT,REORDER}): Define.
+ (m32r_sched_{variable_issue,init,reorder}): Add declarations.
+
+ * m32r.c (m32r_sched_odd_word_p): New global to keep track of
+ whether we are on an odd word or even word.
+ (m32r_adjust_priority): Optimize slightly.
+ (m32r_sched_init): New function to zero m32r_sched_odd_word_p.
+ (m32r_sched_reorder): New function to reorder the ready list based
+ the instruction sizes. Move long instructions before short ones,
+ except if we are on an odd word boundary.
+ (m32r_sched_variable_issue): New function to keep track of whether
+ we are on an odd byte boundary.
+
+Fri Jun 19 21:33:21 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (whole file): Align \'s to column 72.
+ (*_SPEC): Use EXTRA_SPECS to move cpu dependent stuff down into
+ {ASM,CPP,CC1,LINK,STARTFILE,ENDFILE}_CPU_SPEC.
+ (TARGET_SWITCHES): Add support for new debug switches
+ -missue-rate={1,2} and -mbranch-cost={1,2}. Add
+ SUBTARGET_SWITCHES for cpu dependent switches.
+ (TARGET_OPTIONS): Add support cpu dependent switches.
+ (MULTILIB_DEFAULTS): Ditto.
+ (OVERRIDE_OPTIONS): Ditto.
+ (OPTIMIZATION_OPTIONS): Ditto.
+ ({FIXED,CALL_USED}_REGISTERS): Ditto.
+ (REG_ALLOC_ORDER): Ditto.
+ (CONDITIONAL_REGISTER_USAGE): Ditto.
+ (REG_CLASS_CONTENTS): Ditto.
+ (GPR_P): Ditto.
+ ({,ADDITIONAL_}REGISTER_NAMES): Ditto.
+ (M32R_MODEL_DEFAULT): Wrap inside #ifndef/#endif.
+ (SDATA_DEFAULT_SIZE): Ditto.
+ (IN_RANGE_P): New macro to test if something is in a range of
+ values.
+ (INT8_P): Recode to use IN_RANGE_P.
+ ({,CMP_,U}INT16_P): Ditto.
+ (UPPER16_P): Ditto.
+ (UINT{24,5}_P): Ditto.
+ (INT32_P): Ditto.
+ (INVERTED_SIGNED_8BIT): Ditto.
+ ({ACCUM,CARRY}_P): New macros for accumulator and carry.
+ (BRANCH_COST): Set to 1/2 depending on -mbranch-cost={1,2}.
+ (ENABLE_REGMOVE_PASS): Delete, no longer used.
+ (ASM_OUTPUT_ALIGNED_LOCAL): Ditto.
+ (ISSUE_RATE): Set to 1/2 depending on -missue-rate={1,2}.
+ (DWARF2_DEBUGGING_INFO): Define.
+ (whole file): Group most of the m32rx specific stuff together
+ using the subtarget support. Define the various specs
+ {ASM,CPP,CC1,LINK,STARTFILE,ENDFILE}_CPU_SPEC.
+
+Thu Jun 18 09:03:31 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c ({internal_,}reg_or_eq_int16_operand): New functions to
+ return whether an operand is suitable for == operations.
+ (gen_compare): Remove support for handling S<op> operations, just
+ handle branches.
+
+ * m32r.h (PREDICATE_CODES): Add new predicate functions.
+ ({internal_,}reg_or_eq_int16_operand ): Add declarations.
+ (gen_compare): Remove argument saying to produce S<op> operations
+ instead of a branch.
+
+ * m32r.md (b{eq,ne,lt,le,gt,ge,ltu,leu,gtu,geu}): Update
+ gen_compare calls.
+ (s{eq,ne,lt,le,gt,ge,ltu,leu,gtu,geu}): Recode to present the
+ operation as a distinct RTL until splitting so that the
+ optimization passes generate better code.
+ (abs{df,sf}2): Define, so that we can make fabs(-0.0) return 0.0.
+
+Wed Jun 17 15:12:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * reload1.c (spill_hard_reg): Check mode of register when
+ spilling from scratch_list.
+
+Wed Jun 17 14:55:50 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
+ addressing when one register is the frame pointer or stack
+ pointer. Disallow REG+CONST addressing in HI mode.
+
+ * config/arm/arm.h (CANONICALIZE_COMPARISON): Preserve OP1.
+
+Tue Jun 16 20:50:37 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (m32r_adjust_{cost,priority}): New functions to adjust
+ scheduler cost and priority information.
+ (direct_return): Don't test -mdebug any more.
+
+ * m32r.h (m32r_adjust_{cost,priority}): Declare.
+ (m32r_address_cost): Correctly spell function in prototype.
+ (ADJUST_{COST,PRIORITY}): Define to call the appropriate function.
+
+Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cpplib.h (__GCC_CPPLIB__): Add header guard.
+ * cpplib.c (open_include_file_name): New function.
+ (open_include_file): Call open_include_file_name instead of open.
+Fri Jun 12 00:03:23 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (OPTIMIZATION_OPTIONS): Turn on -fregmove if -O1. If
+ -Os, turn on -fomit-frame-pointer and -fno-strength-reduce.
+ (CAN_DEBUG_WITHOUT_FP): No longer define, so we don't confuse the
+ debugger.
+ (TARGET_FLAGS): Remove -mold-compare support.
+
+ * m32r.c (gen_compare): Rewrite to be more general. Take an
+ extra argument to give the output register for scc operations or
+ the label to jump to for bcc operations. Fix typo for LEU & GTU
+ of constants.
+ (internal_reg_or_{cmp_int16,uint16}_operand): Same as the function
+ without the internal_ prefix, except mode argument is an enum.
+ (internal_reg_or_zero_operand): Ditto.
+
+ * m32r.h (gen_compare): Add new argument to prototype.
+ (PRESERVE_DEATH_INFO_REGNO_P): Delete, no longer needed after
+ June 11 regmove.c change.
+
+ * m32r.md (cmp_eqsi_insn): Make a define_expand instead of a
+ define_insn.
+ (cmp_ne_small_const_insn): Delete, no longer used.
+ (b{eq,ne,lt,le,gt,ge,ltu,leu,gtu,geu}): Rework for gen_compare
+ changes.
+ (s{eq,ne,lt,le,gt,ge,ltu,leu,gtu,geu}): Define patterns.
+ (movsicc): Delete, no longer used.
+ (peephole): Delete, no longer needed after June 11 regmove.c
+ change.
+
+Tue Jun 9 21:05:45 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (override_options): Handle -mschedule=8000.
+ (pa_reorg): Do not try to combine independent instructions into
+ a single instruction for the PA8000.
+ * pa.h (processor_type): Add PROCESSOR_8000.
+ * pa.md: Add "8000" cpu attribute. Treat the PA8000 like the
+ PA7100 temporarily.
+
+Tue Jun 9 14:13:37 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/t-v850 (TCFLAGS): Add assembler options to catch
+ signed and unsigned overflows.
+
+ * config/v850/lib1funcs.asm (__callt_save_interrupt): Use 'addi
+ 16,sp,sp' instead of 'add 16,sp'. Patch cpurtesy of: Biomedin
+ <glctr@abc.it>
+
+Thu Jun 4 15:14:04 1998 Michael Meissner <meissner@cygnus.com>
+
+ * jump.c (duplicate_loop_exit_test): Remove May 19th code not
+ duplicating the loop exit test at the bottom, but keep the part
+ about testing LOOP_TEST_THRESHOLD.
+
+ * m32r.h (LOOP_TEST_THRESHOLD): If -Os, use 2 instead of 30.
+ (PREDICATE_CODES): Add extend_operand.
+ (extend_operand): Declare.
+
+ * m32r.c (extend_operand): New function to return true if an
+ operand can be used in a sign/zero_extend operation.
+
+ * m32r.md (zero_extend*): Use extend_operand.
+ (sign_extend{qisi,qihi,hisi}2): Rewrite so sign_extend is
+ available until after reload is done.
+
+Tue Jun 2 00:54:38 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (rest_of_compilation): Only perform block merging for
+ -O2 and above.
+
+Mon Jun 1 03:44:03 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/sh/sh.h (MAX_OFILE_ALIGNMENT): Define.
+
+ * varasm.c (assemble_variable): Augment alignment warning.
+
+Sun May 31 01:02:05 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcc.c (process_command): Use concat instead of effectively
+ open-coding it.
+
+Sun May 31 10:37:49 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (gen_compare): Fix last change to swap GT/GTU/LE/LEU
+ arguments if both are registers. Don't convert GTU/LEU of a
+ negative value into GEU/LTU.
+
+Fri May 29 14:31:39 1998 Ken Raeburn <raeburn@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ (mulsi_r5400, macc_r5400): Delete patterns.
+ (muls_r5400, msac_r5400, muls_r5400_di): Rewrite.
+ (macc_r5400_di, msac_r5400_di): Likewise.
+ (xmulsi3_highpart_5400): Likewise.
+ (xmulsi3_neg_highpart_5400): Likewise.
+
+Fri May 29 13:36:17 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (gen_compare): Cmpui takes a signed 16 bit value, not
+ unsigned.
+ * m32r.md (cmp_ltusi_insn): Ditto.
+
+ * m32r.c (gen_compare): If the first compare value is not a
+ register, force it into a register. If the second compare value
+ is not a register or a constant integer, force it into a
+ register.
+
+ * m32r.md (cmpsi): Only allow registers or signed 16 bit values
+ for the second argument.
+
+Thu May 28 13:20:25 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (pre_delete): Fix code to determine the mode of
+ the reaching pseudo register.
+ (hoist_code): Likewise.
+
+ * Simple block merging optimization pass.
+ * flow.c (merge_blocks): New function.
+ * toplev.c (rest_of_compilation): Call merge_blocks after each
+ jump optimization pass, except for the last one.
+
+Thu May 28 13:47:18 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (gen_compare): Convert LE/LEU/GT/GTU of a constant into
+ LT/LTU/GE/GEU with the constant+1.
+
+Wed May 27 09:04:36 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
+
+Tue May 26 20:38:27 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * config/sparc/sp86x-elf.h (TARGET_LITTLE_ENDIAN_DATA): New.
+ (INIT_SECTION_ASM_OP): Undef so __main constructor invocation is used.
+
+Tue May 26 14:48:50 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c (v850_output_aligned_bss): use
+ ASM_DECALRE_OBJECT_NAME if it is available.
+
+Tue May 26 09:28:07 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/sparc/lb1spc.asm (.urem, .rem) Replace routines.
+
+Fri May 22 23:46:37 1998 Jim Wilson <wilson@cygnus.com>
+
+ * gcc.c (make_relative_prefix): Call obstack_1grow with '\0'.
+
+Thu May 21 14:37:15 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/README-interworking: Add note about ignoring linker
+ warning message when --support-old-code is used.
+
+Tue May 19 18:28:47 1998 Jim Wilson <wilson@cygnus.com>
+
+ * config/generic/xm-generic (NO_STAB_H): Delete reference.
+ * config/d30v/xm-d30v.h (NO_STAB_H): Delete reference.
+
+Tue May 19 15:38:48 1998 Michael Meissner <meissner@cygnus.com>
+
+ * stmt.c (expand_end_loop): Instead of using a hard-coded 30 for
+ the number of insns, use LOOP_TEST_THRESHOLD.
+
+ * jump.c (duplicate_loop_exit_test): Use LOOP_TEST_THRESHOLD for
+ decided how many instructions to duplicate. If optimizing for
+ space, don't duplicate the loop exit test at the top.
+
+ * expr.h (LOOP_TEST_THRESHOLD): Define if not defined.
+
+ * tm.texi (LOOP_TEST_THRESHOLD): Document.
+
+Tue May 19 10:27:15 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (compute_preds_succs): Do not split more than one edge
+ into any basic block.
+
+Mon May 18 15:28:26 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/lib1funcs.asm: Add .text pseudo op to start of
+ ___udivsi3.
+
+ * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
+ underscores for the prefixes to the names of the maths functions.
+
+ * dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE for
+ parameters passed in memory. Add a comment explaining why.
+
+Mon May 18 00:21:53 1998 Jeffrey A Law (law@cygnus.com)
+
+ * c-lex.c (check_newline): Remove old CYGNUS LOCAL code that
+ is no longer needed.
+
+Sun May 17 20:57:01 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (PREDICATE_CODES): Add seth_add3_operand, int8_operand,
+ and uint16_operand.
+ (int8_operand): Add declaration.
+
+ * m32r.c (int8_operand): Return true if value is a signed 8 bit
+ constant int.
+ (m32r_expand_prologue): Remove duplicate setting of gmask.
+ (direct_return): Return true if we have no stack to allow jmp lr
+ to be used as a return.
+
+ * m32r.md ({and,ior,xor}si3): If -Os and we have a 8 bit immediate
+ constant and different registers, emit two short instructions
+ instead of a long instruction. Also don't accept integer
+ arguments greater than 16 bits initially, to give those values a
+ chance at CSE.
+ (return): Add return pattern.
+
+Fri May 15 19:30:29 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.md (mov{si,sf}_insn): Correct attributes for load/store
+ with inc/dec.
+
+Fri May 15 14:55:45 1998 Nick Clifton <nickc@cygnus.com>
+
+ * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
+ function parameter passed in memory.
+
+Thu May 14 14:37:26 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/README-interworking: Document dlltool support for
+ interworking.
+
+ * config/arm/lib1thumb.asm: Add labels to help disassembler
+ distinguish between ARM and Thumb code.
+ Fix _interwork_call_via_ip.
+ * config/arm/lib1funcs.asm: Ditto.
+
+Thu May 14 13:27:07 1998 Jim Wilson <wilson@cygnus.com>
+
+ * global.c (undo_live_range): Use PUT_REG_NOTE_KIND instead of
+ REG_NOTE_KIND.
+
+Wed May 13 22:45:53 1998 Michael Meissner <meissner@cygnus.com>
+ Jeff Law <law@cygnus.com.
+
+ * Makefile.in (OBJS): Add range.o
+ (clean rules): Delete *.range.
+ (toplev.o): Depend on range.h.
+ (dbxout.o, global.o): Likewise.
+ (final.o): Depend on bitmap.h, range.h, except.h, and function.h.
+ (range.o): Add dependencies.
+ * range.c, range.h: New files.
+ * dbxout.c: Include "range.h".
+ (range_current, range_max_number_for_parms): New static variables.
+ (range_max_number): New global variable.
+ (dbxout_symbol_name): New argument "live_range_p". All callers
+ changed.
+ (dbxout_live_range_alias): New function.
+ (dbxout_live_range_parms): Likewise.
+ (dbxout_symbol_location): Call dbxout_live_range_alias.
+ (dbxout_symbol_name): If live_range_p, then output LRS
+ debug symbol extensions.
+ (dbxout_parms): Handle LRS optimizations.
+ (dbxout_really_begin_function): Keep track of range_max_number at
+ function entry (so we can properly output ranges for parameters).
+ (dbxout_function): Call dbxout_live_range_parms.
+ * final.c: Include "function.h", "range.h", "bitmap.h" and "obstack.h".
+ (block_nodes): New global.
+ (rtl_obstack, range_max_number): Declare.
+ (struct block_seq): New structure for blocks.
+ (pending_blocks): Now a struct block_seq *.
+ (init_final): Fix allocation of pending_blocks.
+ (final): Call identify_blocks to get the block nodes for the current
+ function. When finished, free space allocated for block_nodes.
+ (final_scan_insn): Handle LRS notes. Various fixes for change in
+ pending_blocks structure.
+ * flags.h (flag_live_range): Declare new variable.
+ (flag_live_range_gdb, flag_live_range_scope): Likewise.
+ * function.c (reorder_blocks): Revamp to track blocks created by LRS
+ optimizations.
+ * global.c: Inlcude obstack.h and range.h.
+ (global_obstack): New obstack for use in global allocation.
+ (reg_live_ranges, save_reg_renumber): New static variables.
+ (CLEAR_CONFLICT): Define.
+ (record_conflits): Now accepts int* as first argument. All callers
+ changed.
+ (undo_live_range, global_init): New functions.
+ (global_alloc): Split into two functions, global_init and global_alloc.
+ Try to allocate LRS copies first, then fall back to normal allocation
+ order. If some LRS copies did not get hard regs, then undo some live
+ ranges. Free the global_obstack when finished.
+ (global_init): Allow multiple calls. Only allocate space on the first
+ call. Allocate stuff on the global obstack instead of with alloca.
+ (allocno_compare): Handle LRS copies.
+ (global_conflicts): block_start_allocnos is an int * now. Allocate
+ space on the global obstack. Remove conflicts between LRS copies from
+ LRS base registers.
+ (find_reg): For an LRS copy, try to allocate it in the same reg as
+ another LRS copy.
+ * output.h: Declare block_nodes.
+ * regclass.c ({pref,alt}class_buffer): New statics to hold buffers
+ allocate_reg_info allocates for {pref,alt}class_buffer.
+ (regclass): Use {pref,alt}class_buffer to initialize
+ {pref,alt}class.
+ (allocate_reg_info): Allocate buffers for the preferred and alter
+ register class information.
+ * regs.h (struct reg_n_info): Add fields for LRS info.
+ (REG_N_RANGE_CANDIDATE, REG_N_RANGE_COPY_P): New accessor macros.
+ * toplev.c: Include range.h.
+ (live_range_dump, flag_live_range): New variables.
+ (flag_live_range_gdb, flag_live_range_scope): Likewise.
+ (live_range_time): Likewise.
+ (f_options): Add LRS options.
+ (compile_file): Call init_live_range. Clean the .range dump file
+ if necessary. Print time spent in LRS.
+ (rest_of_compilation): Optimize live ranges if requested. Free basic
+ block info and regsets when finished with the current function. Also
+ call init_live_range to reinitialize LRS.
+ (main): Perform LRS dumps is requested.
+
+Tue May 12 23:23:25 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (move_src_operand): Reject loads with PRE_INC or PRE_DEC.
+ (move_dest_operand): Reject stores with POST_INC.
+ (m32r_print_operand): Change abort calls into fatal_insn calls.
+ (m32r_print_operand_address): Ditto.
+
+ * m32r.h (EXTRA_CONSTRAINT): 'S' is now for stores with PRE_INC or
+ PRE_DEC. 'U' is now for loads with POST_INC.
+ (HAVE_PRE_{INC,DEC}REMENT): Define.
+ (HAVE_POST_INCREMENT): Ditto.
+ (PUSH_POP_P): Delete, no longer used.
+ (LOAD_POSTINC_P): Recognize loads with POST_INC.
+ (STORE_PREINC_PREDEC_P): Recognize stores with PRE_{INC,DEC}.
+ (GO_IF_LEGITIMATE_ADDRESS): Recognize loads with POST_INC, and
+ stores with PRE_{INC,DEC}.
+
+ * m32r.md (movsi_insn): Separate loads with POST_INC from stores
+ with PRE_{DEC,INC}. Emit push/pop if pushing/poping stack
+ pointer.
+ (movsf_insn): Allow memory loads to have POST_INC, and stores to
+ have PRE_{DEC,INC}.
+
+Mon May 11 11:34:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * egcs -> gcc merge. See ChangeLog.egcs & ChangeLog.12 for
+ details.
+
+ * lcm.c (compute_latein, compute_firstin): Fix thinko.
+
+Mon May 11 07:33:27 1998 Michael Meissner <meissner@cygnus.com>
+
+ * lcm.c (compute_latein): Fix typo.
+
+Mon May 11 02:36:22 1998 Jeffrey A Law (law@cygnus.com)
+
+ * lcm.c (compute_latein): Avoid mis-compiling latein for the
+ last block.
+ (compute_firstout): Similarly, but for the first block.
+ (compute_isoinout): Solve as a backward dataflow problem.
+ (compute_rev_isoinout): Simlarly, but solve as a forward problem.
+
+Sun May 10 11:03:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (compute_hash_table): Delete unused "f" parameter.
+ (compute_set_hash_table, compute_expr_hash_table): Likewise.
+ (one_classic_gcse_pass, one_cprop_pass): Likewise.
+ (one_pre_gcse_pass, one_code_hoisting_pass): Likewise.
+ (hoist_code): Remove unused variable "changed".
+ (insert_insn_end_bb): Wrap "note" parameter inside #ifdef HAVE_cc0.
+ (mark_call): Remove unused "pat" parameter.
+
+ * lcm.c (compute*): Remove either s_preds or s_succs, whichever
+ is unused. All callers changed.
+ (compute_rev_redundant, compute_rev_optimal): Delete unused functions.
+ (pre_lcm, pre_rev_lcm): Delete unused parameter "comp".
+ * basic-block.h (pre_lcm, pre_rev_lcm): Update declarations.
+ * gcse.c (compute_pre_data): Corresponding changes.
+
+Thu May 7 16:20:59 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
+ ASM_OUTPUT_WEAK_ALIAS): Define.
+ * config/mips/elf64.h: Same.
+ * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
+ ASM_WEAKEN_LABEL): Removed.
+
+Tue May 5 14:28:53 1998 Jim Wilson <wilson@cygnus.com>
+
+ * elfb4100.h, elfb4300.h, elfb4320.h, elfb4900.h, elfb5000.h,
+ elfl4100.h, elfl4300.h, elfl4320.h, elfl4900.h, elfl5000.h
+ (MULTILIB_DEFAULTS): Move definition after elf64.h include.
+
+Mon May 4 09:00:56 1998 Jeffrey A Law (law@cygnus.com)
+
+ * lcm.c: New file with generic partial redundancy elimination
+ and lazy code motion support.
+ * Makefile.in: Corresponding changes.
+ * basic-block.h (pre_lcm): Declare.
+ (pre_rev_lcm): Likewise.
+ * gcse.c: Remove various static variables no longer needed.
+ (alloc_pre_mem): Only allocate space for local properties, redundant,
+ optimal and a scratch bitmap.
+ (free_pre_mem): Simlarly.
+ (compute_pre_antinout): Deleted.
+ (compute_pre_earlyinout, compute_pre_delayinout): Likewise.
+ (compute_pre_latein, compute_pre_isoinout): Likewise.
+ (compute_pre_optimal, compute_pre_redundant): Likewise.
+ (compute_pre_data): Call pre_lcm.
+
+Thu Apr 30 16:07:02 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.h (ASM_OUTPUT_ALIGNED_BSS): Call v850_output_aligned_bss().
+ * config/v850/v850.c (v850_output_aligned_bss): New
+ function. Preserve alignment information when emitting symbols
+ into the bss section.
+ (v850_output_bss): Function removed.
+
+Wed Apr 29 16:18:40 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (ASM_OUTPUT_SOURCE_LINE): Use .debugsym instead of
+ creating a label if -Os to prevent extra NOPs.
+
+Tue Apr 28 11:10:10 1998 Mark Alexander <marka@cygnus.com>
+
+ * config/sparc/t-sp86x (MULTILIB_OPTIONS): Remove big-endian.
+ (MULTILIB_DIRNAMES): Add "little" for brevity.
+
+Mon Apr 27 17:07:09 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Use
+ frame_pointer_rtx rather than FRAME_POINTER_REGNUM.
+
+Sun Apr 26 17:04:11 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (conditional_move_operand): Silence a debug message.
+
+Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
+ pointer as second register in REG+REG pair.
+
+Thu Apr 23 12:13:36 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c (expand_prologue): Only generate callt using
+ insns if TARGET_DISABLE_CALLT is not defined.
+
+Wed Apr 22 17:53:04 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * sparc.c (sparc_override_options): New option name -mcpu=sparclite86x.
+
+Wed Apr 22 17:23:07 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (TARGET_M32R): New macro.
+ (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
+
+ * m32r.c ({small,long}_insn): New predicates.
+
+ * m32r.md (insn_size): New attribute.
+ ({,rev_}branch_insn): Add .s qualifier to branches believed to be
+ short.
+ (m32r): New attribute.
+ (small_sequence,long_group): Add initial framework for instruction
+ grouping.
+
+ * m32r.h (ASM_SPEC): Add -O to the assembler arguments if we are
+ compiling for the m32rx and optimizing.
+
+ * m32r.md (m32rx{,_pipeline}): New attributes.
+ (small_parallel): Add initial framework for instruction grouping.
+
+ * rtl.def (GROUP_{PARALLEL,SEQUENCE}: Add new insns.
+
+Mon Apr 20 13:31:17 1998 Dave Brolley <brolley@cygnus.com>
+
+ * stmt.c (mark_seen_cases): Needs to be external linkage for Chill.
+
+Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
+
+ * i386.c: Include expr.h to get the change_address prototype
+ declared.
+
+Sat Apr 18 23:37:59 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * configure.in: Added sparc86x.
+ * configure: Regenerate.
+
+ * sparc.h (TARGET_CPU_{hypersparc,sparc86x},
+ PROCESSOR_{HYPERSPARC,SPARC86X}): Added for sparc86x/hypersparc.
+ (ADJUST_COST): Call hypersparc_adjust_cost.
+
+ * sparc.c (hypersparc_adjust_cost): Added for sparc86x/hypersparc.
+
+ * sparc.md (define_function_unit): Added for sparc86x/hypersparc.
+ (define_attr "cpu"): Added hypersparc/sparc86x.
+
+ * (t-sp86x, sp86x-elf.h, sp86x-aout.h: Added for sparc86x.
+
+Thu Apr 16 22:38:23 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (dump_sbitmap, dump_sbitmap_vector): Move these into
+ flow.c.
+
+Tue Apr 14 14:10:43 1998 Dave Brolley <brolley@cygnus.com>
+
+ * toplev.c: Call init_parse using new interface.
+
+ * c-lex.c (init_parse): Now returns char* containing the filename.
+Mon Apr 13 11:31:29 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.h (HAIFA_P): Define as 1/0 depending on whether the Haifa
+ scheduler was selected.
+ (ISSUE_RATE): Define as 2.
+
+ * configure.in (enable_haifa): Switch m32r to Haifa by default.
+ * configure: Regenerate.
+
+Sun Apr 12 13:35:49 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (gcse_main): Run code hoisting if optimizing for
+ code space.
+
+1998-04-10 Ken Raeburn <raeburn@cygnus.com>
+
+ * config/arm/thumb.h, config/d10v/d10v.h,
+ config/generic/generic.h, config/z8k/z8k.h (MEMORY_MOVE_COST):
+ Updated to show extra args, currently ignored. See my 16-Mar
+ change.
+ * config/d30v/d30v.h (MEMORY_MOVE_COST): Likewise.
+
+Fri Apr 10 15:38:21 1998 Jim Wilson <wilson@cygnus.com>
+
+ * config/i386/i386elf.h (ENDFILE_SPEC, STARTFILE_SPEC): Delete.
+ * configure.in (i[34567]86-*-elf*): Add ${xm_file} and xm-svr4.h to
+ xm_file list.
+
+Fri Apr 10 10:42:42 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add trailing newline.
+
+ * rtl.c (read_skip_spaces): Prevent infinite loops upon
+ encountering unterminated comments.
+
+ * config/arm/aout.c: Add CYGNUS LOCAL markers.
+ * config/arm/riscix.h: Add CYGNUS LOCAL markers.
+ * config/arm/riscix1-1.h: Add CYGNUS LOCAL markers.
+ * config/arm/semiaof.h: Add CYGNUS LOCAL markers.
+ * config/arm/t-linux: Add CYGNUS LOCAL markers.
+ * config/arm/thumb.h: Remove CYGNUS LOCAL markers.
+ * config/arm/thumb.c: Remove CYGNUS LOCAL markers.
+
+Thu Apr 9 16:26:53 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add CYGNUS LOCAL markers.
+ * config/m32r/m32r.c: Add CYGNUS LOCAL markers.
+ * config/m32r/m32r.h: Add CYGNUS LOCAL markers.
+ * config/m32r/t-m32r: Add CYGNUS LOCAL markers.
+
+ * config/arm/README-interworking: Added note about DLLs not
+ working.
+
+ * config/arm/arm.c: Add CYGNUS LOCAL markers.
+ * config/arm/arm.h: Add CYGNUS LOCAL markers.
+ * config/arm/arm.md: Add CYGNUS LOCAL markers.
+ * config/arm/coff.h: Add CYGNUS LOCAL markers.
+ * config/arm/semi.h: Add CYGNUS LOCAL markers.
+ * config/arm/t-bare: Add CYGNUS LOCAL markers.
+ * config/arm/lib1funcs.asm: Add CYGNUS LOCAL markers.
+
+Thu Apr 9 12:57:05 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
+ * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
+ COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
+ (build_expr_wfl): New prototype declaration.
+ * tree.c (build_expr_wfl): New function, to build
+ EXPR_WITH_FILE_LOCATION nodes.
+ (copy_node): Don't zero TREE_CHAIN if copying a
+ EXPR_WITH_FILE_LOCATION node.
+ * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
+ * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
+
+Thu Apr 9 12:14:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (loop_optimize): Call init_alias_analysis immediately after
+ reg_scan.
+
+ * configure.in: Kill mpw.
+ * config.sub: Likewise.
+
+Wed Apr 8 15:08:57 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in m68010-adobe-scout): Delete obsolete local config.
+ (m68k-apollo-sysv, m68k-tandem-*, m68*-netx,vxworks*): Likewise.
+ (mips-ncd-elf*, powerpc-*-netware*): Likewise.
+ * config.sub: Kill "scout" references.
+
+ * configure.in: Completely disable objc unless --enable-objc is
+ specified at configure time.
+ * objc/Make-lang.in: Remove CYGNUS LOCAL hack.
+
+ * configure.in: Reorganize local configurations to make
+ merging with egcs easier.
+
+ * gcc.c (process_command): putenv only takes a single argument.
+
+ * gcse.c: Include "system.h".
+ * Makefile.in (gcse.o): Add missing dependencies.
+
+Mon Apr 6 11:29:34 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (pre_expr_reaches_here): First argument is the starting
+ basic block; add new arg check_pre_comp. All callers changed.
+ If !check_pre_comp, then do not require the expression to be set
+ in the starting basic block.
+ (pre_insert): Do not insert an expression if it does not reach
+ any deleted occurences of the expression.
+
+Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
+
+ * combine.c (can_combine_p): Include successor in volatile test.
+
+Fri Apr 3 15:59:35 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (run_jump_opt_after_gcse): Renamed from gcse_jumps_altered.
+ All references changed.
+ (gcse_main): If we split any edges, then run jump optimizations
+ after gcse.
+
+Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h: Add super interworking support.
+ * config/arm/thumb.c: Add super interworking support.
+ * config/arm/thumb.md: Add super interworking support.
+ * config/arm/tpe.h: Add super interworking support.
+ * config/arm/lib1funcs.asm: Add interworking support.
+ * config/arm/lib1thumb.asm: Add super interworking support.
+ * config/arm/t-pe: Add super interworking support.
+ * config/arm/t-semi: Add interworking support.
+ * config/arm/t-thumb: Add interworking support.
+ * config/arm/t-pe-thumb: Add super interworking support.
+ * config/arm/README-interworking: New file.
+
+Mon Mar 30 09:22:16 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (rotrsi3): Use GEN_INT instead of gen_rtx (CONST_INT).
+ (rotrdi3): Likewise.
+
+Mon Mar 30 12:27:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * invoke.texi (ARM Options): Removed spurious @end table marker.
+
+ * config/m32r/m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint
+ to perfoirm the equivalent of a negated 'I' constraint.
+
+ * config/m32r/m32r.md (cmp_ne_small_const_insn): Use 'S'
+ constriant rather than 'I' since the value is negated.
+
+Sat Mar 28 13:03:22 1998 Nick Clifton <nickc@cygnus.com>
+
+ * invoke.texi: Document more ARM and Thumb options.
+
+Fri Mar 27 16:15:29 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (make_relative_prefix): If argv[0] does not contain a
+ directory separator, look up the name in the PATH environment
+ variable.
+
+Wed Mar 25 13:50:16 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cccp.c: Restore chill support.
+
+Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
+
+ * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
+
+ * collect2.c (find_a_file): Add debugging.
+ (find_a_file): Test for win32 style absolute paths if
+ DIR_SERPARATOR is defined.
+ (prefix_from_string): Add debugging.
+ (main): Test for debug command line switch at start of program
+ execution.
+ (main): Use GET_ENVIRONMENT rather than getenv().
+
+Sun Mar 22 16:15:45 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/tpe.h (ASM_DECLARE_FUNCTION_NAME): Include
+ .thumb_func directive in function header.
+
+Fri Mar 20 09:32:46 1998 Nick Clifton <nickc@cygnus.com>
+
+ * objc/Make-lang.in: Apply patch from Geoff Noer (noer@cygnus.com)
+ to allow cygwin32 native toolchain builds via canadian crosses.
+
+ * objc/Makefile.in: Apply patch from Geoff Noer (noer@cygnus.com)
+ to allow cygwin32 native toolchain builds via canadian crosses.
+
+ * Makefile.in: Apply patch from Geoff Noer (noer@cygnus.com) to
+ allow cygwin32 native toolchain builds via canadian crosses.
+
+ * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
+
+Fri Mar 20 09:27:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (CPP_SPEC): Finish last change.
+
+Thu Mar 19 22:33:35 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (hppa1.1-hp-hpux11): Use pa-hpux11.h
+ (hppa1.0-hp-hpux11): Likewise.
+ * pa/pa-hpux11.h: New file.
+
+ * pa.h (CPP_SPEC): If !ansi, then define __STDC_EXT__.
+
+Thu Mar 19 13:45:28 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/i386/xm-cygwin32.h (GET_ENVIRONMENT): Patch resubmitted,
+ since it appears to have been lost in the shuffle....
+
+ * config/arm/thumb.c (arm_valid_machine_decl_attribute): Copied
+ from arm.c for thumb-pe builds.
+
+ * config/arm/t-pe-thumb: New file: makefile fragement for thumb-pe
+ build.
+
+ * config/arm/tpe.h: New file: PE support for thumb-pe build.
+
+Thu Mar 19 09:14:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Handle hpux11 just like hpux10 for now.
+
+Wed Mar 18 11:21:16 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/i386/xm-cygwin32.h (GET_ENVIRONMENT): Do not call
+ cygwin32_posix_path_list_p with a NULL or empty path.
+
+Wed Mar 18 09:33:13 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.c (arm_valid_machine_decl_attribute): New
+ function for thumb-pe support.
+
+ * configure.in: Add thumb-pe target.
+
+ * configure: Add thumb-pe target.
+
+ * config.sub (maybe_os): Add thumb-pe target.
+
+Mon Mar 16 16:24:45 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (make_relative_prefix): If directory is the same as
+ expected, or there are no directory separators, don't create a
+ relative pathname.
+
+Fri Mar 13 17:55:04 1998 Michael Meissner <meissner@cygnus.com>
+
+ * i386/cygwin32.h (GET_ENVIRONMENT): Delete from here.
+ * i386/xm-cygwin32.h (GET_ENVIRONMENT): Move to here.
+ Initialize variable if not a posix style pathname.
+
+Fri Mar 13 17:54:04 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (DIR_UP): If not defined, define as "..".
+ (standard_bindir_prefix): New static, holds target location to
+ install binaries.
+ (split_directories): New function to split a filename into
+ component directories.
+ (free_split_directories): New function, release memory allocated
+ by split_directories.
+ (make_relative_prefix): New function, make a relative pathname if
+ the compiler is not in the expected location.
+ (process_command): Use GET_ENVIRONMENT to read GCC_EXEC_PREFIX.
+ If GCC_EXEC_PREFIX was not specified, see if we can figure out an
+ appropriate prefix from argv[0].
+
+ * Makefile.in (gcc.o): Define STANDARD_BINDIR_PREFIX.
+
+Fri Mar 13 11:49:49 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * config/i386/cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
+ style environment paths.
+
+Thu Mar 12 16:22:03 1998 Stan Cox <scox@cygnus.com>
+
+ * sparc/liteelf.h (MULDI3,DIVDI3,UDIVDI3,MODDI3,UMODDI3)_LIBCALL:
+ Undefine solaris library routines.
+
+Thu Mar 12 13:21:38 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md (movsi, movhi, movhi_insn_arch4,
+ movho_insn_littleend, movhi_insn_bigend): Use
+ ok_integer_or_other().
+ (movhi_insn_arch4): Swap order of 2nd and 3rd alternatives to
+ avoid problem in reload.
+
+ * config/arm/arm.c: (find_barrier_insn): Return barrier insn, if
+ found, rather than insn after the barrier.
+ (ok_integer_of_other): New function, to avoid duplication in md
+ file.
+
+ * config/arm/arm.h: Add prototype for ok_integer_or_other().
+
+Wed Mar 11 14:28:30 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (compile_file): Print out gcse time.
+
+ * toplev.c (rest_of_compilation): Only rerun jump optimizations
+ after gcse if gcse changes some jumps.
+
+Wed Mar 11 15:21:52 1998 Michael Meissner <meissner@cygnus.com>
+
+ * haifa-sched.c (schedule_insns): Remove debug statement.
+
+Wed Mar 11 15:44:54 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.h (MASK_DEBUG_E): Redefine to zero.
+
+Tue Mar 10 12:20:57 1998 Stan Cox <scox@rtl.cygnus.com>
+
+ * sparc/liteelf.h (PREFERRED_DEBUGGING_TYPE): Make dwarf2
+ the default debugging type.
+
+Mon Mar 9 16:29:34 1998 Michael Meissner <meissner@cygnus.com>
+
+ * expr.c (expand_builtin): Add __builtin_expect code back in.
+ * rs6000.c (ccr_bit,print_operand): Ditto.
+
+Mon Mar 9 14:24:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * t-sh (MULTILIB_OPTIONS): Add m4-single-only.
+ (MULTILIB_MATCHES): Remove m3e=m4-single-only.
+
+Sun Mar 8 23:46:29 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * configure, configure.in (sparclite-*-elf*): Added.
+ * sparc/liteelf.h: New file.
+
+Sat Mar 7 13:59:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.h, generic.h (LOOP_ALIGN): Fix comment delimiter.
+
+Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.h, generic.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
+ * arm/thumb.h, i386/i386elf.h, m68k/st2000.h, z8k.h: Likewise.
+ * d30v.h: Likewise.
+
+Fri Mar 6 11:35:50 1998 Dave Brolley <brolley@cygnus.com>
+
+ * gcse.c (hoist_code): Should return void.
+
+Thu Mar 5 23:45:08 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c: Bring back old classic gcse pass.
+ (gcse_main): If optimizing for code size perform classic gcse
+ instead of partial redundancy elimination.
+
+Thu Mar 5 09:09:08 1998 Catherine Moore <clm@cygnus.com>
+ * config/v850/v850.h: Add option -mdisable-callt.
+ * config/v850/v850.md: Don't generate callt instructions if
+ -mdisable-callt has been specified.
+
+Thu Mar 5 09:09:08 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/v850/lib1funcs.asm (___udivsi3): Don't use r5.
+ * config/v850/t-v850: Add -mno-app-regs to target build flags.
+ * config/v850/v850.h: Change STATIC_CHAIN_REGNUM from 5 to 20.
+ Add option -mno-app-regs. Add CONDITIONAL_REGISTER_USAGE macro.
+
+Thu Mar 5 14:39:45 1998 Fred Fish <fnf@cygnus.com>
+
+ * config/d30v/d30v.h: Fix prematurely terminated comment.
+
+Tue Mar 3 09:12:04 1998 Nick Clifton <nickc@cygnus.com>
+
+ * toplev.c: Do not generate a <name>.dbr file when dumping RTL
+ unless DELAY_SLOTS is defined.
+
+Mon Mar 2 20:06:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * generic.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
+ replace with:
+ (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
+ * d10v.h: Likewise.
+ * d30v.h: Likewise.
+
+Wed Feb 25 10:02:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md (movsfcc, movdfcc): Cope with constants that
+ cannot be placed into instructions. Patch supplied by Richard
+ Earnshaw.
+
+Sun Feb 22 22:05:33 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Use lazy code motion to drive placement partially redundant
+ expressions and register copies.
+ * First implementation of code hoisting pass. Currently
+ disabled due to code expansion.
+ * gcse.c: (compute_{cprop,pre}_local_properties): Combined into a
+ single function. Accepts additional arguments as needed. All
+ references updated.
+ (cprop_insn, cprop, one_cprop_pass): New arg to determine if jumps
+ can/should be altered. All references changed appropriately.
+ (insert_insn_end_bb): Renamed from pre_insert_insn.
+ (alloc_code_hoist_mem): New function for code hoisting.
+ (free_code_hoist_mem, compute_code_hoist_vbeinout): Likewise.
+ (compute_code_hoist_data, hoist_expr_reaches_here_p): Likewise.
+ (hoist_code, one_code_hoisting_pass): Likewise.
+ (gcse_main): Put check for setjmp at start of gcse_main and
+ generally clean up initialization. Do not allow cprop to
+ alter jumps until the last pass. Add appropriate calls to
+ code hoisting support (currently #ifdef'd out).
+ (compute_local_properties): New function for computing local
+ properties for pre, cprop and code hoisting.
+ (cprop_insn): Only cprop into jumps if alter_jumps is nonzero.
+ (pre_av{invout}, pre_pav{in,out}, pre_pp{in,out}): Delete old pre
+ variables.
+ (pre_early{in,out}, pre_delay{in,out}, pre_latein): New variables
+ for lazy code motion.
+ (pre_iso{in,out}, pre_optimal, pre_redundant, temp_bitmap): Likewise.
+ (pre_reundant_insns): Likewise.
+ (alloc_pre_mem, free_pre_mem): Updated for changes in pre variables.
+ (compute_pre_data): Likewise.
+ (compute_pre_avinout, compute_pre_ppinout): Deleted.
+ (compute_pre_earlyinout): New function for lazy code motion.
+ (compute_pre_delayinout, compute_pre_latein): Likewise.
+ (compute_pre_isoinout, compute_pre_optimal): Likewise.
+ (compute_pre_redundant): Likewise.
+ (pre_insert): Rework to only insert expressions at optimal
+ computation points as determined by lazy code motion.
+ (pre_insert_copies): Rework to only copy expressions where
+ necessary for lazy code motion.
+ (pre_delete): Rework to delete insns which are redundant at
+ not optimally placed.
+ (hoist_antloc, hoist_transp, hoist_comp): Variables for code hoisting.
+ (hoist_vbe{in,out}, hoist_exprs): Likewise.
+ (dominators, post_dominators): Likewise.
+
+Fri Feb 20 15:42:56 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/t-vr4100 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
+ Add mno-mips16 and mips16.
+ * mips/elfb4100.h, mips/elfl4100.h (MULTILIB_DEFAULTS) :
+ Add "mno-mips16".
+
+Fri Feb 13 14:55:13 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add peephole optimisation to cope with
+ PR14189, pending a better solution.
+
+ * config/m32r/m32r.h (PRESERVE_DEATH_INFO_REGNO_P): Define in
+ order to allow peephole optimisation to work.
+
+Fri Feb 13 02:57:19 1998 J"orn Rennecke <amylaar@cygnus.com>
+
+ * d10v.h (DEFAULT_PCC_STRUCT_RETURN) Define as 0.
+
+Wed Feb 11 09:07:22 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.h (ASM_SPEC): Pass on
+ --nmo-warn-explicit-parallel-conflicts to the assembler.
+Mon Feb 9 09:53:41 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.c (v850_output_local): Call
+ ASM_OUTPUT_ALIGNED_DECL_COMMON rather than ASM_OUTPUT_DECL_LOCAL
+ (which is not defined).
+
+ * varasm.c (assemble_variable): Ditto.
+
+Fri Feb 6 14:55:28 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850ea.h: Remove multilibing and add -mUS-bit-set
+ command line option.
+
+ * config/v850/v850e.h: Remove multilibing.
+
+ * config/v850/v850.c (ep_memory_offset): Support new command line
+ options -msmall-sld and -mUS-bit-set to allow fine tuning of the
+ SLD.[BH] offsets.
+ * config/v850/v850.h: Ditto.
+
+ * config/v850/t-v850: Remove multilibing and replace with single,
+ universal build using -mv850 and -msmall-sld command line options.
+
+
+Fri Feb 6 09:19:12 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/elfb4100.h (DWARF2_DEBUGGING_INFO,PREFERRED_DEBUGGING_TYPE,
+ SUBTARGET_ASM_DEBUGGING_SPEC): Define.
+ * mips/elfl4100.h (DWARF2_DEBUGGING_INFO,PREFERRED_DEBUGGING_TYPE,
+ SUBTARGET_ASM_DEBUGGING_SPEC): Same.
+
+Fri Feb 6 02:53:28 1998 J"orn Rennecke <amylaar@cygnus.com>
+
+ * d10v.h (MUST_PASS_IN_STACK): Define.
+
+ * d10v/libgcc1.asm (__cmpdi): Fix bug in last change.
+
+ * d10v.md (movhi): Don't call force_reg while reloading.
+ (movsi): Handle case when reload asks us to use an uneven reg pair.
+
+ Undo this change:
+ * va-d10v.h (__va_start_common): Add DELTA argument to subtract
+ from register number.
+ (va_start): Add DELTA argument to __va_start_common call, stdarg
+ passes 0, varargs needs to ignore last argument.
+
+Tue Feb 3 15:45:55 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/elfb4100.h (SUBTARGET_CPP_SPEC): Insure that __mips64
+ is defined.
+ * mips/elfl4100.h (SUBTARGET_CPP_SPEC): Same.
+
+Sat Jan 31 02:18:52 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (gcse_main): Fix minor typo in critial edge splitting code.
+ (pre_insert_insn): Correctly handle inserting code before a switch
+ table.
+
+Thu Jan 29 18:29:30 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * config/d30v/d30v.h (LINK_SPEC): Never specify -h.
+
+Wed Jan 28 16:43:49 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c zero_and_one, emit_cond_move): Add support
+ for MVFC instruction.
+
+ * config/m32r/m32r.h: Ditto.
+
+ * config/m32r/m32r.md: Ditto.
+
+Mon Jan 26 11:20:55 1998 Gavin Koch <gavin@cygnus.com>
+
+ * configure.in (mips64vr4100-*-elf*,mips64vr4100el-*-elf*):
+ Add abi64.h to the tm_file list.
+ * configure: Rebuild.
+ * mips/elfb4100.h (MIPS_ABI_DEFAULT,SUBTARGET_CPP_SIZE_SPEC,
+ SUBTARGET_CPP_SPEC): Define.
+ * mips/elfl4100.h (MIPS_ABI_DEFAULT,SUBTARGET_CPP_SIZE_SPEC,
+ SUBTARGET_CPP_SPEC): Define.
+
+Sun Jan 25 21:46:07 1998 Michael Meissner <meissner@cygnus.com>
+
+ * va-d10v.h (__va_start_common): Add DELTA argument to subtract
+ from register number.
+ (va_start): Add DELTA argument to __va_start_common call, stdarg
+ passes 0, varargs needs to ignore last argument.
+
+ * d10v.c (emit_move_word): Use %. to emit code to access the 0
+ register, not hardcoded r0.
+
+ * d10v.md (movqi_internal): Use %. to emit code to access the 0
+ register, not hardcoded r0.
+
+Fri Jan 23 13:50:42 1998 Jeffrey A Law (law@cygnus.com)
+
+ * recog.c (validate_replace_src): Allow replacement in JUMP_INSNs.
+ * toplev.c (rest_of_compilation): Run loop optimizations after
+ gcse if gcse alters any jumps.
+ (flag_classic_gcse): Remove flag and all references.
+ * gcse.c: Clean up some comments, remove classic GCSE code,
+ variables, comments, etc.
+ (gcse_jumps_altered): New variable.
+ (gcse_main): Returns an int now. Fix return statements. Return
+ zero normally, return nonzero if gcse modifies any jumps.
+ (compute_preds_succs): Make sure last insn in the block is a
+ JUMP_INSN before passing it to condjump_p.
+ (cprop_insn): Handle constant/copy propagation into JUMP_INSNs.
+ * jump.c (jump_optimize): Delete (set (pc) (pc)) insns created
+ by gcse.
+
+Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
+
+ * toplev.c: Add -dM command line option to dump RTL after the
+ machine dependent reorganisation pass, if there is one.
+ Reorganise RTL dump code, so that only one file handle is
+ needed.
+
+ * configure.in: Fix indentation of CYGNUS LOCAL markers.
+
+ * configure: Add support for thumb-coff.
+
+ * toplev.c (lang_options): Add -Wunknown-pragmas and
+ -Wno-unknown-pragmas.
+
+Fri Jan 23 11:20:19 1998 Michael Meissner <meissner@cygnus.com>
+
+ * d10v.c (override_options): Use GPR_EVEN_P.
+ (override_options): Change to new ABI where args are in r0..r3,
+ r14 is zero register. Change names of register class to be
+ ARG{0,1,2,3}_REGS, not R{2,3,4,5}_REGS, and RETURN_REGS instead of
+ R13_REGS.
+ (print_operand{,_memory_reference}): Ditto.
+ (d10v_stack_info): Ditto.
+ (function_{pro,epi}logue): Ditto.
+ (emit_move_4words): Make refers_to_regno_p be type correct.
+
+ * d10v.h (ARG_{FIRST,LAST}): Change to new ABI where args are in
+ r0..r3, r14 is zero register. Change names of register class to
+ be ARG{0,1,2,3}_REGS, not R{2,3,4,5}_REGS, and RETURN_REGS instead
+ of R13_REGS.
+ (GPR_ZERO_REGNUM): Ditto.
+ (SAVE_{ACC,GUARD}_REGNUM): Ditto.
+ ({FIXED,CALL_USED}_REGISTERS): Ditto.
+ (REG_ALLOC_ORDER): Ditto.
+ (reg_class): Ditto.
+ (REG_CLASS_{NAMES,CONTENTS}): Ditto.
+ (STATIC_CHAIN_REGNUM): Ditto.
+ ({FUNCTION,LIBCALL}_VALUE): Ditto.
+ (FUNCTION_VALUE_REGNO_P): Ditto.
+
+ * d10v.md (32-bit shifts): Change to new ABI where args are in
+ r0..r3, r14 is zero register. Change names of register class to
+ be ARG{0,1,2,3}_REGS, not R{2,3,4,5}_REGS, and RETURN_REGS instead
+ of R13_REGS.
+
+ * d10v/libgcc1.asm: Change to new ABI where args are in r0..r3,
+ r14 is zero register. Change names of register class to be
+ ARG{0,1,2,3}_REGS, not R{2,3,4,5}_REGS, and RETURN_REGS instead of
+ R13_REGS.
+
+ * d10v/scrt0.asm (_start): Zero r14, not r0.
+
+Fri Jan 23 11:20:19 1998 J"orn Rennecke <amylaar@cygnus.com>
+
+ * d10v.h (CUMULATIVE_ARGS): Now a typedefed struct.
+ * d10v.c (init_cumulative_args): Access the appropriate members of cum.
+ (function_arg, setup_incoming_varargs): Likewise.
+ (function_arg_advance): When an argument doesn't fit in registers,
+ retain the remaining argument regsiters for possible use by
+ subsequent arguments.
+ * va-d10v.h (__va_list_tag): New three members.
+ (__va_start_common, va_arg): Update.
+
+ * d10v.c (function_arg_boundary): Alignment for arguments starts
+ with an arguemnt size of four bytes.
+ (function_arg): No special case for structures > 4 bytes, if they
+ fit fully in the remaining argument passing registers, they are
+ passed in registers.
+ When an argument would exceed the remaining argument passing
+ registers, pass it fully on the stack.
+ (function_arg_advance): Likewise. In the latter case, mark remaining
+ argument passing registers as used.
+ (function_arg_partial_nregs): Remove.
+ * d10v.h (FUNCTION_ARG_PARTIAL_NREGS): Don't define.
+
+ * va-d10v.h (enum __type_class): Remove.
+ (va_arg): Update.
+
+Thu Jan 22 10:45:40 1998 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in: Add thumb-*-coff target.
+
+ * config/arm/thumb.c (number_of_first_bit_set): Only use inline
+ attribute when compiling with GCC.
+
+ * config/arm/thumb.md (mulsi): Fix PR 14644. Patch supplied by
+ Jim Wilson.
+
+ * config/arm/arm.c (output_func_epilogue): Fix PR14671 by changing
+ the logic for determining when stack unwinding code is needed.
+
+Wed Jan 21 11:01:49 1998 Nick Clifton <nickc@cygnus.com>
+
+ * invoke.texi (M32R/D/X Options): Add documentation of -mcond-exec
+ option.
+
+Wed Jan 21 08:28:07 1998 Jeffrey A Law (law@cygnus.com)
+
+ (gcse_main): If the first call to compute_preds_succs splits edges,
+ then call find_basic_blocks again and make another call to
+ compute_preds_succs.
+
+Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
+
+ * invoke.texi (Optimize Options): -Os documentation.
+ * tm.texi (Run-time Target): New argument to OPTIMIZATION_OPTIONS.
+ * flags.h: New flag (optimize_size).
+ * toplev.c (main): Parse -Os option and set optimize_space
+ accordingly.
+ * gcc.c (default_compilers), cp/lang-specs.h, ch/lang-specs.h: Define
+ __OPTIMIZE_SIZE__ when compiling with -Os.
+ * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
+ config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
+ config/v850/v850.h, config/d10v/d10v.h, config/generic/generic.h
+ config/sh/sh.h (OPTIMIZATION_OPTIONS): New SIZE argument to macro.
+ * config/i386/i386.c (optimization_options): Accept new SIZE argument.
+
+Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
+
+ * config/d30v/d30v.h (OPTIMIZATION_OPTIONS): New SIZE argument to
+ macro.
+
+Tue Jan 20 14:13:06 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add support for conditional execution of
+ simple unary operators. Add support for conditional execution of
+ addtion of small constants.
+
+ * config/m32r/m32r.h: Ditto.
+
+ * config/m32r/m32r.c (generate_comparison,
+ unary_parallel_operator, emit_unary_cond_exec): Ditto.
+
+Tue Jan 20 12:46:37 1998 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (FOLLOW_BACK_EDGES): Enable.
+
+ * gcse.c (dump_occr_list, replace_reg): Likewise.
+ (alloc_gcse_mem): Delete unused variables.
+ (compute_kill_rd, can_disregard_other_sets): Likewise.
+ (find_avail_set, pre_insert_copies, pre_gcse): Likewise.
+ (want_to_gcse_p): Add default case for switch statement.
+ (oprs_unchanged_p, hash_expr_1, compute_transp): Likewise.
+ (expr_equiv_p, oprs_not_set_p, expr_killed_p): Likewise.
+ (find_used_regs): Likewise.
+ (insert_expr_in_table): Initialize some variables to avoid
+ some gcc -Wall warnings.
+ (insert_set_in_table, handle_avail_expr): Likewise.
+ (handle_avail_expr): Remove some #if 0 code.
+
+Mon Jan 19 16:48:43 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add conditional execution patterns for
+ simple binary operations.
+ * config/m32r/m32r.h: Add support for conditional execution
+ patterns.
+ * config/m32r/m32r.c (conditional_compare_operand,
+ binary_parallel_operator, emit_code_exec): New functions to
+ implement conditional execution of simple binary operations.
+
+Fri Jan 16 14:30:29 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md: PR 14644: Fix multiply patterns to prevent
+ contraint matching failure when all three registers are the same.
+
+Thu Jan 15 16:41:18 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.h (PREDICATE_CODES): Add declaration of machine
+ specific predicates.
+ * config/m32r/m32r.md: Add patterns for simple conditional move
+ instructions.
+
+ * config/m32r/m32r.c (gen_compare): Add support for parallel
+ instructions.
+ (reg_or_zero_operand): New function.
+ (conditional_move_operand): New function.
+ (carry_compare_operator): New function.
+ (emit_S_clause): New function.
+ (emit_cond_move): New function.
+
+Tue Jan 13 17:41:10 1998 Jim Wilson <wilson@cygnus.com>
+
+ * cse.c (invalidate): Remove CYGNUS LOCAL patch.
+
+Mon Jan 12 16:35:04 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.md: Removed duplicate entries.
+
+Mon Jan 5 17:22:09 1998 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.h (CONST_COSTS): Define as an empty instead of not defining
+ it.
+
+Wed Dec 31 12:30:03 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c (call_address_operand): Remove acceptance of
+ constant values and addresses held in registers.
+
+Wed Dec 31 12:26:53 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.md: Add patterns for the CMPZ and CMPEQ
+ instructions.
+Tue Dec 30 16:19:47 1997 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.c (d30v_return_addr_rtx): New static variable.
+ (override_options): Use SPECIAL_REG_P, not ARG_PTR_FIRST.
+ (d30v_stack_info): Note where link pointer is stored.
+ (d30v_function_epilogue): Reset d30v_return_addr_rtx.
+ (d30v_legitimate_address_p): Correctly test r1 for r0+r1
+ addressing.
+ (d30v_emit_cond_move): Emit code to do a conditional move. If the
+ move is just the same as setcc or setcc of the reverse condition,
+ just emit that code instead.
+ (d30v_return_addr): Insert code to copy return address into a
+ temporary before saving it.
+
+ * d30v.h (SPECIAL_REG_*): Delete ARG_PTR* macros, replace with
+ SPECIAL_REG_* macros.
+ ({FIXED,CALL_USED}_REGISTERS): Make registers easier to add new
+ registers, by starting each group on a separate line.
+ (REG_ALLOC_ORDER): Ditto.
+ (REGISTER_NAMES): Ditto.
+ (MASK_WORD3): Convert a register number into bitmask for 3rd word
+ of REG_CLASS_CONTENTS.
+ (*_MASK): Use MASK_WORD3 for each of the special/cr/flag/accum
+ registers.
+ (REG_CLASS_CONTENTS): Use the *_MASK macros.
+ ({,INCOMING_}RETURN_ADDR_RTX): Define.
+ (INCOMING_FRAME_SP_OFFSET): Ditto.
+ (ELIMINABLE_REGS): Simplify somewhat.
+ (d30v_emit_cond_move): Add declaration.
+ (d30v_return_addr): Ditto.
+
+ * d30v.md (mov{qi,hi,si}cc): Use d30v_emit_cond_move to generate
+ conditional moves.
+
+Mon Dec 29 14:09:01 1997 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in (enable_fortran): Delete one too many '[' ']' levels.
+
+Mon Dec 29 14:38:50 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips/t-vr4100 (LIB2FUNCS_EXTRA): Add mips16.S.
+ * mips/t-vr4300: Likewise.
+
+Mon Dec 29 11:39:10 1997 Felix Lee (flee@cygnus.com)
+
+ * gcse.c (pre_insert_insn): Deref maybe_cc0_setter only if non-NULL.
+
+Mon Dec 29 11:11:51 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.h: Add support for second accumulator register.
+
+ * config/m32r/m32r.c: Add support for second accumulator register.
+
+Mon Dec 29 11:06:16 1997 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Disable fortran by default.
+
+Tue Dec 16 23:08:00 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.h (REG_OK_FOR_BASE_P): Fix non-strict definition.
+
+ * d10v.c (function_arg): Don't pass DImode partially in registers.
+ (function_arg_pass_by_reference): Don't pass structs / unions by
+ reference.
+
+Tue Dec 16 20:12:39 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.c (emit_comparison): Use CONSTANT_P to detect constant op1.
+ Check it for being a CONST_INT before using its value.
+ Use plus_constant_for_output to add to it.
+ Fix bug in output template for >= 32767.
+
+Tue Dec 16 11:17:12 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (arm_override_options): Force apcs-32 mode if
+ interworking is specified.
+
+Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
+
+ * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
+
+Fri Dec 12 23:09:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.c (override_options): Fix regno_reg_class for registers
+ 1, 7, 9, 11 and 15.
+
+ (d10v_subword): Fix word_num calculation for SUBREG.
+
+ (emit_subtract): Carry is ! Borrow.
+
+ (emit_comparison): Handle CONSTs.
+
+Fri Dec 12 07:37:49 1997 Michael Meissner <meissner@cygnus.com>
+
+ * gcse.c (compute_can_copy): If AVOID_CCMODE_COPIES, don't bother
+ calling emit_insn/recog to set if we can copy CCmodes.
+
+Wed Dec 10 11:33:38 1997 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (compute_can_copy): Don't allow copies for CCmode values
+ if AVOID_CCMODE_COPIES is defined.
+ * mips.h (AVOID_CCMODE_COPIES): Define.
+
+Mon Dec 8 17:12:47 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (all_architectures): Removed processor field.
+
+Wed Dec 3 10:44:25 1997 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.md (muldi3_r4000): Broaden the output template
+ and attribute assignments to handle three operand dmult;
+ rename to muldi3_internal2.
+ (muldi3): Call the new muldi3_internal2 for R4000, and
+ any GENERATE_MULT3 chip.
+
+Tue Dec 2 09:20:50 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/lib1funcs.asm: Add error condition if
+ __USER_LABEL_PREFIX__ is not defined.
+
+ * config.sub: Add support for Thumb target.
+
+ * configure: Add support for Thumb target.
+
+Tue Nov 25 19:10:56 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * Makefile.in (fixproto-defines): New rule.
+ (fixhdr.ready): Depend on fixproto-defines.
+ (mostlyclean): Remove fixproto-defines.
+ (install-common): Don't create a temporary file, install the
+ ready-built fixproto-defines.
+
+Tue Nov 25 11:22:11 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c: Brought up to date with respect to devo and
+ branch.
+ * config/arm/aout.h: Ditto.
+ * config/arm/arm.h: Ditto.
+ * config/arm/arm.md: Ditto.
+ * config/arm/coff.h: Ditto.
+ * config/arm/lib1funcs.asm: Ditto.
+ * config/arm/pe.h: Ditto.
+ * config/arm/riscix.h: Ditto.
+ * config/arm/riscix1-1.h: Ditto.
+ * config/arm/semi.h: Ditto.
+ * config/arm/semiaof.h: Ditto.
+ * config/arm/t-bare: Ditto.
+ * config/arm/t-linux: Ditto.
+ * config/arm/aout.h: Ditto.
+ * config/arm/lib1thumb.asm: Imported from branch.
+ * config/arm/t-thumb: Imported from branch.
+ * config/arm/thumb.c: Imported from branch.
+ * config/arm/thumb.h: Imported from branch.
+ * config/arm/tcoff.h: Imported from branch.
+ * config/arm/thumb.md: Imported from branch.
+ * config/arm/xm-thumb.h: Imported from branch.
+
+Mon Nov 24 17:19:39 1997 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md: Updated with changes in devo.
+ * config/arm/arm.c: Updated with changes in devo.
+ * config/arm/arm.h: Updated with changes in devo.
+ * config/arm/aout.h: Updated with changes in devo.
+ * config/arm/semi.h: Updated with changes in devo.
+
+Sat Nov 22 15:32:00 1997 Nick Clifton <nickc@cygnus.com>
+
+ * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
+ (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
+ (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
+ command line arguments to see if an executable is not being
+ created, and if so - do not append the suffix.
+
+ * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
+ driver macro.
+
+Sat Nov 22 01:01:41 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (AR_FOR_TARGET): Clean up "-e" confustion with
+ program_transform_name.
+ (RANLIB_FOR_TARGET): Likewise.
+
+Tue Nov 11 22:38:02 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * combine.c (nonzero_bits): For paradoxical subregs, take
+ LOAD_EXTENDED_OP into account.
+
+Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
+ is available elsewhere.
+
+
+Local Variables:
+add-log-time-format: current-time-string
+End: