Google



        * config/sparc/sparc.c (output_scc_insn): Enclose || con-
ditions in         parens while walking  over  notes.           *
config/sparc/sparc.md   (reg  movdi  split):  Clean  up  matching
        conditions.          (all DI arithop splits  on  32-bit):
Handle  immediate  arguments         correctly when they are CON-
ST_INTs.

Mon   Jul   13   23:57:21   1998    Kamil   Iskra     <iskra@stu-
dent.uci.agh.edu.pl>

        *  m68k/m68k.h  (TARGET_SWITCHES):  Clear MASK_68040_ONLY
for         -m68020-40, -m68020-60 and -m5200.

Mon Jul 13 23:52:05 1998  Weiwen Liu  <weiwen.liu@yale.edu>

        * gcc.c (do_spec_1): Fix %O handling for secure temporary
file         creation.

Mon  Jul  13  23:42:36  1998   Ralf Corsepius  <corsepiu@faw.uni-
ulm.de>

        * sh/elf.h (MAX_OFILE_ALIGNMENT): Undefine before includ-
ing svr4.h.

Mon Jul 13 23:36:08 1998  Jim Wilson  <wilson@cygnus.com>

        * i386/i386.h (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC):
New  specs.           (CPP_CPU_DEFAULT_SPEC,  CPP_CPU_SPEC):  Use
them.           (EXTRA_SPECS):  Support  them.           * gcc.c:
Delete %[spec] support.          (do_spec_1, case '('): Likewise.
        (do_spec_1,    case    '['):   Call   error.            *
i386/aix386ng.h,   cygwin32.h,   freebsd-elf.h,   gas.h,   isc.h,
        linux-aout.h,   linux-oldld.h,   linux.h,  osfelf.h,  os-
frose.h,  sco.h,          sco4.h,  sco4dbx.h,   sco5.h,   sol2.h,
sysv3.h (CPP_SPEC): Delete         %[cpp_cpu].

Mon  Jul  13  23:31:04 1998  Andreas Schwab  <schwab@issan.infor-
matik.uni-dortmund.de>

        * m68k.c (output_scc_di): Use cmpw #0  only  for  address
registers.

Mon Jul 13 23:26:43 1998  Jeffrey A Law  (law@cygnus.com)

        *  tree.h  (tree_common):  Note front-end dependencies on
layout of         this structure.

Mon Jul 13 23:18:39 1998  Craig Burley  <burley@gnu.org>

        *  stmt.c  (expand_expr_stmt):  If  not  assigning  fresh
        value   to  last_expr_value,  zero  it,  so  old  garbage

Mon Jul 13 17:18:47 1998  Nick Clifton  <nickc@cygnus.com>

        *  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 pass-
ing   it   on           to  the  sub-processes  invoked  by  gcc.
        (display_help):  New  function:  display   command   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 switch-
es.

Mon Jul 13 16:15:10 1998  John Carr  <jfc@mit.edu>

        *   sparc.c,  sparc.h,  sparc.md:  New  trampoline  code.
        Allow integer operand 1 to V8+ DImode shift instructions.
        Fix  bugs  in  V8+ wide multiply patterns.          In 32
bit mode, split DImode register moves and  logical  instructions.
        Write  V9  branch prediction flag.          Use V9 condi-
tional move more often for scc.

Mon Jul 13 15:10:09 1998  Philippe De Muyter  <phdm@macqel.be>

        * invoke.texi(-fno-builtin): Explain that  the  names  of
built-in         functions begin with `__builtin_', not `__'.

Mon Jul 13 19:01:52 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        *   reload1.c   (reload_reg_free_before_p):   Abort   for
RELOAD_FOR_OUTPUT.

Mon Jul 13 10:50:17 1998  Mark Mitchell  <mark@markmitchell.com>

        * cplus-dem.c  (SCOPE_STRING):  Remove  DMGL_JAVA  stuff.
        (cplus_demangle_opname):  Initialize  work.          (de-
mangle_template): Remove is_java_array.           (do_type):  Re-
move  DMGL_JAVA  stuff.           (long_options):  Remove "java".
        (main): Remove 'j' option.

Mon Jul 13 10:19:00 1998  Jeffrey A Law  (law@cygnus.com)

        * expr.c (expand_expr): Only set MEM_IN_STRUCT_P  if  the
memory  address         is not varying for REFERENCE_TYPE or when
we think we might have found         an optimized access  to  the
first element in an array.

Mon Jul 13 02:24:08 1998  David S. Miller  <davem@pierdol.cobalt-
micro.com>

        * regclass.c  (reg_scan_mark_refs):  New  arg  min_regno.
Only  update          regscan  information  for REGs with numbers
greater than or equal  to          this.   All  callers  changed.
        (reg_scan_update):  New  function  to  efficiently update
regscan         information on the  fly.           *  rtl.h:  Add
prototype.           *  jump.c  (jump_optimize):  Call it when we
make a transformation         which generates new pseudo-REGs.

Sun Jul 12 13:08:14 1998  Jeffrey A Law  (law@cygnus.com)

        * collect2.c (main): Use "-x c" instead of "-lang-c"  for
force the         compiler into C mode.

Sun    Jul    12    01:27:05    1998     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * cplus-dem.c (demangle_nested_args): Return a value.

        * tree.h (TYPE_P): New macro.

Sat Jul 11 16:19:48 1998  Mark Mitchell  <mark@markmitchell.com>

        *   cplus-dem.c   (string):   Move   definition    before
work_stuff.           (work_stuff):  Add  volatile_type,  forget-
ting_types,          previous_argument,  and   nrepeats   fields.
        (SCOPE_STRING):  New macro.          (demangle_template):
Add `remember' parameter.  Add comment.          Register the `B'
code type here, if remembering.  Tidy.  Fix crash         on NULL
tmpl_argvec.   Be  consistent   with   use   of   tname/trawname.
        (demangle_nested_args):  New  function.           (inter-
nal_cplus_demangle):     Handle     volatile-qualified     member
        functions.           (mop_up):  Delete the previous_argu-
ment  string  if  present.           (demangle_signature):  Tidy.
Handle volatile-qualified member         functions.  Handle back-
references using the `B' code.  Use  extra          parameter  to
demangle_template    and    SCOPE_STRING    where    appropriate.
        (demangle_template_value_parm): Fix thinko; 'B' is not an
integral             code.              (demangle_class):     Use
SCOPE_STRING.          (gnu_special): Pass additional argument to
demangle_template.           Use  SCOPE_STRING.           (deman-
gle_qualified): Save qualified types for later          back-ref-
erences.    Handle  constructors  and  destructors  for  template
        types   correctly.            (do_type):    Tidy.     Use
SCOPE_STRING.   Pass extra argument to         demangle_template.
to be run.

Fri Jul 10 19:06:59 1998  Michael Meissner  <meissner@cygnus.com>

        *  varray.h:  Include  system.h if it hasn't already been
included         before to get size_t declared.

Fri Jul 10 12:53:58 1998  David S. Miller  <davem@pierdol.cobalt-
micro.com>

        * jump.c (jump_optimize): If after_regscan and our trans-
formations         generate new REGs, rerun reg_scan.

Fri Jul 10 11:50:43 1998  Andrew MacLeod  <amacleod@cygnus.com>

        * config/i960/i960.c (i960_address_cost):  MEMA  operands
with         positive offsets < 4096 are free.

Fri  Jul  10  12:34:37 1998  Andreas Schwab  <schwab@issan.infor-
matik.uni-dortmund.de>

        *  config/m68k/m68k.c  (const_uint32_operand):  Recognize
        CONSTANT_P_RTX.            (const_sint32_operand):  Like-
wise.

Thu Jul  9 22:58:59 1998  Jeffrey A Law  (law@cygnus.com)

        * Makefile.in (alias.o): Depend on $(EXPR_H).

Thu Jul  9 18:24:56 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        * reload1.c (choose_reload_regs): If using an equivalence
from         find_equiv_reg and reg_reloaded_valid is not set for
this register,         clear the associated spill_reg_store.

Thu Jul  9 18:12:49 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        * reload1.c  (emit_reload_insns):  If  an  output  reload
copies only         to a secondary reload register, indicate that
the secondary reload         does the actual store.

Thu Jul  9 18:01:05 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        * reload.c (find_equiv_reg): If  need_stable_sp  is  set,
        check if stack pointer is changed directly in a PARALLEL.

Thu Jul  9 10:38:14 1998  Jeffrey A Law  (law@cygnus.com)

        * jump.c (duplicate_loop_exit_test): Fix thinko.

Thu Jul   9  01:30:37  1998   Joel  Sherrill   <joel@OARcorp.com>
                            Ralf   Corsepius   <corsepiu@faw.uni-

and         ".p2align" and define HAVE_GAS_BALIGN_AND_P2ALIGN ap-
propriately.          * acconfig.h (HAVE_GAS_BALIGN_AND_P2ALIGN):
New  tag.          * i386/gas.h (ASM_OUTPUT_ALIGN): If the assem-
bler has support for         ".balign" then use it.

        * print-rtl.c (print_rtx): Revert previous patch.

        * jump.c (duplicate_loop_exit_test): Do not duplicate the
loop  exit         test if the exit code has an insn with ASM_OP-
ERANDS.

        * i386/cygwin32.h  (STDIO_PROTO):  Fix  typo.           *
m32r.h (STDIO_PROTO): Fix typo.

        * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses cre-
ated  by          LEGITIMIZE_RELOAD_ADDRESS.           *  tm.texi
(LEGITIMIZE_RELOAD_ADDRESS):   Note   that  this  macro  must  be
        able to handle addresses created by previous  invocations
of the macro.

        * flow.c (find_auto_inc): Remove most recent change.  Re-
al bug was         elsewhere.

        * cse.c (count_reg_usage): Count registers  used  in  ad-
dresses of         CLOBBERs.

Wed Jul  8 15:08:29 1998  Jim Wilson  <wilson@cygnus.com>

        * Makefile.in (STAGESTUFF): Readd line lost during June 9
FSF merge.

        * configure.in (mips64orion-*-rtems*):  Use  elf64.h  not
elfl64.h.

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): De-
fine.          (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 02:43:34 1998  Jeffrey A
Law  (law@cygnus.com)

        *     rtlanal.c     (reg_overlap_mentioned_p):     Handle
STRICT_LOW_PART.   If         either argument is CONSTANT_P, then
return    zero.              *     reload.c     (reg_overlap_men-
Tue Jul  7 23:03:34 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        *  reload1.c (choose_reload_regs): Don't set reload_over-
ride_in         if EQUIV is clobbered in INSN and the  reload  is
done after INSN.

Tue Jul  7 21:23:36 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        *  expr.c  (emit_queue):  If  emitting  a  SEQUENCE,  set
QUEUED_INSN         to the first insn of the sequence.

Tue Jul  7 21:05:25 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>

        * cse.c (cse_insn): Don't make change without validation.

Tue Jul  7 11:40:05 1998  Jeffrey A Law  (law@cygnus.com)

        * mn10200.md (various zero/sign extension patterns): Zero
and sign         extensions which use "sub" clobber cc0.

Tue Jul  7 09:12:08 1998  Jeff Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Tue Jul  7 10:07:20 1998  Jeffrey A Law  (law@cygnus.com)

        * print-rtl.c (print_rtx): Use REAL_VALUE_TYPE instead of
"double".

Tue Jul  7 08:41:27 1998  Richard Henderson  (rth@cygnus.com)

        *  print-rtl.c (print_rtx): Only print fp values when RE-
AL_VALUE_TYPE         is a double.

Tue Jul  7 00:31:58 1998  Jeff Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Tue Jul  7 01:03:03 1998  Mumit Khan  <khan@xraylith.wisc.edu>

        Support  for  dllimport  and  dllexport  attributes   for
i386-pe.

        *  tree.h  (DECL_NON_ADDR_CONST_P):  New  accessor macro.
        (struct   tree_decl):   Add    non_addr_const_p    field.
        * tree.c (staticp): Use.

        *  i386/cygwin32.h (CPP_PREDEFINES): Map __declspec(x) to
GCC         attributes.           (SUBTARGET_SWITCHES):  Switches
to  turn  on/off dllimport|export         attributes. Also accept
-mwindows  option.           (VALID_MACHINE_DECL_ATTRIBUTE):  New
macro.             (MERGE_MACHINE_DECL_ATTRIBUTE):   New   macro.
GCC         attributes.

        *  i386/winnt.c   (i386_pe_valid_decl_attribute_p):   New
function.          (i386_pe_merge_decl_attributes): New function.
        (i386_pe_check_vtable_importexport):    New     function.
        (i386_pe_dllexport_p):            New           function.
        (i386_pe_dllimport_p):           New            function.
        (i386_pe_dllexport_name_p):         New         function.
        (i386_pe_dllimport_name_p):         New         function.
        (i386_pe_mark_dllexport):          New          function.
        (i386_pe_mark_dllimport):          New          function.
        (i386_pe_encode_section_info):        New       function.
        (i386_pe_unique_section): Strip encoding from name first.

Tue  Jul   7 00:50:17 1998  Manfred Hollstein  (manfred@s-direkt-
net.de)

        * libgcc2.c (L_exit): Provide a fake for atexit  on  sys-
tems which         define ON_EXIT but not HAVE_ATEXIT.

Tue  Jul  7 00:44:35 1998  Franz Sirl  <Franz.Sirl-kernel@lauter-
bach.com>

        * m68k.md (zero_extend QI to HI): Correctly  handle  TAR-
GET_5200.

Tue Jul  7 00:36:41 1998  Ulrich Drepper  <drepper@cygnus.com>

        * i386.c: Remove random whitespace at end of lines.

        *  i386.c (ix86_epilogue): For pentium processors, try to
deallocate         4 or 8 byte stacks with pop  instructions  in-
stead of an add instruction.

Tue Jul  7 00:30:08 1998  Klaus Kaempf  <kkaempf@rmi.de>

        * alpha.c: Include tree.h before expr.h.

Mon    Jul     6    22:50:48    1998     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * c-parse.in (struct_head,  union_head,  enum_head):  New
nonterminals.          (structsp): Use them.  Update files gener-
ated from c-parse.in.          * extend.texi  (Type  Attributes):
Document it.

        *  c-decl.c:  Add  warn_multichar.          (c_decode_op-
tion): Handle -Wno-multichar.          * c-lex.c  (yylex):  Check
it.            *   c-tree.h:   Declare  it.           *  toplev.c
(lang_options): Add it.          * invoke.texi: Document it.

Mon Jul  6 22:47:55 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
DR_ADDR         precedes RELOAD_FOR_OUTADDR_ADDRESS.

        * gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK.
Changed         caller.

Mon   Jul    6   22:21:56   1998    Kamil   Iskra     <iskra@stu-
dent.uci.agh.edu.pl>

        *  m68k.c  (output_scc_di):  Use  cmpw #0 instead of tstl
when         testing address registers on the 68000.

Mon Jul  6 22:17:19 1998  Alasdair  Baird   <alasdair@wildcat.de-
mon.co.uk>

        * i386.c (is_fp_test): Fix thinko.

        *  jump.c (jump_optimize): Check for CONST_INT before us-
ing INTVAL.

Mon Jul  6 22:14:31 1998  Richard Henderson  (rth@cygnus.com)

        * print-rtl.c (print_rtx): Display the real-value equiva-
lent of         a const_double when easy.

        *  real.h  (REAL_VALUE_TO_TARGET_SINGLE):  Use a union to
pun  types.           Zero  memory  first   for   predictability.
        (REAL_VALUE_TO_TARGET_DOUBLE):    Likewise.             *
varasm.c (immed_real_const_1): Notice width of H_W_I == double.

        * regclass.c (allocate_reg_info): Initialize  the  entire
reg_data         virtual array.

Mon  Jul   6  22:09:32  1998   Ian Lance Taylor  <ian@cygnus.com>
                          Jeff Law      <law@cygnus.com>

        * i386/cygwin32.h: Add some declaration of external func-
tions.                 (ASM_DECLARE_FUNCTION_NAME):       Define.
        (ASM_OUTPUT_EXTERNAL,  ASM_OUTPUT_EXTERNAL_LIBCALL):  De-
fine.           (ASM_FILE_END):  Define.           * i386/winnt.c
(i386_pe_declare_function_type): New  function.           (struct
extern_list,  extern_head):  Define.          (i386_pe_record_ex-
ternal_function): New function.           (i386_pe_asm_file_end):
New function.

        *  cpplib.c (cpp_options_init): Initialize cplusplus_com-
ments to 1,         matching July 18, 1995 change to cccp.c.   If
-traditional then         disable cplusplus_comments.

Mon Jul  6 21:28:14 1998  Jeffrey A Law  (law@cygnus.com)

        *  combine.c  (expand_compound_operation):  Fix thinko in
code to optimize         (zero_extend:DI (subreg:SI (foo:DI)  0))
HOST_PTR_PRINTF.             Instead,    define   a   new   macro
HAVE_PRINTF_PTR which only signifies         whether we have  the
%p format specifier or not.

        *   acconfig.h:  Delete  stub  for  HOST_PTR_PRINTF,  add
HAVE_PRINTF_PTR.                               *       machmode.h
(HOST_PTR_PRINTF): When determining the definition,         check
HAVE_PRINTF_PTR to see whether "%p" is okay.

        *    mips-tfile.c:    Include    machmode.h    to     get
HOST_PTR_PRINTF.

        * Makefile.in (mips-tfile.o): Depend on machmode.h.

Mon Jul  6 10:42:05 1998  Mark Mitchell  <mark@markmitchell.com>

        * jump.c (duplicate_loop_exit_test): Don't refuse to copy
a           section   of   code   just   because   it    contains
        NOTE_INSN_BLOCK_{BEG,END}.             *    stmt.c   (ex-
pand_end_loop): Likewise.  Also,  don't  refuse  to          move
CALL_INSNs   or   CODE_LABELs.   When  moving  code,  don't  move
        NOTE_INSN_BLOCK_{BEG,END}.

Mon Jul  6 09:38:15 1998  Mark Mitchell  <mark@markmitchell.com>

        * cse.c  (CSE_ADDRESS_COST):  New  macro,  based  on  AD-
DRESS_COST,      but              dealing     with     ADDRESSOF.
        (find_best_addr): Use it.

Mon Jul  6 09:27:08 1998  Richard Henderson  <rth@cygnus.com>

        * alpha/vms.h (TRAMPOLINE_TEMPLATE): Revert last  change.

Mon Jul  6 09:25:06 1998  Dave Love  <d.love@dl.ac.uk>

        * libgcc2.c (__eprintf): Make args consistent with proto-
type in         assert.h.

Mon Jul  6 00:28:43 1998  Mark Mitchell  <mark@markmitchell.com>

        * cse.c (cse_insn): When SETting (MEM (ADDRESSOF (X))) to
Y,          don't claim that the former is equivalent to the lat-
ter.

Sun Jul  5 23:58:19 1998  Jeffrey A Law  (law@cygnus.com)

        * cse.c (cse_insn): Second arg is an RTX now.  Update all
callers.           (cse_basic_block):  Keep  track of the current
RETVAL insn for a         libcall instead  of  just  noting  that
we're in a libcall.

        *  combine.c  (simplify_comparison): Do not commute a AND
        output_block_move, delay_operand): Remove, has  not  been
        enabled  or  referenced  for  years.           * sparc.md
(movstrsi, block_move_insn): Likewise.          * sparc.h (PREDI-
CATE_CODES):     Define.              *     linux-aout.h     (MA-
CHINE_STATE_{SAVE,RESTORE}): Override with         version  which
uses  getcc/setcc  traps to save/restore condition         codes.
        * linux64.h:  Likewise.           *  sunos4.h:  Likewise.
        *   linux.h:   Likewise.            *  sol2.h:  Likewise.
        * sun4o3.h: Likewise.

Fri Jul  3 02:28:05 1998  Richard Henderson  <rth@cygnus.com>

        *  alpha.c  (alpha_initialize_trampoline):  Hack   around
Pmode/ptr_mode            lossage    on    VMS.     Reported   by
kkaempf@rmi.de.          * alpha/vms.h (TRAMPOLINE_TEMPLATE): Add
missing 0.

Thu Jul  2 17:41:14 1998  Nick Clifton  <nickc@cygnus.com>

        *  config/m32r/m32r.h  (MUST_PASS_IN_STACK): Override de-
fault         version.

Thu Jul  2 14:34:48 1998  David Edelsohn  <edelsohn@mhpcc.edu>

        * expr.h (STACK_SIZE_MODE):  New  macro.           *  ex-
plow.c (allocate_dynamic_stack_space): Use it for         mode of
allocate_stack  pattern  increment  operand.           *  tm.texi
(STACK_SAVEAREA_MODE,   STACK_SIZE_MODE):   Document.           *
md.texi (stack_save_block, ...): Reflect use of macro.

        * rs6000.h (PROMOTE_MODE): Always promote  to  word_mode.
        (PROMOTE_FUNCTION_ARGS):  Define.          (PROMOTE_FUNC-
TION_RETURN):  Define.           (FUNCTION_VALUE):   Promote   to
word_mode if smaller.          Convert to gen_rtx_FOO.          *
rs6000.md  (call_indirect):  Store  doubleword  in  64-bit  mode.
        Convert  to  gen_rtx_FOO.          * rs6000.c: Convert to
gen_rtx_FOO.           Thu Jul  2 14:16:11 1998  Michael Meissner
__builtin_return_address(0) and -fomit-frame-pointer.

Wed Oct  1 13:43:53 1997  Jim Wilson  <wilson@cygnus.com>

        Bring over from FSF.          Tue Aug   5  16:10:45  1997
Jason Merrill  <jason@yorick.cygnus.com>

        *   mips.c   (function_arg):   Handle  passing  a  struct
        containing a double in a DFmode register without the PAR-
ALLEL.

Wed Oct  1 11:13:25 1997  Ian Lance Taylor  <ian@cygnus.com>

        * pexecute.c: Use spawn if __CYGWIN32__.

        *  pexecute.c:  Include "config.h" first, as per autoconf
manual         (from Paul Eggert  <eggert@twinsun.com>).

Wed  Oct   1  01:44:36  1997   Philippe  De   Muyter    <phdm@in-
fo.ucl.ac.be>

        *  m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
        optimization for f/expr.o and f/stb.o.

Tue Sep 30 23:06:43 1997  Richard Henderson  <rth@cygnus.com>

        *  alpha.md  (beq): For registers and ints 0-255, use cm-
peq+bne, since         that pair will dual-issue on the 21164 and
plus+beq won't.          (bne): Likewise for cmpeq+beq.

Tue Sep 30 16:07:58 1997  Jim Wilson  <wilson@cygnus.com>

        * except.c (find_exception_handler_labels): Correct argu-
ment to free.

Tue   Sep   30   11:00:00    1997     Brendan    Kehoe     <bren-
dan@lisa.cygnus.com>

        *  except.c  (find_exception_handler_labels): Free LABELS
when we're         done.

Mon Sep 29 14:04:35 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Mon   Sep    29    10:51:53    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        *  flow.c  (find_basic_blocks): Mark calls as potentially
jumping         to the EH labels.

Mon Sep 29 09:58:06 1997  Jeffrey A Law  (law@cygnus.com)

        * configure.in: Substitute for "install" too.           *
configure: Rebuilt.

Mon   Sep   29   00:38:42   1997    Aaron  Jackson   <jackson@ne-
gril.msrce.howard.edu>

        * Makefile.in (bootstrap-lean,  compare-lean):  New  tar-
gets.

Mon Sep 29 00:18:16 1997  Richard Henderson  (rth@cygnus.com)

        * alias.c (base_alias_check): Two symbols can conflict if
they         are accessed via AND.          (memrefs_conflict_p):
Likewise.

        *  alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
        after flushing argument registers to the stack.

        * Makefile.in (mostlyclean): Remove .regmove files.

Sun   Sep    28    18:59:58    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>


Sun Sep 28 01:05:16 1997  Jeffrey A Law  (law@cygnus.com)

        * frame.c: Remove last change.          *  dwarf2.h:  Re-
move  last  change.          * tree.h: Add declarations of DWARF2
unwind info support         functions.

Sat   Sep    27    11:02:38    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        *        c-decl.c       (init_decl_processing):       Add
__builtin_dwarf_reg_size.          * tree.h  (built_in_function):
Likewise.             *    expr.c   (expand_builtin):   Likewise.
        *  except.h:  Likewise.            *   dwarf2out.c   (ex-
pand_builtin_dwarf_reg_size):   New   fn.            *  libgcc2.c
(copy_reg): New fn.          (__throw): Use it.

Fri Sep 26 08:54:59 1997  Paul Eggert  <eggert@twinsun.com>

        *  c-typeck.c  (build_binary_op):  Warn  about  comparing
signed  vs         unsigned if -W is specified and -Wno-sign-com-
pare is not.          * c-decl.c (warn_sign_compare):  Initialize
to   -1.           (c_decode_option):  -Wall  no  longer  implies
-Wsign-compare.

Fri Sep 26 09:00:13 1997   Andreas  Schwab   <schwab@issan.infor-
matik.uni-dortmund.de>

        *  frame.c:  Include  gansidecl.h  for  PROTO.          *
dwarf2out.c: Move inclusion of dwarf2.h down  so  that  PROTO  is
        defined.    Don't   declare   dwarf2out_cfi_label   here.
        * dwarf2.h: Add declarations of DWARF2 unwind  info  sup-
port          functions.           *  m68k.c:  Include  dwarf2.h.
        (output_function_prologue):    Add    dwarf2     support.
        *  m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM):
New macros.          (INCOMING_FRAME_SP_OFFSET): Likewise.

        * integrate.c (expand_inline_function): Make  sure  there
is  at          least  one  insn that can be used as an insertion
point.

Wed   Sep    24    21:34:06    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/

Wed Sep 24 22:05:30 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Wed Sep 24 17:36:23 1997  Doug Evans  <dje@canuck.cygnus.com>

lign-jumps=,                                  -malign-functions=.
        (sparc_align_{loops,jumps,funcs}_string):        Declare.
        (sparc_align_{loops,jumps,funcs}): Declare.          (DE-
FAULT_SPARC_ALIGN_FUNCS):  New  macro.           (FUNCTION_BOUND-
ARY):   Use   sparc_align_funcs.           (STACK_BIAS):  Define.
        (SPARC_SIMM*_P): Cast to  unsigned  HOST_WIDE_INT  first,
then  perform          test.          (SPARC_SETHI_P): New macro.
        (CONST_OK_FOR_LETTER_P):   Use   it.            (ASM_OUT-
PUT_ALIGN_CODE):  Define.           (ASM_OUTPUT_LOOP_ALIGN):  De-
fine.                           *                   sparc/sparc.c
(sparc_align_{loops,jumps,funcs}_string):       New      globals.
        (sparc_align_{loops,jumps,funcs}):      New      globals.
        (sparc_override_options): Handle -malign-loops=, -malign-
jumps=,         -malign-functions=.          (move_operand):  Use
SPARC_SETHI_P.           (arith_double_operand): Cast to unsigned
HOST_WIDE_INT     first,     then              perform      test.
        (arith11_double_operand):                       Likewise.
        (arith10_double_operand):   Likewise.             (final-
ize_pic):  Finish sparc64 support.          (emit_move_sequence):
Use SPARC_SETHI_P.  Simplify low part of         64 bit constants
if  able.           (output_fp_move_quad): Don't use fmovq unless
TARGET_HARD_QUAD.             (sparc_builtin_saveregs,    sparc64
case):  Don't  save  fp  regs if         ! TARGET_FPU.          *
sparc/sparc.md   (*):   Use   GEN_INT   instead    of    gen_rtx.
        (get_pc_sp32):     Use     for     sparc64    as    well.
        (lo_sum_di_sp{32,64}): Fix  handling  on  64  bit  hosts.
        (sethi_di_sp64_const):                          Likewise.
        (movtf_cc_sp64):         Check          TARGET_HARD_QUAD.
        (cmp_zero_extract_sp64):  Use  unsigned  HOST_WIDE_INT in
cast.           (ashlsi3,  ashldi3,  ashrsi3,  ashrdi3,  lshrsi3,
lshrdi3): Likewise.

        Tue Sep 23 19:02:46 1997  Doug Evans  <dje@cygnus.com>

        *  sparc/linux-aout.h (COMMENT_BEGIN): Delete.          *
sparc/linux.h (COMMENT_BEGIN):  Likewise.           *  sparc/lin-
ux64.h (COMMENT_BEGIN): Likewise.

        Tue   Sep  23  14:48:18  1997   David  S.  Miller   <dav-
em@tanya.rutgers.edu>

        Add  sparc64  linux  support.            *   configure.in
(sparc64-*-linux*):  Recognize.   Add sparc/xm-sparc.h         to
xm_file list on 32-bit sparc-linux.           *  sparc/xm-sp64.h:
New   file.           *  sparc/linux64.h:  New  file.           *
sparc/xm-linux.h: Include some standard  headers  if  not  inhib-
it_libc.          Don't include xm-sparc.h.          * config/xm-
linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.          *  glimits.h
(LONG_MAX): Handle sparc64.

        Sat Sep 20 03:07:54 1997  Doug Evans  <dje@cygnus.com>


        *   sparc.c   (dwarf2out_cfi_label):   Add   declaration.
        (save_regs,  output_function_prologue):  Remove  cast for
it.          (sparc_flat_{save_restore,output_function_prologue):
Likewise.          ({save,restore}_regs): No longer inline.

Tue  Sep  23  12:34:51  1997   Richard  Kenner  <kenner@vlsi1.ul-
tra.nyu.edu>

        * fold-const.c (make_range): Correctly  handle  cases  of
converting         from unsigned to signed type.

Tue  Sep  23  12:34:51  1997   Bernd  Schmidt   <crux@pool.infor-
matik.rwth-aachen.de>

        * fold-const.c (merge_ranges):  Make  sure  that  if  one
range  is subset         of another, it will always be the second
range.  Correct (+,-) case to         account for this.

Tue   Sep    23    08:32:51    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        *  final.c  (final_end_function): Also do dwarf2 thing if
        DWARF2_DEBUGGING_INFO.            (final_start_function):
Likewise.

Tue  Sep  23  01:15:50  1997   David S. Miller  <davem@tanya.rut-
gers.edu>

        * expmed.c (expand_divmod): If compute_mode  is  not  the
same as         mode, handle the case where convert_modes() caus-
es op1 to no         longer be a CONST_INT.

        * reorg.c  (dbr_schedule):  At  end  of  this  pass,  add
REG_BR_PRED          note holding get_jump_flags() calculation to
all JUMP_INSNs.          * rtl.h (enum reg_note): New note  types
REG_BR_PRED  and REG_SAVE_AREA.          * rtl.c (reg_note_name):
Add new note types.

Tue Sep 23 00:59:54 1997  Jeffrey A Law  (law@cygnus.com)

        * rtlanal.c (computed_jump_p): Fix typo in last change.

Tue Sep 23 00:42:44 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        *   loop.c   (indirect_jump_in_function_p):   Return    0
        by default.

Tue Sep 23 00:33:55 1997  Jeffrey A Law  (law@cygnus.com)

        *   rs6000/xm-rs6000.h:   Fix   thinko  in  last  change.
        * rs6000/xm-sysv4.h: Likewise.

        *  m68k.h  (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
        INCOMING_FRAME_SP_OFFSET): New definitions.

Mon Sep 22 11:36:42  1997   David  S.  Miller   <davem@tanya.rut-
gers.edu>

        *  combine.c  (try_combine):  Use NULL_RTX instead of '0'
where         appropriate in calls to gen_rtx().          * cse.c
(cse_main):   Likewise.           *  emit-rtl.c  (gen_label_rtx):
Likewise.            *   expr.c    (init_expr_once):    Likewise.
        * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
        sched_analyze,  init_rgn_data_dependences,           com-
pute_block_backward_dependences):  Likewise.           *  sched.c
(schedule_insns):  Likewise.           *   varasm.c   (immed_dou-
ble_const): Likewise.

        *    sparc.h    (INCOMING_FRAME_SP_OFFSET):   Define   to
        SPARC_STACK_BIAS for sake of dwarf2 on sparc64.

Mon Sep 22 11:21:33 1997  J. Kean Johnston  <jkj@sco.com>

        * i386/sco5.h: Make  ELF  default  file  format  and  add
-mcoff/-melf..                 (MULTILIB_DEFAULTS):       Define.
        (ASM_SPEC,  CPP_SPEC):  Handle  -mcoff.           (START-
FILE_SPEC,        ENDFILE_SPEC,       LINK_SPEC):       Likewise.
        (LIBGCC_SPEC):   Likewise.            (MASK_COFF,    TAR-
GET_COFF, TARGET_ELF): Define.          (SUBTARGET_SWITCHES): Add
-mcoff and -melf.          * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add
-fPIC.             (CRTSTUFF_T_CFLAGS_S):    Tweak    for   COFF.
        (EXTRA_PARTS, TAROUTOPTS): Delete.          (libgcc1-elf,
libgcc2-elf,  libgcc-elf targets): Delete.          (MULTILIB_OP-
TIONS):  Define.            (MULTILIB_DIRNAMES,   MULTILIB_EXCEP-
TIONS):    Likewise.             (MULTILIB_MATCHE,   MULTILIB_EX-
TRA_OPTS): Likewise.

Mon Sep 22 02:10:43 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Sun Sep 21 17:45:45 1997  Jeffrey A Law  (law@cygnus.com)

        * loop.c (loop_number): Delete function.  Change all ref-
erences          to  use  uid_loop_num  array.           * loop.h
(loop_number):  Delete  declaration.           *  unroll.c   (un-
roll_loop):   Change   "loop_number"  references  to          use
uid_loop_num instead.

        * loop.c (loop_unroll_factor): Move outside #ifdef  HAIFA
        conditional.           (loop_unroll_iter):  Remove unused
variable and all references.          (loop_optimize): Always al-
locate  and  clear  space  for  loop_unroll_factor.          (in-
rtlanal.c (jmp_uses_reg_or_mem): New function.           (comput-
ed_jump_p):  Likewise.           *  rtl.h  (computed_jump_p): De-
clare.          * genattrtab.c (pc_rtx): Define  and  initialize.
        * loop.c (loop_optimize): Always determine if the current
        function   has   a   computed    jump.             (indi-
rect_jump_in_function_p):   Use   computed_jump_p   to  determine
        if a particular JUMP_INSN is a computed jump.

        *  loop.c  (fix_bct_param):   Delete   unused   function.
        (check_bct_param): Likewise.

Sat    Sep    20    16:22:06    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * frame.c (__deregister_frame): Check properly  for  ini-
tialized object.

Fri Sep 19 20:51:03 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.

Fri Sep 19 18:53:50 1997  J"orn Rennecke  <amylaar@cygnus.co.uk>

        *  jump.c  (thread_jumps): Check can_reverse_comparison_p
before         threading a reversed-condition jump.

        *  sched.c  (update_flow_info):  Don't  pass  SCRATCH  to
dead_or_set_p.          * haifa-sched.c (update_flow_info): Like-
wise.

Thu Sep 18 21:13:40 1997  Jeffrey A Law  (law@cygnus.com)

        * Makefile.in (BOOT_CFLAGS): Use -O2.

        * configure.in (strtoul, bsearch):  Have  autoconf  check
for these         functions.          * configure, config.in: Re-
built.

        *  m68k/xm-mot3300.h  (alloca):   Properly   declare   if
__STDC__.           *  mips/mips.h (alloca): Likewise.          *
rs6000/xm-rs6000.h  (alloca):  Likewise.           *   rs6000/xm-
sysv4.h: Likewise.

Thu    Sep    18    14:22:22    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * final.c (final_scan_insn): Hand  BARRIERs  off  to  the
dwarf2 code.          * dwarf2out.c (dwarf2out_frame_debug): Pass
the whole insn along.          (dwarf2out_stack_adjust): A BARRI-
ER resets the args space to 0.

        *  except.c (end_eh_unwinder): Subtract 1 from return ad-

        * configure.in, configure: Make sure to create the stage*
and include         symbolic links in each subdirectory.

Thu Sep 18 01:47:06 1997  Jeffrey A Law  (law@cygnus.com)

        * pa.md (reload_peepholes): Don't  allow  addresses  with
side         effects for the memory operand.

Wed    Sep    17    18:19:53    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * libgcc2.c (find_exception_handler): Subtract  one  from
our  PC  when         looking for a handler, to avoid hitting the
beginning of the next         region.

        *  except.c   (expand_builtin_set_return_addr_reg):   Use
force_operand.

Wed Sep 17 18:33:59 1997  Jeffrey A Law  (law@cygnus.com)

        * mips/abi64.h (LONG_MAX_SPEC): Define.          * mips.h
(LONG_MAX_SPEC):     Define.              (CPP_SPEC):     Include
long_max_spec.          (EXTRA_SPECS): Include long_max_spec.

Wed Sep 17 14:11:38 1997  Jeffrey A Law  (law@cygnus.com)

        *   v850.c  (construct_save_jarl):  Fix  thinko  in  last
change.

Wed Sep 17 09:53:07 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Tue   Sep    16    14:22:36    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        * libgcc2.c (find_exception_handler): Not found is -1.

        *    integrate.c   (expand_inline_function):   Move   ex-
pand_start_bindings         after expanding the arguments.

Tue Sep 16 11:13:46 1997  Jim Wilson  <wilson@cygnus.com>

        * expr.c (expand_expr): Remove previous incorrect change.
        If  target  and  slot has no DECL_RTL, then call mark_ad-
dressable         again for the slot after we give it RTL.

Tue Sep 16 09:18:52 1997  Jason Merrill  (jason@cygnus.com)

        * expr.c (expand_expr, case TARGET_EXPR):  Call  mark_ad-
dressable         again for the slot after we give it RTL.
Mon Sep 15 22:53:01 1997  Jeffrey A Law  (law@cygnus.com)

        *  aclocal.m4:  Add  replacement   for   AC_PROG_INSTALL.
        * configure.in: Use EGCS_PROG_INSTALL.

Mon Sep 15 22:40:55 1997  Jim Wilson  (wilson@cygnus.com)

        *  dwarf2out.c  (gen_subprogram_die): Handle redefinition
of an         extern inline function.

Mon Sep 15 22:40:55 1997  Richard Henderson  (rth@cygnus.com)

        *  dwarf2out.c   (reg_loc_descriptor):   Fix   prototype.
        (concat_loc_descriptor):  New function.          (loc_de-
scriptor): Call it.          (add_AT_location_description):  Also
elide the descriptor if both         halves of a CONCAT are pseu-
dos.          (add_location_or_const_value_attribute):  Recognize
CONCAT too.

Mon Sep 15 15:24:00 1997  Richard Henderson  <rth@cygnus.com>

        *   alpha.md   (movdi):   Handle  CONST_DOUBLE  for  TAR-
GET_BUILD_CONSTANTS.

        * alpha/alpha.c  (output_prolog):  New  variable  sa_reg.
Use it for         out-or-range reg_offset.          (output_epi-
log): Likewise.

Mon Sep 15 15:39:26 1997  Jeffrey A Law  (law@cygnus.com)

        * cse.c (simplify_relational_operation): If  MODE  speci-
fies  a         mode wider than HOST_WIDE_INT, then the high word
of a CONST_INT         is derived from the sign bit  of  the  low
word.

Mon    Sep    15    11:43:38    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        Support dwarf2 unwinding on  PUSH_ROUNDING  targets  like
the x86.

        *  dwarf2.h: Add DW_CFA_GNU_args_size.          * frame.c
(execute_cfa_insn):     Likewise.              *      dwarf2out.c
(dwarf_cfi_name,              output_cfi):              Likewise.
        (dwarf2out_args_size, dwarf2out_stack_adjust):  New  fns.
        (dwarf2out_frame_debug): If this isn't a prologue or epi-
logue          insn,  hand  it  off  to   dwarf2out_stack_adjust.
        (dwarf2out_begin_prologue):     Initialize     args_size.
        * frame.h (struct frame_state): Add args_size.          *
libgcc2.c  (__throw):  Use  args_size.           *  final.c  (fi-
nal_scan_insn): If we push args, hand off  all  insns          to
dwarf2out_frame_debug.           *  defaults.h (DWARF2_UNWIND_IN-
defaults.h (DWARF2_UNWIND_INFO):  Don't  require  unaligned  data
        opcodes.

        * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here
after all.          * sparc/sysv4.h  (UNALIGNED_INT_ASM_OP):  De-
fine here.          * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define
to 0.          * sparc/sun4gas.h: New  file.           *  config-
ure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.

        *  collect2.c (write_c_file_stat, write_c_file_glob): De-
clare         __register_frame_table and __deregister_frame.

1997-09-15  Brendan Kehoe  <brendan@cygnus.com>

        * except.c (find_exception_handler_labels):  Use  xmalloc
instead of         alloca, since MAX_LABELNO - MIN_LABELNO can be
more than 1 million         in some cases.

Sun Sep 14 21:01:23 1997  Jeffrey A Law  (law@cygnus.com)

        *  Makefile.in:  Various  changes  to  build  info  files
        in the object tree rather than the source tree.

Sun Sep 14 12:24:30 1997  Jeffrey A Law  (law@cygnus.com)

        *  fixinc.math:  New  file to fix math.h on some systems.
        * configure.in  (freebsd,  netbsd):  Use  fixinc.math  on
these         systems.          * configure: Rebuilt.

Sun Sep 14 11:11:05 1997  Jeffrey A Law  (law@cygnus.com)

        *  regmove.c  (regmove_optimize): If we end up moving the
        original insn due to lifetime overlaps, make sure to move
        REG_NOTES too.

Sat  Sep  13 15:51:11 1997  Manfred Hollstein  <manfred@s-direkt-
net.de>

        * Makefile.in (INSTALL_{PROGRAM,DATA}): Use  value  found
by configure.

Sat Sep 13 12:57:26 1997  Jeffrey A Law  (law@cygnus.com)

        *  haifa-sched.c (add_branch_dependences): Make each insn
in         a SCHED_GROUP_P block explicitly depend on the  previ-
ous insn.

Fri    Sep    12    13:49:58    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * except.h: Prototype dwarf2  hooks.           *  expr.c:
Adjust.
toheader.

        * cpplib.c (quote_string): Cast first arg of sprintf call
        from  "unsigned  char  *"  to  "char  *".           (out-
put_line_command):  Likewise.           (macroexpand):  Likewise.
        (do_line):  Cast atoi arg from "unsigned char *" to "char
*".

Wed Sep 10 21:37:30 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

        * Makefile.in (compare):  Exit  with  nonzero  status  if
there          are  comparison failures.  Note which files failed
the         comparison test in .bad_compare.

Wed Sep 10 17:05:46 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        * config/alpha/elf.h (CPP_PREDEFINES):  Remove  -D__PIC__
-D__pic__.

Wed Sep 10 16:37:28 1997  Fred Fish  <fnf@ninemoons.com>

        * Makefile.in (LN, LN_S): New macros, use where appropri-
ate.           *  aclocal.m4  (GCC_PROG_LN_S,  GCC_PROG_LN):  New
tests.             *    configure.in:   Use   GCC_PROG_LN_S   and
GCC_PROG_LN.          * configure: Regenerated.

Thu Sep 11 11:09:43 1997  Jeffrey A Law  (law@cygnus.com)

        * loop.c (strength_reduce): Fix typo.

Wed Sep 10 16:01:15 1997  Jim Wilson  <wilson@cygnus.com>

        * m88k/m88k.c (struct option): Rename to struct  options.
        *   m88k/dolph.h  (INITIALIZE_TRAMPOLINE):  Delete  here.
        * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef  and
comments.           *  libgcc2.c  (__enable_execute_stack): Check
for __sysV88__ not         __DOLPHIN__ or sysV88.

Wed Sep 10 14:58:40 1997  Jim Wilson  <wilson@cygnus.com>

        * emit-rtl.c (gen_lowpart_common): For a SUBREG,  add  in
word when         create new subreg.

Wed Sep 10 15:19:22 1997  Jeffrey A Law  (law@cygnus.com)

        * config.sub: Accept 'amigados' for backward compatibili-
ty.

Wed Sep 10 14:05:08 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

unwind info.          Currently works on SPARC and MIPS, and  al-
most on x86.

        *  libgcc2.c  (get_reg, put_reg, get_return_addr, put_re-
turn_addr,         next_stack_level, in_reg_window): Helper  fns.
        (__throw): Implement for DWARF2_UNWIND_INFO.

        *   expr.c  (expand_builtin):  Handle  builtins  used  by
__throw.          * tree.h (enum built_in_function): Add builtins
used  by __throw.          * c-decl.c (init_decl_processing): De-
clare builtins  used  by  __throw.           *  dwarf2out.c  (ex-
pand_builtin_dwarf_fp_regnum):  Used  by  __throw.          * ex-
cept.c (expand_builtin_unwind_init):  Hook  for  dwarf2  __throw.
        (expand_builtin_extract_return_addr):           Likewise.
        (expand_builtin_frob_return_addr):              Likewise.
        (expand_builtin_set_return_addr_reg):           Likewise.
        (expand_builtin_eh_stub):     Likewise.              (ex-
pand_builtin_set_eh_regs):  Likewise.           (eh_regs): Choose
two call-clobbered registers for passing back values.

        * frame.c, frame.h: New files for parsing dwarf  2  frame
info.           * Makefile.in (LIB2ADD): New variable.  Add $(sr-
cdir)/frame.c.            (libgcc2.a):   Use   it   instead    of
$(LIB2FUNCS_EXTRA)   $(LANG_LIB2FUNCS)           (stmp-multilib):
Likewise.          ($(T)crtbegin.o, $(T)crtend.o):  Add  -fno-ex-
ceptions.

        *   except.c:   #include  "defaults.h".           (excep-
tions_via_longjmp):  Default   depends   on   DWARF2_UNWIND_INFO.
        (emit_throw):    Don't    defeat   assemble_external   if
DWARF2_UNWIND_INFO.           (register_exception_table_p):   New
fn.          (start_eh_unwinder): Don't do anything if DWARF2_UN-
WIND_INFO.          (end_eh_unwinder): Likewise.

        * crtstuff.c: Wrap .eh_frame section,  use  EH_FRAME_SEC-
TION_ASM_OP,         call __register_frame and __deregister_frame
as needed.          *  varasm.c  (eh_frame_section):  New  fn  if
EH_FRAME_SECTION_ASM_OP.           *  dwarf2out.c  (EH_FRAME_SEC-
TION): Now a function-like  macro.   Check          EH_FRAME_SEC-
TION_ASM_OP.           * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP):
Define.          *  mips/iris6.h  (EH_FRAME_SECTION_ASM_OP):  De-
fine.          (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden sym-
bols.

        * dwarf2out.c (output_call_frame_info): If no support for
        EXCEPTION_SECTION,  mark the start of the frame info with
a         collectible tag.          * collect2.c  (frame_tables):
New   list.           (is_ctor_dtor):  Recognize  frame  entries.
        (scan_prog_file): Likewise.          (main):  Pass  -fno-
exceptions  to  sub-compile.  Also do collection         if there
are any frame entries.          (write_c_file_stat): Call  __reg-
ister_frame_table   and           __deregister_frame  as  needed.
different            EH    implementations    to     the     top.
        (find_exception_handler): Split out.  Start from 0.  Com-
pare against         end with  >=.           (__find_first_excep-
tion_table_match):  Use  it.           *  except.c (output_excep-
tion_table): Don't  do  anything  if  there's          no  table.
Don't  output  a  first  entry of zeroes.          (eh_outer_con-
text): Adjust properly.          (add_eh_table_entry): Use xreal-
loc.           * toplev.c (compile_file): Just call output_excep-
tion_table.

Wed Sep 10 11:30:36 1997  Jason Merrill  <jason@cygnus.com>

        * i386.c (ix86_prologue): Add dwarf2 support for  !do_rtl
case.

Wed Sep 10 08:17:10 1997  Torbjorn Granlund  <tege@pdc.kth..se>

        *  except.c  (eh_outer_context):  Do  masking  using  ex-
pand_and.

Wed Sep 10 01:38:30 1997  Doug Evans  <dje@cygnus.com>

        Add port done awhile ago  for  the  ARC  cpu.           *
arc/arc.h:  New  file.          * arc/arc.c: New file.          *
arc/arc.md:  New  file.           *  arc/initfini.c:  New   file.
        *  arc/lib1funcs.asm: New file.          * arc/t-arc: New
file.          * arc/xm-arc.h: New file.          *  ginclude/va-
arc.h:  New  file.          * ginclude/stdarg.h: Include va-arc.h
ifdef   __arc__.            *    ginclude/varargs.h:    Likewise.
        *  Makefile.in (USER_H): Add va-arc.h.          * config-
ure.in (arc-*-elf*): Recognize.          *  longlong.h:  Add  ARC
support.

Wed Sep 10 01:32:54 1997  Jeffrey A Law  (law@cygnus.com)

        *  expr.c (clear_storage): Use CONST0_RTX instead of con-
st0_rtx.          when clearing non-BLKmode data.

Wed Sep 10 00:29:29 1997  Manfred  Hollstein   <manfred@s-direkt-
net.de>

        *     m88k/sysv3.h    (INITIALIZE_TRAMPOLINE):    Define.
        * libgcc2.c (__enable_execute_stack): Provide for  sysV88
too.

        *  xm-m88k.h (USG): Only define if it hasn't already been
defined.

        * Makefile.in (risky-stage1):  Delete  gratuitous  white-
space.

        * Makefile.in (clean): Delete libgcc1-test.

Tue Sep  9 09:12:17 1997  Jeffrey A Law  (law@cygnus.com)

        * haifa-sched.c (print_value): Fix last change.

Tue    Sep     9    01:30:37    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * mips.h (DWARF_FRAME_REGNUM): Use the same numbering re-
gardless of         write_symbols.

Mon    Sep     8    16:32:43    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * mips.c (function_prologue): Set up the CFA when ABI_32.

        *  sparc.c  (save_regs): Check dwarf2out_do_frame instead
of DWARF2_DEBUG         for dwarf2  unwind  info.           (out-
put_function_prologue,      sparc_flat_output_function_prologue):
Same.

        * final.c (final_end_function): Check  dwarf2out_do_frame
instead           of   DWARF2_DEBUG   for   dwarf2  unwind  info.
        (final_scan_insn): Likewise.           (final_start_func-
tion):   Likewise.    Initialize   dwarf2   frame   debug   here.
        (final): Not here.

        *   expr.c   (expand_builtin_return_addr):   Only    SET-
UP_FRAME_ADDRESSES if         count > 0.

        *  varasm.c  (exception_section): Check EXCEPTION_SECTION
first.

Mon Sep  8 15:15:11 1997  Nick Clifton  <nickc@cygnus.com>

        *  v850.h   (ASM_SPEC):   Pass   on   target   processor.
        (CPP_PREDEFINES):  Only  define if not already specified.
        (TARGET_VERSION): Only define if not  already  specified.
        (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify tar-
get         processor.          (EXTRA_SWITCHES):  Extra  entries
in  the  switches  array.           (TARGET_DEFAULT): Set default
target processor.

Mon Sep  8 18:26:35 1997  Jim Wilson  <wilson@cygnus.com>

        * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE):  In
MOTOROLA         cases, add %# and %/, and add : to make them in-
to extended asms.

Sun   Sep    7   23:57:50    1997     Weiwen    Liu     <liu@hep-
unix.physics.yale.edu>

Sun    Sep     7    22:56:56    1997    Weiwen   Liu    (liu@hep-
vms.physics.yale.edu)

        * Makefile.in (sdbout.o): Depend on insn-config.h.

Sun Sep  7 18:44:50 1997  Jim Wilson  <wilson@cygnus.com>

        * m68k/m68k.h (TARGET_SWITCHES): For 68000,  68302,  sub-
tract  MASK_68881.           For  68303,  68332,  cpu32, subtract
MASK_68040_ONLY.

Sun   Sep     7    18:30:46    1997     Jason    Merrill     <ja-
son@yorick.cygnus.com>

        *  dwarf2out.c  (dwarf2out_frame_debug): Assume that in a
PARALLEL         prologue insn, only the first  elt  is  signifi-
cant.           (output_call_frame_info): For exception handling,
always use 4-byte         fields as specified by the dwarf2 spec.
        Don't skip trivial FDEs.

Sun Sep  7 14:19:39 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Sun Sep  7 14:17:36 1997  Torbjorn Granlund  (tege@pdc.kth.se)

        *  expmed.c  (expand_divmod):  Make op1_is_pow2 depend on
unsignedp         for negative constants.  Promote EXACT_DIV_EXPR
to TRUNC_DIV_EXPR         when op1_is_pow2.

Sun Sep  7 13:46:46 1997  Jeffrey A Law  (law@cygnus.com)

        *  final.c  (shorten_branches): During first pass, assume
worst         possible alignment for ADDR_VEC  and  ADDR_VEC_DIFF
insns.

        *  Makefile.in  (distclean):  Remove  various things left
around         by running the testsuite.

Sun Sep  7 13:16:06 1997  Manfred  Hollstein   <manfred@s-direkt-
net.de>

        * configure.in (out_file): Emit definition to config.sta-
tus in order         to have a defined value for  configure.lang.
        * configure: Re-built.

Sun  Sep  7 09:59:08 1997  Jan-Jaap van der Heijden  (J.J.vander-
Heijden@student.utwente.nl)

        *  configure.in:  Make  symlink  to  as-new  rather  than
as.new.   Similarly         for ld-new.          * configure: Re-
built.
fo.ucl.ac.be>

        *   integrate.c  (save_for_inline_copying):  Use  0,  not
NULL_PTR,           as   initial   value   for    real_label_map.
        (copy_for_inline): Likewise.

Fri Sep  5 13:36:44 1997  J"orn Rennecke  <amylaar@cygnus.co.uk>

        *  sched.c  (update_flow_info):  When  looking  if to set
found_split_dest         or found_orig_dest, look at all parts of
a  PARALLEL.           *  haifa-sched.c (update_flow_info): Like-
wise.

Fri Sep  5 10:08:44 1997  Jeffrey A Law  (law@cygnus.com)

        *  v850:  New  directory  for   v850   port.            *
v850/lib1funcs.asm:  New file.          * t-v850, v850.c, v850.h,
v850.md, xm-v850.h: New files.          * ginclude/va-v850.h: New
file.           *  ginclude/varargs.h, ginclude/stdarg.h: Include
va-mn10200.h.          * configure.in (mn10200-*-*): New  target.
        *   configure:  Rebuilt.           *  config.sub:  Handle
v850-elf.           *  Makefile.in  (USER_H):  Add  va-mn10200.h.
        * invoke.texi: Document v850 stuff.

Fri Sep  5 09:37:50 1997  Jim Wilson  (wilson@cygnus.com)

        *  sdbout.c  (plain_type_1, case ARRAY_TYPE): Verify that
TYPE_DOMAIN         has integer TYPE_{MAX,MIN}_VALUE before using
them.

        *   m68k/m68k.h   (MACHINE_STATE_SAVE,  MACHINE_STATE_RE-
STORE): Add         __HPUX_ASM__ versions.

Fri Sep  5 09:08:44 1997  Jeffrey A Law  (law@cygnus.com)

        * install.sh: Delete duplicate install script.

Thu Sep  4 23:14:27 1997  Stan Cox  (coxs@dg-rtp.dg.com)

        * reg-stack.c (subst_stack_regs): Pop the stack  register
for a         computed goto which sets the same stack register.

        *  reg-stack.c  (compare_for_stack_reg): Swap only if the
source  and          destination  are  both  on   the   regstack.
        (subst_stack_regs_pat): Put the destination at the top of
the regstack.

Thu Sep  4 15:02:27 1997  Jim Wilson  <wilson@cygnus.com>

        * mips.md (nonlocal_goto_receiver): Define.

        * profile.c (output_arc_profiler): Check  next_insert_af-
        * print-rtl.c (print_rtl_single): Print a single rtl val-
ue to a         file.

        * flow.c (print_rtl_with_bb): Print which insns start and
end         basic blocks.  For the start of a basic  block,  also
print the live         information.

Thu Sep  4 11:51:43 1997  Jim Wilson  <wilson@cygnus.com>

        * toplev.c (main): Change #elif to #else/#ifdef.

        *   tlink.c:  Include  ctype.h.           *  ginclude/va-
mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.

Thu Sep  4 11:17:16 1997  Mikeael Meissner  (meissner@cygnus.com)

        *     bitmap.c:     Conditionally    include    stdlib.h.
        (free): Provide a declaration if NEED_DECLARATION_FREE.

Thu Sep  4 09:58:53 1997  Joel Sherrill  (joel@OARcorp.com)

        *  i960/i960.h:  Added  default  for   SUBTARGET_SWITCHES
macro.

Thu Sep  4 09:53:20 1997  Jim Wilson  (wilson@cygnus.com)

        * profile.c (output_arc_profiler): Verify next_insert_af-
ter is an         INSN before and after skipping a stack pop.

Thu Sep  4 07:39:19 1997  J"orn Rennecke  <amylaar@cygnus.co.uk>

        * final.c (shorten_branches): Don't count the lengths  of
deleted         instructions.

Thu Sep  4 09:43:01 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for snapshot.

Thu Sep  4 11:04:21 1997  Michael Meissner  <meissner@cygnus.com>

        * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to  it-
erate  over          two  bitmaps  ANDed together.          (bit-
map_print): Declare.

        * bitmap.c (function_obstack): Don't  declare  any  more.
        (bitmap_obstack):  Obstack  for  allocating  links  from.
        (bitmap_obstack_init): New static to say whether to  ini-
tialize           bitmap_obstack.           (bitmap_element_allo-
cate): Use bitmap_obstack to allocate from.           (bitmap_re-
lease_memory):  Free all memory allocated from         bitmap_ob-
stack.

m68k/rtems.h,                     mips/rtems64.h,     pa/rtems.h,
rs6000/rtems.h,  sh/rtems.h,             sparc/rtems.h   (subtar-
get_switches):  Removed SUBTARGET_SWITCHES           definitions.
Use -qrtems instead of -mrtems.

Wed Sep  3 09:05:41 1997  Robert Lipe  (robert@dgii.com)

        *        xm-sco5.h         (sys_siglist):         Define.
        (SYS_SIGLIST_DECLARED): Likewise.

Tue Sep  2 23:33:33 1997  Jeffrey A Law  (law@cygnus.com)

        *  expr.c  (convert_move): Handle truncation from TQFmode
to QFmode.

Wed Sep  3 02:09:30 1997  Torbjorn Granlund  <tege@pdc.kth..se>

        * except.c (eh_outer_context): Expand  masking  operation
using         expand_binop.

Tue Sep  2 18:09:39 1997  Jim Wilson  <wilson@cygnus.com>

        * alpha.md (floatdisf2-1): New pattern.

Tue Sep  2 18:41:55 1997  Jeffrey A Law  (law@cygnus.com)

        *  xm-svr4.h  (SYS_SIGLIST_DECLARED):  Define.          *
xm-news.h (SYS_SIGLIST_DECLARED): Likewise.          * xm-sysv4.h
(SYS_SIGLIST_DECLARED):  Likewise.          * gcc.texi: Note that
if you define sys_siglist that  you  should          also  define
SYS_SIGLIST_DECLARED.

        * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instruc-
tions         are relative to the next instruction, not the  cur-
rent instruction.

Tue Sep  2 14:22:43 1997  Jim Wilson  <wilson@cygnus.com>

        *  local-alloc.c  (contains_replace_regs):  New function.
        (update_equiv_regs): When adding a REG_EQUIV note  for  a
set  of a MEM,         verify that there is no existing REG_EQUIV
note, and add a call to         contains_place_regs.

Tue Sep  2 12:48:11 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        *  config/alpha/elf.h  (CPP_PREDEFINES):  Add   -D__PIC__
-D__pic__.           (STARTFILE_SPEC):  Always  use crtbegin.o%s.
        (ENDFILE_SPEC): Always use crtend.o%s.

Tue Sep  2 12:00:36 1997  Jim Wilson  <wilson@cygnus.com>

        * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return  NO_REGS
        * pa.c (restore_unscaled_index_insn_codes): New function.
        (record_unscaled_index_insn_codes):             Likewise.
        (output_function_prologue):   Call   restore_unscaled_in-
dex_insn_codes.          (output_function_epilogue): Free  memory
for    unscaled_index_insn_codes.             (pa_reorg):    Call
record_unscaled_index_insn_codes.

        * haifa-sched.c (move_insn): Handle notes  correctly  for
insns         with SCHED_GROUP_P set.

Mon Sep  1 16:58:57 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        * alpha/xm-linux.h (USE_BFD): Undef before define.

Mon Sep  1 16:25:34 1997  Jim Wilson  <wilson@cygnus.com>

        * cse.c (cse_insn): Don't record BLKmode values.

Mon     Sep      1     11:25:47     1997      Stephen    Williams
(steve@icarus.icarus.com)

        * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp"  switches.

Mon Sep  1 08:29:46 1997  Jeffrey A Law  (law@cygnus.com)

        *  cccp.c  (sys_errlist):  Remove special 4.4bsd declara-
tion.          * collect2.c (sys_errlist):  Likewise.           *
cpplib.c (sys_errlist): Likewise.          * gcc.c (sys_errlist):
Likewise.          * protoize (sys_errlist): Likewise.          *
configure.in:   Check   for   strerror.           *  xm-freebsd.h
(HAVE_STRERROR):   Remove   definition.             *    xm-gnu.h
(HAVE_STRERROR): Likewise.          * xm-linux.h (HAVE_STRERROR):
Likewise.           *  xm-netbsd.h   (HAVE_STRERROR):   Likewise.
        *  xm-bsd386.h  (HAVE_STRERROR): Likewise.          * xm-
cygwin32.h   (HAVE_STRERROR):   Likewise.            *   xm-dos.h
(HAVE_STRERROR):  Likewise.           *  xm-mingw32.h  (HAVE_STR-
ERROR): Likewise.          * xm-pa.h  (HAVE_STRERROR):  Likewise.
        *  xm-papro.h  (HAVE_STRERROR):  Likewise.          * xm-
sysv4.h (HAVE_STRERROR):  Likewise.           *  configure,  con-
fig.in: Rebuilt.

        * Makefile.in: Add several missing "else true" clauses.

        *    collect2.c:   Change   DONT_DECLARE_SYS_SIGLIST   to
SYS_SIGLIST_DECLARED.             *    mips-tfile.c:    Likewise.
        *   gcc.texi:   DONT_DECLARE_SYS_SIGLIST:   Remove  docs.
        * xm-linux.h (DONT_DECLARE_SYS_SIGLIST):  Delete  defini-
tion.            *  xm-freebsd.h,  xm-bsd386.h,  xm-sysv4.h,  xm-
sol2.h: Likewise.          * configure.in: Check for  sys_siglist
declaration.          * configure, config.in: Rebuilt.

Mon Sep  1 08:04:07 1997  Joel Sherrill  (joel@OARcorp.com)
code PLUS.

Sat Aug 30 10:49:46 1997  David Edelsohn  <edelsohn@mhpcc.edu>

        * rs6000.md: Make DF fused-add operations  pay  attention
to         -mno-fused-add.

Fri Aug 29 19:19:54 1997  Jim Wilson  <wilson@cygnus.com>

        * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.

Fri Aug 29 16:13:51 1997  Jeffrey A Law  (law@cygnus.com)

        *  pa.md  (reload_peepholes):  Make sure operand is a REG
before         examining REGNO.  Allow general registers too.

Fri Aug 29 11:42:04 1997  Jim Wilson  <wilson@cygnus.com>

        * varasm.c (mark_constants): Don't look inside CONST_DOU-
BLEs.

Fri      Aug     29     09:33:20     1997      Philipp     Thomas
(kthomas@lxi165.gwdg.de)

        * dwarf2out.c  (build_abbrev_table):  Use  xrealloc,  not
xmalloc         to reallocate abbrev_die_table.

Thu Aug 28 15:14:46 1997  Jim Wilson  <wilson@cygnus.com>

        * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.

1997-08-27   Andreas  Schwab   <schwab@issan.informatik.uni-dort-
mund.de>

        * Makefile.in (config.status): Depend on version.c.

        * expr.h (insn_gen_function): Reenable prototype.

        * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix  pro-
totype of         first parameter.

Thu Aug 28 13:01:43 1997  Jim Wilson  <wilson@cygnus.com>

        *  i386.c  (ix86_expand_epilogue): Emit blockage instruc-
tion when pic.

Thu Aug 28 07:03:15 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for latest snapshot.

        *    bc-optab.c:    Conditionally    include    stdlib.h.
        (free):  Provide  a declaration if NEED_DECLARATION_FREE.

Add -fmove-all-movables  and  -freduce-all-givs.           *  in-
voke.texi:  Document  new  options,  including  alias  stuff that
        wasn't included last time.

Wed Aug 27 18:08:51 1997  Bob Manson  (manson@cygnus.com)

        *   t-h8300:   Use   TARGET_LIBGCC2_CFLAGS   instead   of
LIBGCC2_CFLAGS.          * t-mn10200: Likewise.          * t-vxs-
parc: Likewise.          * t-vxworks68: Likewise.           *  t-
vxworks960: Likewise.          * t-vx29k: Likewise.

Wed Aug 27 16:35:29 1997  Richard Henderson  <rth@cygnus.com>

        * alpha/xm-alpha.h (alloca): Define alloca to builtin_al-
loca for GNUC         if not already  defined,  and  USE_C_ALLOCA
not defined.

Wed Aug 27 16:08:43 1997  Jim Wilson  <wilson@cygnus.com>

        *  config.guess:  Replace  with  script that uses ../con-
fig.guess.

        * config/alpha/elf.h  (DEFAULT_VTABLE_THUNKS):  New.  De-
fined as 1         if USE_GNULIBC_1 is not defined.

Wed Aug 27 15:49:12 1997  Richard Henderson  <rth@cygnus.com>

        *     alpha/elf.h    (LINK_SPEC):    Conditionalize    on
USE_GNULIBC_1.          *  config.guess:  Recognize  alpha-linux-
gnulibc1.           *  configure.in (alpha-*-linux-gnulibc1): New
target.          (alpha-*-linux-gnu*): Don't build  crtbegin/end.

Wed Aug 27 11:52:58 1997  Jim Wilson  <wilson@cygnus.com>

        *  m68k.md  (iorsi3_internal):  Readd ! TARGET_5200 check
lost in         last change.

Wed Aug 27 01:56:18 1997  Doug Evans  <dje@seba.cygnus.com>

        * loop.c (combine_movables): Earlier  insns  don't  match
later ones.

Wed Aug 27 01:24:25 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        *  config/linux.h  (CC1_SPEC):  Define it only if not de-
fined.

        * config/m68k/linux.h (CC1_SPEC): Undefine it before  in-
clude         <linux.h>

        * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as
1 if         USE_GNULIBC_1 is not defined.
        *  t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EX-
TRA_HEADERS.          *  x-netbsd:  Likewise.           *  x-dgux
(USER_H):    Include    EXTRA_HEADERS   and   LANG_EXTRA_HEADERS.
        (INSTALL_HEADERS): Delete.           *  x-dguxbcs:  Like-
wise.          * x-hp3bsd44: Likewise.          * x-pa: Likewise.

Wed  Aug  27  00:30:00  1997   Bernd  Schmidt   <crux@pool.infor-
matik.rwth-aachen.de>

        *  i386.md  (pop):  pop  increments  the  stack  pointer.
        (prologue_set_stack_ptr): New pattern.          *  i386.c
(ix86_expand_prologue):  Use  prologue_set_stack_ptr          in-
stead of subsi3.

Tue Aug 26 18:50:32 1997  Jim Wilson  <wilson@cygnus.com>

        * reload.c (find_reloads, case '0'):  Reject  matching  a
non-offsettable          address  where an offsettable address is
required.

Tue Aug 26 17:54:56 1997   Michael  P.  Hayes   (michaelh@ongaon-
ga.chch.cri.nz>

        *  loop.c (check_final_value): Don't miss a biv increment
in a         parallel.

Tue Aug 26 12:03:49 1997  Jim Wilson  (wilson@cygnus.com)

        * dwarfout.c (dwarfout_file_scope_decl, case  TYPE_DECL):
Check         TYPE_DECL_IS_STUB instead of DECL_NAME.

Mon Aug 25 23:27:10 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

        * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.

Mon Aug 25 23:27:10 1997  Jim Meyering  <meyering@eng.ascend.com>

        *   objc/Make-lang.in   ($(OBJC_O)):   Also   depend   on
$(GCC_PASSES).

Mon Aug 25 13:12:24 1997  Jeffrey A Law  (law@cygnus.com)

        * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
        (find_post_sched_live): Likewise.

        * haifa-sched.c (schedule_block): Remove old code to  get
arguments         from hard regs into pseudos early.

Mon Aug 25 08:55:00 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for new snapshot.

PR.

Mon Aug 25 01:47:41 1997  Jeffrey A Law  (law@cygnus.com)

        *  expr.h  (insn_gen_function): Temporarily remove proto-
type.

Sun Aug 24 17:22:21 1997  Jim Wilson  <wilson@cygnus.com>

        * Makefile.in (install-info): Don't cd into srcdir.   Add
srcdir  to          filenames.   Use sed to extract base filename
for install.

Sat Aug 23 18:19:40 1997  John F. Carr  <jfc@mit.edu>

        * unroll.c (find_splittable_givs): Only share if two givs
have the         same add and multiply values.

Sat Aug 23 14:36:27 1997  Jim Wilson  <wilson@cygnus.com>

        *  m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
        * m68k/m68kemb.h (LIB_SPEC): Add missing comment end  be-
fore it.

Sat Aug 23 00:18:22 1997  Jeffrey A Law  (law@cygnus.com)

        *  pa.c  (pa_reorg): Always put begin_brtab and end_brtab
insns          around  branch  tables.           *   pa.md   (be-
gin_brtab,  end_brtab):  Only  emit  the .begin_brtab         and
.end_brtab directives if TARGET_GAS.

Fri Aug 22 14:05:55 1997  Jim Wilson  <wilson@cygnus.com>

        * alias.c (true_dependence): Pass x_addr not x to varies.

        *  acconfig.h  (NEED_DECLARATION_CALLOC): Add.          *
configure.in:   Add   GCC_NEED_DECLARATION   call   for   calloc.
        *  rs6000/xm-rs6000.h  (malloc,  realloc,  calloc, free):
Delete         declarations.          * config.in, configure: Re-
generate.

Thu Aug 21 23:52:16 1997  John F. Carr  <jfc@mit.edu>

        *  alias.c  (find_base_value):  Improve handling of PLUS,
MINUS, and         LO_SUM.          (record_set):  Handle  LO_SUM
like  PLUS.          (init_alias_analysis): When following chains
of base addresses,         do not stop on reaching a hard  regis-
ter.

Thu Aug 21 20:17:37 1997  Jeffrey A Law  (law@cygnus.com)

        * version.c: Bump for new snapshot.

        *  alias.c  (init_alias_analysis):  When  simplifying the
reg_base_value         array, simplify entries for hard registers
too.

Wed Aug 20 12:35:47 1997  Dave Love  <d.love@dl.ac.uk>

        *  dwarf2.h (enum dwarf_call_frame_info): Remove trailing
comma from         list.

Wed Aug 20 11:58:33 1997  Jim Wilson  <wilson@cygnus.com>

        * stmt.c (start_cleanup_deferral,  end_cleanup_deferral):
Test         block_stack before dereferencing it.

Wed Aug 20 11:57:11 1997  Michael Meissner  <meissner@cygnus.com>

        * rs6000.h (ISSUE_RATE): Define  instead  of  MACHINE_is-
sue_rate.

Tue    Aug    19    17:10:56    1997     Jason    Merrill    <ja-
son@yorick.cygnus.com>

        * cplus-dem.c: Add 'extern' to prepends_underscore.

Tue Aug 19 09:34:57 1997  Jeffrey A Law  (law@cygnus.com)

        * haifa-sched.c (ISSUE_RATE):  Renamed  from  MACHINE_is-
sue_rate.          (get_issue_rate): Delete.          * pa.h (IS-
SUE_RATE): Define.

        * configure.in: Turn on haifa  by  default  for  the  PA.
        * configure: Rebuilt.          * pa.c (override_options):
Accept  -mschedule=7200  option.           (pa_adjust_cost):   No
longer   need   to  scale  costs  for  newer          processors.
        *  pa.h  (enum   processor_type):   Add   PROCESSOR_7200.
        * pa.md: Revamp scheduling parameters to work better with
        haifa.  Add scheduling parameters for the 7200.

        *   haifa-sched.c   (move_insn):   Reemit    notes    for
SCHED_GROUP_P          insns too.          (schedule_block): When
adjusting basic_block_{head,end}, account         for movement of
SCHED_GROUP_P insns too.

        * haifa-sched.c (debug_dependencies): Fix thinko.

        *  Makefile.in  (EXPECT,  RUNTEST, RUNTESTFLAGS): Define.
        (site.exp, check, check-g++, check-gcc): New targets.

        * haifa-sched.c: Make lots of variables static.

Tue Aug 19 07:18:34 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

Mon Aug 18 13:46:47 1997  Jim Wilson  <wilson@cygnus.com>

        *  Makefile.in  (stmp-multilib-sub):  Fix  typo  in  last
change.

Thu  Aug   7 10:33:13 1997  Manfred Hollstein  <manfred@s-direkt-
net.de>

        * Makefile.in (sub-makes): Pass the current value of LAN-
GUAGES  down          to  sub-makes to avoid building more passes
than the user might have         requested on the command line.

Sun Aug 17 15:42:17 1997  Dave Love  (d.love@dl.ac.uk)

        * configure.in: Expurgate  `broken_install'  (install  is
        autoconfed).

        *  configure.lang:  Substitute autoconfed ${INSTALL} (not
currently         relevant).

