-*- text -*-
+* Added support for MIPS64 Release 2.
+
+* Added support for v850e1.
+
+* Added -n switch for x86 assembler. By default, x86 GAS replaces
+ multiple nop instructions used for alignment within code sections
+ with multi-byte nop instructions such as leal 0(%esi,1),%esi. This
+ switch disables the optimization.
+
+Changes in 2.14:
+
+* Added support for MIPS32 Release 2.
+
+* Added support for Xtensa architecture.
+
+* Support for Intel's iWMMXt processor (an ARM variant) added.
+
+* An assembler test generator has been contributed and an example file that
+ uses it (gas/testsuite/gas/all/test-gen.c and test-exmaple.c).
+
+* Support for SH2E added.
+
+* GASP has now been removed.
+
+* Support for Texas Instruments TMS320C4x and TMS320C3x series of
+ DSP's contributed by Michael Hayes and Svein E. Seldal.
+
+* Support for the Ubicom IP2xxx microcontroller added.
+
+Changes in 2.13:
+
+* Support for the Fujitsu FRV architecture added by Red Hat. Models for FR400
+ and FR500 included.
+
+* Support for DLX processor added.
+
+* GASP has now been deprecated and will be removed in a future release. Use
+ the macro facilities in GAS instead.
+
+* GASP now correctly parses floating point numbers. Unless the base is
+ explicitly specified, they are interpreted as decimal numbers regardless of
+ the currently specified base.
+
+Changes in 2.12:
+
+* Support for Don Knuth's MMIX, by Hans-Peter Nilsson.
+
+* Support for the OpenRISC 32-bit embedded processor by OpenCores.
+
+* The ARM assembler now accepts -march=..., -mcpu=... and -mfpu=... for
+ specifying the target instruction set. The old method of specifying the
+ target processor has been deprecated, but is still accepted for
+ compatibility.
+
+* Support for the VFP floating-point instruction set has been added to
+ the ARM assembler.
+
+* New psuedo op: .incbin to include a set of binary data at a given point
+ in the assembly. Contributed by Anders Norlander.
+
+* The MIPS assembler now accepts -march/-mtune. -mcpu has been deprecated
+ but still works for compatability.
+
+* The MIPS assembler no longer issues a warning by default when it
+ generates a nop instruction from a macro. The new command line option
+ -n will turn on the warning.
+
Changes in 2.11:
-Support for AMD x86-64 architecture, by Jan Hubicka, SuSE Labs.
+* Support for PDP-11 and 2.11BSD a.out format, by Lars Brinkhoff.
-Support for Motorola 68HC11 and 68HC12.
+* x86 gas now supports the full Pentium4 instruction set.
-Support for Texas Instruments TMS320C54x (tic54x).
+* Support for AMD x86-64 architecture, by Jan Hubicka, SuSE Labs.
-Support for IA-64.
+* Support for Motorola 68HC11 and 68HC12.
-Support for i860, by Jason Eckhardt.
+* Support for Texas Instruments TMS320C54x (tic54x).
-Support for CRIS (Axis Communications ETRAX series).
+* Support for IA-64.
-x86 gas has a new .arch pseudo op to specify the target CPU architecture.
+* Support for i860, by Jason Eckhardt.
-x86 gas -q command line option quietens warnings about register size changes
-due to suffix, indirect jmp/call without `*', stand-alone prefixes, and
-translating various deprecated floating point instructions.
+* Support for CRIS (Axis Communications ETRAX series).
+
+* x86 gas has a new .arch pseudo op to specify the target CPU architecture.
+
+* x86 gas -q command line option quietens warnings about register size changes
+ due to suffix, indirect jmp/call without `*', stand-alone prefixes, and
+ translating various deprecated floating point instructions.
Changes in 2.10:
-Support for the ARM msr instruction was changed to only allow an immediate
-operand when altering the flags field.
+* Support for the ARM msr instruction was changed to only allow an immediate
+ operand when altering the flags field.
-Support for ATMEL AVR.
+* Support for ATMEL AVR.
-Support for IBM 370 ELF. Somewhat experimental.
+* Support for IBM 370 ELF. Somewhat experimental.
-Support for numbers with suffixes.
+* Support for numbers with suffixes.
-Added support for breaking to the end of repeat loops.
+* Added support for breaking to the end of repeat loops.
-Added support for parallel instruction syntax (DOUBLEBAR_PARALLEL).
+* Added support for parallel instruction syntax (DOUBLEBAR_PARALLEL).
-New .elseif pseudo-op added.
+* New .elseif pseudo-op added.
-New --fatal-warnings option.
+* New --fatal-warnings option.
-picoJava architecture support added.
+* picoJava architecture support added.
-Motorola MCore 210 processor support added.
+* Motorola MCore 210 processor support added.
-A new pseudo-op .intel_syntax has been implemented to allow gas to parse i386
-assembly programs with intel syntax.
+* A new pseudo-op .intel_syntax has been implemented to allow gas to parse i386
+ assembly programs with intel syntax.
-New pseudo-ops .func,.endfunc to aid in debugging user-written assembler code.
+* New pseudo-ops .func,.endfunc to aid in debugging user-written assembler code.
-Added -gdwarf2 option to generate DWARF 2 debugging information.
+* Added -gdwarf2 option to generate DWARF 2 debugging information.
-Full 16-bit mode support for i386.
+* Full 16-bit mode support for i386.
-Greatly improved instruction operand checking for i386. This change will
-produce errors or warnings on incorrect assembly code that previous versions of
-gas accepted. If you get unexpected messages from code that worked with older
-versions of gas, please double check the code before reporting a bug.
+* Greatly improved instruction operand checking for i386. This change will
+ produce errors or warnings on incorrect assembly code that previous versions
+ of gas accepted. If you get unexpected messages from code that worked with
+ older versions of gas, please double check the code before reporting a bug.
-Weak symbol support added for COFF targets.
+* Weak symbol support added for COFF targets.
-Mitsubishi D30V support added.
+* Mitsubishi D30V support added.
-Texas Instruments c80 (tms320c80) support added.
+* Texas Instruments c80 (tms320c80) support added.
-i960 ELF support added.
+* i960 ELF support added.
-ARM ELF support added.
+* ARM ELF support added.
Changes in 2.9:
-Texas Instruments c30 (tms320c30) support added.
+* Texas Instruments c30 (tms320c30) support added.
-The assembler now optimizes the exception frame information generated by egcs
-and gcc 2.8. The new --traditional-format option disables this optimization.
+* The assembler now optimizes the exception frame information generated by egcs
+ and gcc 2.8. The new --traditional-format option disables this optimization.
-Added --gstabs option to generate stabs debugging information.
+* Added --gstabs option to generate stabs debugging information.
-The -a option takes a new suboption, m (e.g., -alm) to expand macros in a
-listing.
+* The -a option takes a new suboption, m (e.g., -alm) to expand macros in a
+ listing.
-Added -MD option to print dependencies.
+* Added -MD option to print dependencies.
Changes in 2.8:
-BeOS support added.
+* BeOS support added.
-MIPS16 support added.
+* MIPS16 support added.
-Motorola ColdFire 5200 support added (configure for m68k and use -m5200).
+* Motorola ColdFire 5200 support added (configure for m68k and use -m5200).
-Alpha/VMS support added.
+* Alpha/VMS support added.
-m68k options --base-size-default-16, --base-size-default-32,
---disp-size-default-16, and --disp-size-default-32 added.
+* m68k options --base-size-default-16, --base-size-default-32,
+ --disp-size-default-16, and --disp-size-default-32 added.
-The alignment directives now take an optional third argument, which is the
-maximum number of bytes to skip. If doing the alignment would require skipping
-more than the given number of bytes, the alignment is not done at all.
+* The alignment directives now take an optional third argument, which is the
+ maximum number of bytes to skip. If doing the alignment would require
+ skipping more than the given number of bytes, the alignment is not done at
+ all.
-The ELF assembler has a new pseudo-op, .symver, used for symbol versioning.
+* The ELF assembler has a new pseudo-op, .symver, used for symbol versioning.
-The -a option takes a new suboption, c (e.g., -alc), to skip false conditionals
-in listings.
+* The -a option takes a new suboption, c (e.g., -alc), to skip false
+ conditionals in listings.
-Added new pseudo-op, .equiv; it's like .equ, except that it is an error if the
-symbol is already defined.
+* Added new pseudo-op, .equiv; it's like .equ, except that it is an error if
+ the symbol is already defined.
Changes in 2.7:
-The PowerPC assembler now allows the use of symbolic register names (r0, etc.)
-if -mregnames is used. Symbolic names preceded by a '%' (%r0, etc.) can be
-used any time. PowerPC 860 move to/from SPR instructions have been added.
+* The PowerPC assembler now allows the use of symbolic register names (r0,
+ etc.) if -mregnames is used. Symbolic names preceded by a '%' (%r0, etc.)
+ can be used any time. PowerPC 860 move to/from SPR instructions have been
+ added.
-Alpha Linux (ELF) support added.
+* Alpha Linux (ELF) support added.
-PowerPC ELF support added.
+* PowerPC ELF support added.
-m68k Linux (ELF) support added.
+* m68k Linux (ELF) support added.
-i960 Hx/Jx support added.
+* i960 Hx/Jx support added.
-i386/PowerPC gnu-win32 support added.
+* i386/PowerPC gnu-win32 support added.
-SCO ELF support added. For OpenServer 5 targets (i386-unknown-sco3.2v5) the
-default is to build COFF-only support. To get a set of tools that generate ELF
-(they'll understand both COFF and ELF), you must configure with
-target=i386-unknown-sco3.2v5elf.
+* SCO ELF support added. For OpenServer 5 targets (i386-unknown-sco3.2v5) the
+ default is to build COFF-only support. To get a set of tools that generate
+ ELF (they'll understand both COFF and ELF), you must configure with
+ target=i386-unknown-sco3.2v5elf.
-m88k-motorola-sysv3* support added.
+* m88k-motorola-sysv3* support added.
Changes in 2.6:
-Gas now directly supports macros, without requiring GASP.
+* Gas now directly supports macros, without requiring GASP.
-Gas now has an MRI assembler compatibility mode. Use -M or --mri to select MRI
-mode. The pseudo-op ``.mri 1'' will switch into the MRI mode until the ``.mri
-0'' is seen; this can be convenient for inline assembler code.
+* Gas now has an MRI assembler compatibility mode. Use -M or --mri to select
+ MRI mode. The pseudo-op ``.mri 1'' will switch into the MRI mode until the
+ ``.mri 0'' is seen; this can be convenient for inline assembler code.
-Added --defsym SYM=VALUE option.
+* Added --defsym SYM=VALUE option.
-Added -mips4 support to MIPS assembler.
+* Added -mips4 support to MIPS assembler.
-Added PIC support to Solaris and SPARC SunOS 4 assembler.
+* Added PIC support to Solaris and SPARC SunOS 4 assembler.
Changes in 2.4:
-Converted this directory to use an autoconf-generated configure script.
+* Converted this directory to use an autoconf-generated configure script.
-ARM support, from Richard Earnshaw.
+* ARM support, from Richard Earnshaw.
-Updated VMS support, from Pat Rankin, including considerably improved debugging
-support.
+* Updated VMS support, from Pat Rankin, including considerably improved
+ debugging support.
-Support for the control registers in the 68060.
+* Support for the control registers in the 68060.
-Handles (ignores) a new directive ".this_GCC_requires_the_GNU_assembler", to
-provide for possible future gcc changes, for targets where gas provides some
-features not available in the native assembler. If the native assembler is
-used, it should become obvious pretty quickly what the problem is.
+* Handles (ignores) a new directive ".this_GCC_requires_the_GNU_assembler", to
+ provide for possible future gcc changes, for targets where gas provides some
+ features not available in the native assembler. If the native assembler is
+ used, it should become obvious pretty quickly what the problem is.
-Usage message is available with "--help".
+* Usage message is available with "--help".
-The GNU Assembler Preprocessor (gasp) is included. (Actually, it was in 2.3
-also, but didn't get into the NEWS file.)
+* The GNU Assembler Preprocessor (gasp) is included. (Actually, it was in 2.3
+ also, but didn't get into the NEWS file.)
-Weak symbol support for a.out.
+* Weak symbol support for a.out.
-A bug in the listing code which could cause an infinite loop has been fixed.
-Bugs in listings when generating a COFF object file have also been fixed.
+* A bug in the listing code which could cause an infinite loop has been fixed.
+ Bugs in listings when generating a COFF object file have also been fixed.
-Initial i386-svr4 PIC implementation from Eric Youngdale, based on code by Paul
-Kranenburg.
+* Initial i386-svr4 PIC implementation from Eric Youngdale, based on code by
+ Paul Kranenburg.
-Improved Alpha support. Immediate constants can have a much larger range now.
-Support for the 21164 has been contributed by Digital.
+* Improved Alpha support. Immediate constants can have a much larger range
+ now. Support for the 21164 has been contributed by Digital.
-Updated ns32k (pc532-mach, netbsd532) support from Ian Dall.
+* Updated ns32k (pc532-mach, netbsd532) support from Ian Dall.
Changes in 2.3:
-Mach i386 support, by David Mackenzie and Ken Raeburn.
+* Mach i386 support, by David Mackenzie and Ken Raeburn.
-RS/6000 and PowerPC support by Ian Taylor.
+* RS/6000 and PowerPC support by Ian Taylor.
-VMS command scripts (make-gas.com, config-gas.com) have been worked on a bit,
-based on mail received from various people. The `-h#' option should work again
-too.
+* VMS command scripts (make-gas.com, config-gas.com) have been worked on a bit,
+ based on mail received from various people. The `-h#' option should work
+ again too.
-HP-PA work, by Jeff Law. Note, for the PA, gas-2.3 has been designed to work
-with gdb-4.12 and gcc-2.6. As gcc-2.6 has not been released yet, a special
-version of gcc-2.5.8 has been patched to work with gas-2.3. You can retrieve
-this special version of gcc-2.5.8 via anonymous ftp from jaguar.cs.utah.edu
-in the "dist" directory.
+* HP-PA work, by Jeff Law. Note, for the PA, gas-2.3 has been designed to work
+ with gdb-4.12 and gcc-2.6. As gcc-2.6 has not been released yet, a special
+ version of gcc-2.5.8 has been patched to work with gas-2.3. You can retrieve
+ this special version of gcc-2.5.8 via anonymous ftp from jaguar.cs.utah.edu
+ in the "dist" directory.
-Vax support in gas fixed for BSD, so it builds and seems to run a couple simple
-tests okay. I haven't put it through extensive testing. (GNU make is
-currently required for BSD 4.3 builds.)
+* Vax support in gas fixed for BSD, so it builds and seems to run a couple
+ simple tests okay. I haven't put it through extensive testing. (GNU make is
+ currently required for BSD 4.3 builds.)
-Support for the DEC Alpha, running OSF/1 (ECOFF format). The gas support is
-based on code donated by CMU, which used an a.out-based format. I'm afraid the
-alpha-a.out support is pretty badly mangled, and much of it removed; making it
-work will require rewriting it as BFD support for the format anyways.
+* Support for the DEC Alpha, running OSF/1 (ECOFF format). The gas support is
+ based on code donated by CMU, which used an a.out-based format. I'm afraid
+ the alpha-a.out support is pretty badly mangled, and much of it removed;
+ making it work will require rewriting it as BFD support for the format anyways.
-Irix 5 support.
+* Irix 5 support.
-The test suites have been fixed up a bit, so that they should work with a
-couple different versions of expect and dejagnu.
+* The test suites have been fixed up a bit, so that they should work with a
+ couple different versions of expect and dejagnu.
-Symbols' values are now handled internally as expressions, permitting more
-flexibility in evaluating them in some cases. Some details of relocation
-handling have also changed, and simple constant pool management has been added,
-to make the Alpha port easier.
+* Symbols' values are now handled internally as expressions, permitting more
+ flexibility in evaluating them in some cases. Some details of relocation
+ handling have also changed, and simple constant pool management has been
+ added, to make the Alpha port easier.
-New option "--statistics" for printing out program run times. This is intended
-to be used with the gcc "-Q" option, which prints out times spent in various
-phases of compilation. (You should be able to get all of them printed out with
-"gcc -Q -Wa,--statistics", I think.)
-
-----------------------------------------------------------------
+* New option "--statistics" for printing out program run times. This is
+ intended to be used with the gcc "-Q" option, which prints out times spent in
+ various phases of compilation. (You should be able to get all of them
+ printed out with "gcc -Q -Wa,--statistics", I think.)
Changes in 2.2:
-RS/6000 AIX and MIPS SGI Irix 5 support has been added.
-
-Configurations that are still in development (and therefore are convenient to
-have listed in configure.in) still get rejected without a minor change to
-gas/Makefile.in, so people not doing development work shouldn't get the
-impression that support for such configurations is actually believed to be
-reliable.
+* RS/6000 AIX and MIPS SGI Irix 5 support has been added.
-The program name (usually "as") is printed when a fatal error message is
-displayed. This should prevent some confusion about the source of occasional
-messages about "internal errors".
+* Configurations that are still in development (and therefore are convenient to
+ have listed in configure.in) still get rejected without a minor change to
+ gas/Makefile.in, so people not doing development work shouldn't get the
+ impression that support for such configurations is actually believed to be
+ reliable.
-ELF support is falling into place. Support for the 386 should be working.
-Support for SPARC Solaris is in. HPPA support from Utah is being integrated.
+* The program name (usually "as") is printed when a fatal error message is
+ displayed. This should prevent some confusion about the source of occasional
+ messages about "internal errors".
-Symbol values are maintained as expressions instead of being immediately boiled
-down to add-symbol, sub-symbol, and constant. This permits slightly more
-complex calculations involving symbols whose values are not alreadey known.
+* ELF support is falling into place. Support for the 386 should be working.
+ Support for SPARC Solaris is in. HPPA support from Utah is being integrated.
-DBX-style debugging info ("stabs") is now supported for COFF formats.
-If any stabs directives are seen in the source, GAS will create two new
-sections: a ".stab" and a ".stabstr" section. The format of the .stab
-section is nearly identical to the a.out symbol format, and .stabstr is
-its string table. For this to be useful, you must have configured GCC
-to generate stabs (by defining DBX_DEBUGGING_INFO), and must have a GDB
-that can use the stab sections (4.11 or later).
+* Symbol values are maintained as expressions instead of being immediately
+ boiled down to add-symbol, sub-symbol, and constant. This permits slightly
+ more complex calculations involving symbols whose values are not alreadey
+ known.
-LynxOS, on i386 and m68k platforms, is now supported. SPARC LynxOS
-support is in progress.
+* DBX-style debugging info ("stabs") is now supported for COFF formats.
+ If any stabs directives are seen in the source, GAS will create two new
+ sections: a ".stab" and a ".stabstr" section. The format of the .stab
+ section is nearly identical to the a.out symbol format, and .stabstr is
+ its string table. For this to be useful, you must have configured GCC
+ to generate stabs (by defining DBX_DEBUGGING_INFO), and must have a GDB
+ that can use the stab sections (4.11 or later).
-----------------------------------------------------------------
+* LynxOS, on i386 and m68k platforms, is now supported. SPARC LynxOS
+ support is in progress.
Changes in 2.1:
-Several small fixes for i386-aix (PS/2) support from Minh Tran-Le have been
-incorporated, but not well tested yet.
+* Several small fixes for i386-aix (PS/2) support from Minh Tran-Le have been
+ incorporated, but not well tested yet.
-Altered the opcode table split for m68k; it should require less VM to compile
-with gcc now.
+* Altered the opcode table split for m68k; it should require less VM to compile
+ with gcc now.
-Some minor adjustments to add (Convergent Technologies') Miniframe support,
-suggested by Ronald Cole.
+* Some minor adjustments to add (Convergent Technologies') Miniframe support,
+ suggested by Ronald Cole.
-HPPA support (running OSF only, not HPUX) has been contributed by Utah. This
-includes improved ELF support, which I've started adapting for SPARC Solaris
-2.x. Integration isn't completely, so it probably won't work.
+* HPPA support (running OSF only, not HPUX) has been contributed by Utah. This
+ includes improved ELF support, which I've started adapting for SPARC Solaris
+ 2.x. Integration isn't completely, so it probably won't work.
-HP9000/300 support, donated by HP, has been merged in.
+* HP9000/300 support, donated by HP, has been merged in.
-Ian Taylor has finished the MIPS ECOFF (Ultrix, Irix) support.
+* Ian Taylor has finished the MIPS ECOFF (Ultrix, Irix) support.
-Better error messages for unsupported configurations (e.g., hppa-hpux).
+* Better error messages for unsupported configurations (e.g., hppa-hpux).
-Test suite framework is starting to become reasonable.
-
-----------------------------------------------------------------
+* Test suite framework is starting to become reasonable.
Changes in 2.0:
-Mostly bug fixes.
-
-Some more merging of BFD and ELF code, but ELF still doesn't work.
+* Mostly bug fixes.
-----------------------------------------------------------------
+* Some more merging of BFD and ELF code, but ELF still doesn't work.
Changes in 1.94:
-BFD merge is partly done. Adventurous souls may try giving configure the
-"--with-bfd-assembler" option. Currently, ELF format requires it, a.out format
-accepts it; SPARC CPU accepts it. It's the default only for OS "elf" or
-"solaris". (ELF isn't really supported yet. It needs work. I've got some
-code from Utah for HP-PA ELF, and from DG for m88k ELF, but they're not fully
-merged yet.)
-
-The 68K opcode table has been split in half. It should now compile under gcc
-without consuming ridiculous amounts of memory.
+* BFD merge is partly done. Adventurous souls may try giving configure the
+ "--with-bfd-assembler" option. Currently, ELF format requires it, a.out
+ format accepts it; SPARC CPU accepts it. It's the default only for OS "elf"
+ or "solaris". (ELF isn't really supported yet. It needs work. I've got
+ some code from Utah for HP-PA ELF, and from DG for m88k ELF, but they're not
+ fully merged yet.)
-A couple data structures have been reduced in size. This should result in
-saving a little bit of space at runtime.
+* The 68K opcode table has been split in half. It should now compile under gcc
+ without consuming ridiculous amounts of memory.
-Support for MIPS, from OSF and Ralph Campbell, has been merged in. The OSF
-code provided ROSE format support, which I haven't merged in yet. (I can make
-it available, if anyone wants to try it out.) Ralph's code, for BSD 4.4,
-supports a.out format. We don't have ECOFF support in just yet; it's coming.
+* A couple data structures have been reduced in size. This should result in
+ saving a little bit of space at runtime.
-Support for the Hitachi H8/500 has been added.
+* Support for MIPS, from OSF and Ralph Campbell, has been merged in. The OSF
+ code provided ROSE format support, which I haven't merged in yet. (I can
+ make it available, if anyone wants to try it out.) Ralph's code, for BSD
+ 4.4, supports a.out format. We don't have ECOFF support in just yet; it's
+ coming.
-VMS host and target support should be working now, thanks chiefly to Eric
-Youngdale.
+* Support for the Hitachi H8/500 has been added.
-----------------------------------------------------------------
+* VMS host and target support should be working now, thanks chiefly to Eric
+ Youngdale.
Changes in 1.93.01:
-For m68k, support for more processors has been added: 68040, CPU32, 68851.
+* For m68k, support for more processors has been added: 68040, CPU32, 68851.
-For i386, .align is now power-of-two; was number-of-bytes.
+* For i386, .align is now power-of-two; was number-of-bytes.
-For m68k, "%" is now accepted before register names. For COFF format, which
-doesn't use underscore prefixes for C labels, it is required, so variable "a0"
-can be distinguished from the register.
+* For m68k, "%" is now accepted before register names. For COFF format, which
+ doesn't use underscore prefixes for C labels, it is required, so variable "a0"
+ can be distinguished from the register.
-Last public release was 1.38. Lots of configuration changes since then, lots
-of new CPUs and formats, lots of bugs fixed.
+* Last public release was 1.38. Lots of configuration changes since then, lots
+ of new CPUs and formats, lots of bugs fixed.
\f
Local variables: