
    Really Final Release:

    	o Removed the RELOAD_ALTER_STACK_OFFSETS() mods to the reload
	  pass. Instead the code uses the elim regs mechanism to fix up
	  the stack.

	o Updated the source to the FSF coding standards (make the
	  release impossible to diff with previsous releases).

    Final Release:

	o Updated to 2.6.3 (reload1.c patchs exist for 2.6.0 and 2.6.3,
	  see below).

	o Added #pragma interrupt to allow a routine to be used as an
	  interrupt handler. Using the pragma causes the routine to use
	  rti instead of rts, and forces a save of the ZXT pseudo
	  register (which may get clobbered).

	o Fixed bug in lshrqi3 which used aslb instead of lsrb.

	o Fixed bug in altered_frame_size which caused auto vars to be
	  indexed incorrectly when the stack was altered.

	o Added umulqihi3 to optimize when two QI mode operands are
	  multiplied and the result is stored in HI mode.

	o Changed sample/crt0.s to start at 0x1000, moved some things
	  (i.e. stack) around. You should modify this to represent the
	  memory map on your target board.

    Snapshot 2 update:

	o Updated current comments to reflect reality. Added additional
	  comments were confusion may exist.

	o Removed TARGET_GROM_LIB flag and all associated code. This
	  means that the extra ldd/std instructions surrounding jsr's no
	  longer exist. It also means that the crt0.s file for the GCB11
	  board was rewritten.

	o Created additional sample assembler modules to interface all
	  GCB11 routines to the gnu compiler.

	o Updated the RELOAD_ALTER_STACK_OFFSETS() modification to
	  reload1.c. It turns out that additional cases needed to be
	  factored in which could not be handled with the old interface.
	  The supplied patch must be applied to a virgin reload1.c module
	  in order to work.

	o It turns out that VALID_OFFSET_P() actually works!. This means
	  that in theory: the stack layout for the compiler could be
	  changed to have parameters grow down (to fix the
	  alter_stack_offsets hack), the output_swap_regx() code could be
	  completely removed, and gcc allowed to fix up stack offsets when
	  appropriate. However, it turns out that output_swap_regx()
	  generates better code than native gcc, so I left it as it was.

	o Added .module directive to beginning of each assembler file.

	o Fixed minor bug in aux_output_stab routine in storing 2 byte
	  register values.

	o Fixed bug in handle_pragma (added ungetc()).

	o Rewrote the notice_update_cc() routine, which wasn't doing a
	  very good job of noticing any cc updates. I also modified the
	  md file to remove addd #0 calls (which cleared the carry bit).
	  I'm not sure if the new version would work in every case, but
	  left NOTE's describing possible problems areas in the new
	  function.

	o Changed the md file for the following bugs/optimizations:

		- Removed addd #0 instructions (see above).

		- Added 'm' to tstqi constraints.

		- Removed tstb from tstqi instruction.

		- Added 'm' to cmpqi constraints.

		- Added checks for #0 to mov instructions (use clr in
		  these cases).

		- Removed extra ldab in zero_extendqihi2.

		- Fixed comments in assembler output.

		- Optimized add/sub instructions for 1,-1,++,--.
		
		- Optimized andhi/iorhi for constants #0 - #255.

		- Replaces ldd #0 with clra,clrb in neghi2. 

		- Changed all shift instructions to inline code when
		  appropriate. 

	o Removed ZX* registers (i.e. A_REG class) from tm.h. All pseudo
	  registers are now either ZD* (general address & data registers)
	  or ZB* (QImode data registers). This eliminated unnecessary
	  reloads of address registers, and simplified the register
	  allocator. The crt0.s module was updated to declare the new
	  registers.

	o Added MOVE_RATIO to not inline memcpy's unless only a few moves
	  are needed.

    Snapshot update:

	o Updated to 2.6.0.

	o Added checks for floating point usage in machine description
	  and output asm macros. It now calls fatal() if found.

	o Changed usage of D register for passing arguments to be enabled
	  only when -mnogrom_lib is used.

	o Added TARGET_MEM_FUNCTIONS to use mem*() instead of b*()
	  functions.

	o Added pragma support for long_branch and short_branch.

	o Removed all machine descriptions for any SI mode instructions.

	o Changed operand constraints for all instructions to prefer
	  memory operands.

	o Updated crt0.s to fix bugs. The default runtime was updated to
	  run with the Coactive controller card.

	o Updated linker to not append ".s19" to the output file if the
	  command line already specified one (i.e. not generate a
	  "foo.s19.s19" output file). This facilitates using the compiler
	  in a makefile.

    Bugs fixed:

	o Fixed bug in not swapping negative offsets.

	o Fixed bugs in all shift instructions.

	o Fixed bugs (reported by Ran Talbott) in all qi instructions
	  when X and D pseudo registers where used.

	o Fixed bugs (reported by Darrin Jewell) in all div instructions.

	o Fixed bug (reported by Ran Talbott) in one_cmplqi2 instruction.

	o Added support for all div,mod,udiv instructions. This now means
	  that the compiler will never generate SI mode calls.

	o Added support for the compiler to issuing directives to load
	  data in ".area _DATA", bss in ".area _BSS", and code in ".area
	  _CODE".

	o Updated assembler to fixed signed char bug on some platforms.