Sat Aug 16 01:08:12 1997  Jeffrey A Law  (law@cygnus.com)

        * loop.c (is_power_of_2,  is_conditional_branch):  Delete
unused           functions   and   declarations.            (ana-
lyze_loop_iterations):  Use  condjump_p.            (insert_bct):
Likewise.  Use exact_log2.

Fri Aug 15 23:48:32 1997  Jeffrey A Law  (law@cygnus.com)

        * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET
as needed.          (schedule_region): Likewise.          (sched-
ule_insns): Likewise.

        * PROJECTS: Update with Haifa stuff.

Fri Aug 15 12:49:56 1997  Jeffrey A Law  (law@cygnus.com)

        *  version.c:  Change  the  version  string to look like:
        egcs-2.90.00 970814 (gcc2-970802 experimental).

        * loop.c (is_conditional_branch): Make  definition  match
declaration.

        *  gcc.c: Take out experimental snapshot warning message.

Fri Aug 15 13:43:39 1997  Michael Meissner  <meissner@cygnus.com>

        *  haifa-sched.c  (debug_dependencies):  Use GET_NOTE_IN-
SN_NAME to         print out the names of the notes.   Print  out
the  name  of  the  insn          that  is not a note, and not an
{,CALL_,JUMP_}INSN.
        * version.c: Bump version to "gcc-3.0.0 970802 experimen-
