1-*- text -*- 2* Support for the National Semiconductor CR16 target has been added. 3 4* Added gas .reloc pseudo. This is a low-level interface for creating 5 relocations. 6 7* Add support for x86_64 PE+ target. 8 9* Add support for Score target. 10 11* Support for the Infineon XC16X has been added by KPIT Cummins Infosystems. 12 13* Support for ms2 architecture has been added. 14 15* Support for the Z80 processor family has been added. 16 17* Add support for the "@<file>" syntax to the command line, so that extra 18 switches can be read from <file>. 19 20* The SH target supports a new command line switch --enable-reg-prefix which, 21 if enabled, will allow register names to be optionally prefixed with a $ 22 character. This allows register names to be distinguished from label names. 23 24* Macros with a variable number of arguments are now supported. See the 25 documentation for how this works. 26 27* Added --reduce-memory-overheads switch to reduce the size of the hash 28 tables used, at the expense of longer assembly times, and 29 --hash-size=<NUMBER> to set the size of the hash tables used by gas. 30 31* Macro names and macro parameter names can now be any identifier that would 32 also be legal as a symbol elsewhere. For macro parameter names, this is 33 known to cause problems in certain sources when the respective target uses 34 characters inconsistently, and thus macro parameter references may no longer 35 be recognized as such (see the documentation for details). 36 37* Support the .f_floating, .d_floating, .g_floating and .h_floating directives 38 for the VAX target in order to be more compatible with the VAX MACRO 39 assembler. 40 41* New command line option -mtune=[itanium1|itanium2] for IA64 targets. 42 43Changes in 2.16: 44 45* Redefinition of macros now results in an error. 46 47* New command line option -mhint.b=[ok|warning|error] for IA64 targets. 48 49* New command line option -munwind-check=[warning|error] for IA64 50 targets. 51 52* The IA64 port now uses automatic dependency violation removal as its default 53 mode. 54 55* Port to MAXQ processor contributed by HCL Tech. 56 57* Added support for generating unwind tables for ARM ELF targets. 58 59* Add a -g command line option to generate debug information in the target's 60 preferred debug format. 61 62* Support for the crx-elf target added. 63 64* Support for the sh-symbianelf target added. 65 66* Added a pseudo-op (.secrel32) to generate 32 bit section relative relocations 67 on pe[i]-i386; required for this target's DWARF 2 support. 68 69* Support for Motorola MCF521x/5249/547x/548x added. 70 71* Support for ColdFire EMAC instructions added and Motorola syntax for MAC/EMAC 72 instrucitons. 73 74* New command line option -mno-shared for MIPS ELF targets. 75 76* New command line option --alternate and pseudo-ops .altmacro and .noaltmacro 77 added to enter (and leave) alternate macro syntax mode. 78 79Changes in 2.15: 80 81* The MIPS -membedded-pic option (Embedded-PIC code generation) is 82 deprecated and will be removed in a future release. 83 84* Added PIC m32r Linux (ELF) and support to M32R assembler. 85 86* Added support for ARM V6. 87 88* Added support for sh4a and variants. 89 90* Support for Renesas M32R2 added. 91 92* Limited support for Mapping Symbols as specified in the ARM ELF 93 specification has been added to the arm assembler. 94 95* On ARM architectures, added a new gas directive ".unreq" that undoes 96 definitions created by ".req". 97 98* Support for Motorola ColdFire MCF528x added. 99 100* Added --gstabs+ switch to enable the generation of STABS debug format 101 information with GNU extensions. 102 103* Added support for MIPS64 Release 2. 104 105* Added support for v850e1. 106 107* Added -n switch for x86 assembler. By default, x86 GAS replaces 108 multiple nop instructions used for alignment within code sections 109 with multi-byte nop instructions such as leal 0(%esi,1),%esi. This 110 switch disables the optimization. 111 112* Removed -n option from MIPS assembler. It was not useful, and confused the 113 existing -non_shared option. 114 115Changes in 2.14: 116 117* Added support for MIPS32 Release 2. 118 119* Added support for Xtensa architecture. 120 121* Support for Intel's iWMMXt processor (an ARM variant) added. 122 123* An assembler test generator has been contributed and an example file that 124 uses it (gas/testsuite/gas/all/test-gen.c and test-exmaple.c). 125 126* Support for SH2E added. 127 128* GASP has now been removed. 129 130* Support for Texas Instruments TMS320C4x and TMS320C3x series of 131 DSP's contributed by Michael Hayes and Svein E. Seldal. 132 133* Support for the Ubicom IP2xxx microcontroller added. 134 135Changes in 2.13: 136 137* Support for the Fujitsu FRV architecture added by Red Hat. Models for FR400 138 and FR500 included. 139 140* Support for DLX processor added. 141 142* GASP has now been deprecated and will be removed in a future release. Use 143 the macro facilities in GAS instead. 144 145* GASP now correctly parses floating point numbers. Unless the base is 146 explicitly specified, they are interpreted as decimal numbers regardless of 147 the currently specified base. 148 149Changes in 2.12: 150 151* Support for Don Knuth's MMIX, by Hans-Peter Nilsson. 152 153* Support for the OpenRISC 32-bit embedded processor by OpenCores. 154 155* The ARM assembler now accepts -march=..., -mcpu=... and -mfpu=... for 156 specifying the target instruction set. The old method of specifying the 157 target processor has been deprecated, but is still accepted for 158 compatibility. 159 160* Support for the VFP floating-point instruction set has been added to 161 the ARM assembler. 162 163* New psuedo op: .incbin to include a set of binary data at a given point 164 in the assembly. Contributed by Anders Norlander. 165 166* The MIPS assembler now accepts -march/-mtune. -mcpu has been deprecated 167 but still works for compatability. 168 169* The MIPS assembler no longer issues a warning by default when it 170 generates a nop instruction from a macro. The new command line option 171 -n will turn on the warning. 172 173Changes in 2.11: 174 175* Support for PDP-11 and 2.11BSD a.out format, by Lars Brinkhoff. 176 177* x86 gas now supports the full Pentium4 instruction set. 178 179* Support for AMD x86-64 architecture, by Jan Hubicka, SuSE Labs. 180 181* Support for Motorola 68HC11 and 68HC12. 182 183* Support for Texas Instruments TMS320C54x (tic54x). 184 185* Support for IA-64. 186 187* Support for i860, by Jason Eckhardt. 188 189* Support for CRIS (Axis Communications ETRAX series). 190 191* x86 gas has a new .arch pseudo op to specify the target CPU architecture. 192 193* x86 gas -q command line option quietens warnings about register size changes 194 due to suffix, indirect jmp/call without `*', stand-alone prefixes, and 195 translating various deprecated floating point instructions. 196 197Changes in 2.10: 198 199* Support for the ARM msr instruction was changed to only allow an immediate 200 operand when altering the flags field. 201 202* Support for ATMEL AVR. 203 204* Support for IBM 370 ELF. Somewhat experimental. 205 206* Support for numbers with suffixes. 207 208* Added support for breaking to the end of repeat loops. 209 210* Added support for parallel instruction syntax (DOUBLEBAR_PARALLEL). 211 212* New .elseif pseudo-op added. 213 214* New --fatal-warnings option. 215 216* picoJava architecture support added. 217 218* Motorola MCore 210 processor support added. 219 220* A new pseudo-op .intel_syntax has been implemented to allow gas to parse i386 221 assembly programs with intel syntax. 222 223* New pseudo-ops .func,.endfunc to aid in debugging user-written assembler code. 224 225* Added -gdwarf2 option to generate DWARF 2 debugging information. 226 227* Full 16-bit mode support for i386. 228 229* Greatly improved instruction operand checking for i386. This change will 230 produce errors or warnings on incorrect assembly code that previous versions 231 of gas accepted. If you get unexpected messages from code that worked with 232 older versions of gas, please double check the code before reporting a bug. 233 234* Weak symbol support added for COFF targets. 235 236* Mitsubishi D30V support added. 237 238* Texas Instruments c80 (tms320c80) support added. 239 240* i960 ELF support added. 241 242* ARM ELF support added. 243 244Changes in 2.9: 245 246* Texas Instruments c30 (tms320c30) support added. 247 248* The assembler now optimizes the exception frame information generated by egcs 249 and gcc 2.8. The new --traditional-format option disables this optimization. 250 251* Added --gstabs option to generate stabs debugging information. 252 253* The -a option takes a new suboption, m (e.g., -alm) to expand macros in a 254 listing. 255 256* Added -MD option to print dependencies. 257 258Changes in 2.8: 259 260* BeOS support added. 261 262* MIPS16 support added. 263 264* Motorola ColdFire 5200 support added (configure for m68k and use -m5200). 265 266* Alpha/VMS support added. 267 268* m68k options --base-size-default-16, --base-size-default-32, 269 --disp-size-default-16, and --disp-size-default-32 added. 270 271* The alignment directives now take an optional third argument, which is the 272 maximum number of bytes to skip. If doing the alignment would require 273 skipping more than the given number of bytes, the alignment is not done at 274 all. 275 276* The ELF assembler has a new pseudo-op, .symver, used for symbol versioning. 277 278* The -a option takes a new suboption, c (e.g., -alc), to skip false 279 conditionals in listings. 280 281* Added new pseudo-op, .equiv; it's like .equ, except that it is an error if 282 the symbol is already defined. 283 284Changes in 2.7: 285 286* The PowerPC assembler now allows the use of symbolic register names (r0, 287 etc.) if -mregnames is used. Symbolic names preceded by a '%' (%r0, etc.) 288 can be used any time. PowerPC 860 move to/from SPR instructions have been 289 added. 290 291* Alpha Linux (ELF) support added. 292 293* PowerPC ELF support added. 294 295* m68k Linux (ELF) support added. 296 297* i960 Hx/Jx support added. 298 299* i386/PowerPC gnu-win32 support added. 300 301* SCO ELF support added. For OpenServer 5 targets (i386-unknown-sco3.2v5) the 302 default is to build COFF-only support. To get a set of tools that generate 303 ELF (they'll understand both COFF and ELF), you must configure with 304 target=i386-unknown-sco3.2v5elf. 305 306* m88k-motorola-sysv3* support added. 307 308Changes in 2.6: 309 310* Gas now directly supports macros, without requiring GASP. 311 312* Gas now has an MRI assembler compatibility mode. Use -M or --mri to select 313 MRI mode. The pseudo-op ``.mri 1'' will switch into the MRI mode until the 314 ``.mri 0'' is seen; this can be convenient for inline assembler code. 315 316* Added --defsym SYM=VALUE option. 317 318* Added -mips4 support to MIPS assembler. 319 320* Added PIC support to Solaris and SPARC SunOS 4 assembler. 321 322Changes in 2.4: 323 324* Converted this directory to use an autoconf-generated configure script. 325 326* ARM support, from Richard Earnshaw. 327 328* Updated VMS support, from Pat Rankin, including considerably improved 329 debugging support. 330 331* Support for the control registers in the 68060. 332 333* Handles (ignores) a new directive ".this_GCC_requires_the_GNU_assembler", to 334 provide for possible future gcc changes, for targets where gas provides some 335 features not available in the native assembler. If the native assembler is 336 used, it should become obvious pretty quickly what the problem is. 337 338* Usage message is available with "--help". 339 340* The GNU Assembler Preprocessor (gasp) is included. (Actually, it was in 2.3 341 also, but didn't get into the NEWS file.) 342 343* Weak symbol support for a.out. 344 345* A bug in the listing code which could cause an infinite loop has been fixed. 346 Bugs in listings when generating a COFF object file have also been fixed. 347 348* Initial i386-svr4 PIC implementation from Eric Youngdale, based on code by 349 Paul Kranenburg. 350 351* Improved Alpha support. Immediate constants can have a much larger range 352 now. Support for the 21164 has been contributed by Digital. 353 354* Updated ns32k (pc532-mach, netbsd532) support from Ian Dall. 355 356Changes in 2.3: 357 358* Mach i386 support, by David Mackenzie and Ken Raeburn. 359 360* RS/6000 and PowerPC support by Ian Taylor. 361 362* VMS command scripts (make-gas.com, config-gas.com) have been worked on a bit, 363 based on mail received from various people. The `-h#' option should work 364 again too. 365 366* HP-PA work, by Jeff Law. Note, for the PA, gas-2.3 has been designed to work 367 with gdb-4.12 and gcc-2.6. As gcc-2.6 has not been released yet, a special 368 version of gcc-2.5.8 has been patched to work with gas-2.3. You can retrieve 369 this special version of gcc-2.5.8 via anonymous ftp from jaguar.cs.utah.edu 370 in the "dist" directory. 371 372* Vax support in gas fixed for BSD, so it builds and seems to run a couple 373 simple tests okay. I haven't put it through extensive testing. (GNU make is 374 currently required for BSD 4.3 builds.) 375 376* Support for the DEC Alpha, running OSF/1 (ECOFF format). The gas support is 377 based on code donated by CMU, which used an a.out-based format. I'm afraid 378 the alpha-a.out support is pretty badly mangled, and much of it removed; 379 making it work will require rewriting it as BFD support for the format anyways. 380 381* Irix 5 support. 382 383* The test suites have been fixed up a bit, so that they should work with a 384 couple different versions of expect and dejagnu. 385 386* Symbols' values are now handled internally as expressions, permitting more 387 flexibility in evaluating them in some cases. Some details of relocation 388 handling have also changed, and simple constant pool management has been 389 added, to make the Alpha port easier. 390 391* New option "--statistics" for printing out program run times. This is 392 intended to be used with the gcc "-Q" option, which prints out times spent in 393 various phases of compilation. (You should be able to get all of them 394 printed out with "gcc -Q -Wa,--statistics", I think.) 395 396Changes in 2.2: 397 398* RS/6000 AIX and MIPS SGI Irix 5 support has been added. 399 400* Configurations that are still in development (and therefore are convenient to 401 have listed in configure.in) still get rejected without a minor change to 402 gas/Makefile.in, so people not doing development work shouldn't get the 403 impression that support for such configurations is actually believed to be 404 reliable. 405 406* The program name (usually "as") is printed when a fatal error message is 407 displayed. This should prevent some confusion about the source of occasional 408 messages about "internal errors". 409 410* ELF support is falling into place. Support for the 386 should be working. 411 Support for SPARC Solaris is in. HPPA support from Utah is being integrated. 412 413* Symbol values are maintained as expressions instead of being immediately 414 boiled down to add-symbol, sub-symbol, and constant. This permits slightly 415 more complex calculations involving symbols whose values are not alreadey 416 known. 417 418* DBX-style debugging info ("stabs") is now supported for COFF formats. 419 If any stabs directives are seen in the source, GAS will create two new 420 sections: a ".stab" and a ".stabstr" section. The format of the .stab 421 section is nearly identical to the a.out symbol format, and .stabstr is 422 its string table. For this to be useful, you must have configured GCC 423 to generate stabs (by defining DBX_DEBUGGING_INFO), and must have a GDB 424 that can use the stab sections (4.11 or later). 425 426* LynxOS, on i386 and m68k platforms, is now supported. SPARC LynxOS 427 support is in progress. 428 429Changes in 2.1: 430 431* Several small fixes for i386-aix (PS/2) support from Minh Tran-Le have been 432 incorporated, but not well tested yet. 433 434* Altered the opcode table split for m68k; it should require less VM to compile 435 with gcc now. 436 437* Some minor adjustments to add (Convergent Technologies') Miniframe support, 438 suggested by Ronald Cole. 439 440* HPPA support (running OSF only, not HPUX) has been contributed by Utah. This 441 includes improved ELF support, which I've started adapting for SPARC Solaris 442 2.x. Integration isn't completely, so it probably won't work. 443 444* HP9000/300 support, donated by HP, has been merged in. 445 446* Ian Taylor has finished the MIPS ECOFF (Ultrix, Irix) support. 447 448* Better error messages for unsupported configurations (e.g., hppa-hpux). 449 450* Test suite framework is starting to become reasonable. 451 452Changes in 2.0: 453 454* Mostly bug fixes. 455 456* Some more merging of BFD and ELF code, but ELF still doesn't work. 457 458Changes in 1.94: 459 460* BFD merge is partly done. Adventurous souls may try giving configure the 461 "--with-bfd-assembler" option. Currently, ELF format requires it, a.out 462 format accepts it; SPARC CPU accepts it. It's the default only for OS "elf" 463 or "solaris". (ELF isn't really supported yet. It needs work. I've got 464 some code from Utah for HP-PA ELF, and from DG for m88k ELF, but they're not 465 fully merged yet.) 466 467* The 68K opcode table has been split in half. It should now compile under gcc 468 without consuming ridiculous amounts of memory. 469 470* A couple data structures have been reduced in size. This should result in 471 saving a little bit of space at runtime. 472 473* Support for MIPS, from OSF and Ralph Campbell, has been merged in. The OSF 474 code provided ROSE format support, which I haven't merged in yet. (I can 475 make it available, if anyone wants to try it out.) Ralph's code, for BSD 476 4.4, supports a.out format. We don't have ECOFF support in just yet; it's 477 coming. 478 479* Support for the Hitachi H8/500 has been added. 480 481* VMS host and target support should be working now, thanks chiefly to Eric 482 Youngdale. 483 484Changes in 1.93.01: 485 486* For m68k, support for more processors has been added: 68040, CPU32, 68851. 487 488* For i386, .align is now power-of-two; was number-of-bytes. 489 490* For m68k, "%" is now accepted before register names. For COFF format, which 491 doesn't use underscore prefixes for C labels, it is required, so variable "a0" 492 can be distinguished from the register. 493 494* Last public release was 1.38. Lots of configuration changes since then, lots 495 of new CPUs and formats, lots of bugs fixed. 496 497 498Local variables: 499fill-column: 79 500End: 501