tal".

        * gcc.info*: Rebuilt.

        * COPYING.g77, README.g77: New files.           *  real.c
(ereal_unto_float,  ereal_unto_double): New functions.          *
real.h  (ereal_unto_float,  ereal_unto_double):   Declare   them.
        (REAL_VALUE_UNTO_TARGET_DOUBLE,      REAL_VALUE_UNTO_TAR-
GET_SINGLE): Define.

Mon Aug 11 14:50:55 1997  Jeffrey A Law  (law@cygnus.com)

        * Integrate Haifa instruction scheduler.          * Make-
file.in  (ALL_CFLAGS):  Add  SCHED_CFLAGS.  Prefix all references
        to sched with  $(SCHED_CFLAGS.           *  configure.in:
Handle  --enable-haifa.          * configure: Rebuilt.          *
flags.h:  Add  new  flags  for   haifa   instruction   scheduler.
        *  genattrtab.c (expand_units): For haifa, don't subtract
one          when   computing   blockage.            *   toplev.h
(flag_schedule_interblock):       Haifa      scheduler      flag.
        (flag_schedule_speculative):                    Likewise.
        (flag_schedule_speculative_load):               Likewise.
        (flag_schedule_speculative_load_dangerous):     Likewise.
        (flag_schedule_reverse_before_reload):          Likewise.
        (flag_schedule_reverse_after_reload):           Likewise.
        (flag_branch_on_count_reg):   Likewise.            (f_op-
tions): Add Haifa switches.          (main): Turn off some  Haifa
options  if  appropriate macro is         defined.  Process Haifa
switches.          * unroll.c (iteration_info): No longer static,
since  Haifa          scheduler  uses it.          (unroll_loop):
Inform HAIFA scheduler about loop  unrolling  factor.           *
unroll.c  (unroll_loop):  Set loop_unroll_iter, loop_start_value.
        * loop.h (loop_unroll_factor, loop_number): Add HAIFA de-
cls.          * loop.h (loop_initial_value,loop_unroll_iter): New
globals.          * loop.c (loop_optimize): If HAIFA is  defined,
allocate  additional          storage  for  the  Haifa scheduler.
        (mark_loop_jump):  If  HAIFA  defined,   set   LABEL_OUT-
SIDE_LOOP_P   and          LABEL_NEXTREF.           (strength_re-
duce):   If    HAIFA    and    HAVE_decrement_and_branch_on_count
        are  defined, call analyze_loop_iterations and insert_bct
to use          countdown  loops.           (record_giv):  Refine
test  for  jumps  out  of  loops  if  HAIFA  is          defined.
        (analyze_loop_iterations): New function to identify if we
can  use          a countdown loop.          (insert_bct): Insert
countdown loop.          (instrument_loop_bct): Low level code to
insert  countdown  loop.          (loop_number): Calculate UID of
loop.          (indirect_jump_in_function_p): Return true  if  an
indirect  jump  is          in  the  function.           (is_pow-
er_of_2): Return true if value is a power of 2.          (is_con-
ditional_branch):   Return   true   if   insn  is  a  conditional
        jump.          (fix_bct_param): Process -fbct-{min,max}-N

-fregmove.           (regmove_dump_file,  regmove_time):  Define.
        (fatal_insn): Close the regmove dump file.          (com-
pile_file):  Initialize regmove_time; open/close the regmove dump
        file  as  needed.   Print   regmove   time   as   needed.
        (rest_of_compilation):  Run  regmove  pass  if requested,
dump         RTL after regmove if requested.          (main):  If
-O2  or  more, turn on regmove.  Handle dump switches.          *
regmove.c: New file.

Mon Aug 11 14:15:02 1997  Jeffrey A Law  (law@cygnus.com)

        * Integrate tlink patch from  jason@cygnus.com          *
gcc.c    (SWITCH_TAKES_ARG):    Add    'V',    'B'    and    'b'.
        (process_command): Increment n_switches for them.   Don't
discard          their args.  Validate them.          (main): Es-
cape " marks when creating COLLECT_GCC_OPTIONS.          From Ro-
han Lenard.          (process_command): Set include_prefixes from
COMPILER_PATH.          (main): Set  COLLECT_GCC_OPTIONS  sooner.
        *  confiugre.in:  Link  ../ld/ld.new to collect-ld rather
than real-ld.          *  tlink.c,  hash.c,  hash.h:  New  files.
        *   Makefile.in   (USE_COLLECT2):  Always  use  collect2.
        (collect2): Depend on and link  in  hash.o  and  tlink.o.
        (tlink.o, hash.o): Add dependencies.

Mon Aug 11 10:04:49 1997  Jeffrey A Law  (law@cygnus.com)

        *  Integrate  alias  analysis  changes  from  jfc@mit.edu
        * Makefile.in (OBJS):  Add  alias.o.           (alias.o):
Add   dependencies.           *  alias.c:  New  file.           *
sched.c: Remove alias analysis code.  It lives  in  alias.c  now.
        (sched_analyze_2):  Add new arguments to true_dependence.
        (schedule_insns):   Always   call    init_alias_analysis.
        *  calls.c  (expand_call):  Note calls to malloc, calloc,
and realloc;         mark return value from such functions  as  a
pointer  and keep track of         them for alias analysis.  If a
return value from a function is a          pointer,  mark  it  as
such.             *    combine.c    (distribute_notes):    Handle
REG_NOALIAS.          * cse.c (struct  write_data):  Delete.   No
longer  needed.           (invalidate):  Don't  call set_nonvary-
ing_address_components anymore.          Use  true_dependence  to
decide if an entry should be removed from         the hash table.
        (invalidate_memory): Remove WRITES argument, simplify ap-
propriately.           Fix  all callers.          (note_mem_writ-
ten):  Similarly  for   WRITE_PTR   argument.            (invali-
date_from_clobbers):  Similarly for W argument.          (invali-
date_for_call): Remove  memory  elements  from  the  hash  table.
        (refers_to_mem_p,     cse_rtx_addr_varies_p):    Deleted.
        (cse_rtx_varies_p):  New  function.   Derived  from   old
        cse_rtx_addr_varies_p.              (cse_insn):    Remove
WRITES_MEMORY   and   INIT   variables   and   all    references.
        Don't call note_mem_written anymore.  Stack pushes inval-
idate the stack         pointer if PUSH_ROUNDING is defined.   No
        (prescan_loop):  Only  non-constant calls set unknown_ad-
dress_altered.           (invariant_p):  Add  new  arguments   to
true_dependence.           (record_giv):  Initialize unrolled and
shared fields.          (emit_iv_add_mult): Call record_base_val-
ue  as needed.          * loop.h (struct induction): Add unrolled
and  shared  fields.           *  unroll.c   (unroll_loop):  Call
record_base_value as needed.          (copy_loop_body): Likewise.
        (final_biv_value): Likewise.           (final_giv_value):
Likewise.          (find_splittable_regs): Likewise.  Only create
one new pseudo         if we have multiple address GIVs that were
combined with the same         dst_reg GIV.  Note when a new reg-
ister   is   created   due   to   unrolling.            *   rtl.c
(reg_note_name):   Add   REG_NOALIAS.            *   rtl.h  (enum
reg_note):   Similarly.             (rtx_varies_p,    may_trap_p,
side_effects_p): Declare.          (volatile_refs_p, volatile_in-
sn_p,     remove_note):     Likewise.               (note_stores,
refers_to_regno_p,       reg_overlap_mentioned_p):      Likewise.
        (true_dependence,   read_dependence,    anti_dependence):
Likewise.             (output_dependence,    init_alias_analysis,
end_alias_analysis):      Likewise.               (mark_user_reg,
mark_reg_pointer): Likewise.

        * Integrate reload bugfix from Wilon which enables the PA
port         to bootstrap again.          *  reload1.c  (reload):
Sum  needs  for both OPADDR_ADDR and         OPERAND_ADDRESS when
computing    how    many     registers     an     insn     needs.
        (reload_reg_free_p):   OPADDR_ADDR   and  OPERAND_ADDRESS
reloads do         conflict.          (reload_reg_free_before_p):
Treat   OPERAND_ADDRESS  reloads  just  like          OPADDR_ADDR
reload.          (reload_reg_reaches_end_p): For RELOAD_FOR_OPAD-
DR_ADDR  insns, registers         in reload_reg_use_in_op_addr do
not   reach   the   end.            do   not   reach   the   end.
        (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
        RELOAD_FOR_OPERAND_ADDRESS.

Sun Aug 10 12:00:20 1997  Jeffrey A Law  (law@cygnus.com)

        * egcs project officially starts.

Local Variables: add-log-time-format: current-time-string End:













Man(1) output converted with man2html