2003-08-05 Jason Eckhardt <jle@rice.edu>
[deliverable/binutils-gdb.git] / gas / NEWS
CommitLineData
252b5132 1-*- text -*-
83518699 2
12b55ccc
L
3* Added -n switch for x86 assembler. By default, x86 GAS replaces
4 multiple nop instructions used for alignment within code sections
5 with multi-byte nop instructions such as leal 0(%esi,1),%esi. This
6 switch disables the optimization.
7
69be0a2b
CD
8* Added support for MIPS32 Release 2.
9
e8fd7476
NC
10* Added support for Xtensa architecture.
11
e16bb312
NC
12* Support for Intel's iWMMXt processor (an ARM variant) added.
13
cce4814f
NC
14* An assembler test generator has been contributed and an example file that
15 uses it (gas/testsuite/gas/all/test-gen.c and test-exmaple.c).
16
5177500f
NC
17* Support for SH2E added.
18
fea17916
NC
19* GASP has now been removed.
20
004d9caf
NC
21* Support for Texas Instruments TMS320C4x and TMS320C3x series of
22 DSP's contributed by Michael Hayes and Svein E. Seldal.
026df7c5 23
a40cbfa3
NC
24* Support for the Ubicom IP2xxx microcontroller added.
25
2cbb2eef
NC
26Changes in 2.13:
27
a40cbfa3
NC
28* Support for the Fujitsu FRV architecture added by Red Hat. Models for FR400
29 and FR500 included.
0ebb9a87 30
a40cbfa3 31* Support for DLX processor added.
52216602 32
a40cbfa3
NC
33* GASP has now been deprecated and will be removed in a future release. Use
34 the macro facilities in GAS instead.
3f965e60 35
a40cbfa3
NC
36* GASP now correctly parses floating point numbers. Unless the base is
37 explicitly specified, they are interpreted as decimal numbers regardless of
38 the currently specified base.
1ac57253 39
9a66911f
NC
40Changes in 2.12:
41
a40cbfa3 42* Support for Don Knuth's MMIX, by Hans-Peter Nilsson.
49fda6c8 43
a40cbfa3 44* Support for the OpenRISC 32-bit embedded processor by OpenCores.
3b16e843 45
a40cbfa3
NC
46* The ARM assembler now accepts -march=..., -mcpu=... and -mfpu=... for
47 specifying the target instruction set. The old method of specifying the
48 target processor has been deprecated, but is still accepted for
49 compatibility.
03b1477f 50
a40cbfa3
NC
51* Support for the VFP floating-point instruction set has been added to
52 the ARM assembler.
252b5132 53
a40cbfa3
NC
54* New psuedo op: .incbin to include a set of binary data at a given point
55 in the assembly. Contributed by Anders Norlander.
7e005732 56
a40cbfa3
NC
57* The MIPS assembler now accepts -march/-mtune. -mcpu has been deprecated
58 but still works for compatability.
ec68c924 59
a40cbfa3
NC
60* The MIPS assembler no longer issues a warning by default when it
61 generates a nop instruction from a macro. The new command line option
62 -n will turn on the warning.
63486801 63
2dac7317
JW
64Changes in 2.11:
65
500800ca
NC
66* Support for PDP-11 and 2.11BSD a.out format, by Lars Brinkhoff.
67
a40cbfa3 68* x86 gas now supports the full Pentium4 instruction set.
a167610d 69
a40cbfa3 70* Support for AMD x86-64 architecture, by Jan Hubicka, SuSE Labs.
c0d8940f 71
a40cbfa3 72* Support for Motorola 68HC11 and 68HC12.
df86943d 73
a40cbfa3 74* Support for Texas Instruments TMS320C54x (tic54x).
39bec121 75
a40cbfa3 76* Support for IA-64.
2dac7317 77
a40cbfa3 78* Support for i860, by Jason Eckhardt.
22b36938 79
a40cbfa3 80* Support for CRIS (Axis Communications ETRAX series).
5bcac8a4 81
a40cbfa3 82* x86 gas has a new .arch pseudo op to specify the target CPU architecture.
a38cf1db 83
a40cbfa3
NC
84* x86 gas -q command line option quietens warnings about register size changes
85 due to suffix, indirect jmp/call without `*', stand-alone prefixes, and
86 translating various deprecated floating point instructions.
a38cf1db 87
252b5132
RH
88Changes in 2.10:
89
a40cbfa3
NC
90* Support for the ARM msr instruction was changed to only allow an immediate
91 operand when altering the flags field.
d14442f4 92
a40cbfa3 93* Support for ATMEL AVR.
adde6300 94
a40cbfa3 95* Support for IBM 370 ELF. Somewhat experimental.
b5ebe70e 96
a40cbfa3 97* Support for numbers with suffixes.
3fd9f047 98
a40cbfa3 99* Added support for breaking to the end of repeat loops.
6a6987a9 100
a40cbfa3 101* Added support for parallel instruction syntax (DOUBLEBAR_PARALLEL).
6a6987a9 102
a40cbfa3 103* New .elseif pseudo-op added.
3fd9f047 104
a40cbfa3 105* New --fatal-warnings option.
1f776aa5 106
a40cbfa3 107* picoJava architecture support added.
252b5132 108
a40cbfa3 109* Motorola MCore 210 processor support added.
041dd5a9 110
a40cbfa3
NC
111* A new pseudo-op .intel_syntax has been implemented to allow gas to parse i386
112 assembly programs with intel syntax.
252b5132 113
a40cbfa3 114* New pseudo-ops .func,.endfunc to aid in debugging user-written assembler code.
252b5132 115
a40cbfa3 116* Added -gdwarf2 option to generate DWARF 2 debugging information.
041dd5a9 117
a40cbfa3 118* Full 16-bit mode support for i386.
252b5132 119
a40cbfa3
NC
120* Greatly improved instruction operand checking for i386. This change will
121 produce errors or warnings on incorrect assembly code that previous versions
122 of gas accepted. If you get unexpected messages from code that worked with
123 older versions of gas, please double check the code before reporting a bug.
252b5132 124
a40cbfa3 125* Weak symbol support added for COFF targets.
252b5132 126
a40cbfa3 127* Mitsubishi D30V support added.
252b5132 128
a40cbfa3 129* Texas Instruments c80 (tms320c80) support added.
252b5132 130
a40cbfa3 131* i960 ELF support added.
bedf545c 132
a40cbfa3 133* ARM ELF support added.
a057431b 134
252b5132
RH
135Changes in 2.9:
136
a40cbfa3 137* Texas Instruments c30 (tms320c30) support added.
252b5132 138
a40cbfa3
NC
139* The assembler now optimizes the exception frame information generated by egcs
140 and gcc 2.8. The new --traditional-format option disables this optimization.
252b5132 141
a40cbfa3 142* Added --gstabs option to generate stabs debugging information.
252b5132 143
a40cbfa3
NC
144* The -a option takes a new suboption, m (e.g., -alm) to expand macros in a
145 listing.
252b5132 146
a40cbfa3 147* Added -MD option to print dependencies.
252b5132
RH
148
149Changes in 2.8:
150
a40cbfa3 151* BeOS support added.
252b5132 152
a40cbfa3 153* MIPS16 support added.
252b5132 154
a40cbfa3 155* Motorola ColdFire 5200 support added (configure for m68k and use -m5200).
252b5132 156
a40cbfa3 157* Alpha/VMS support added.
252b5132 158
a40cbfa3
NC
159* m68k options --base-size-default-16, --base-size-default-32,
160 --disp-size-default-16, and --disp-size-default-32 added.
252b5132 161
a40cbfa3
NC
162* The alignment directives now take an optional third argument, which is the
163 maximum number of bytes to skip. If doing the alignment would require
164 skipping more than the given number of bytes, the alignment is not done at
165 all.
252b5132 166
a40cbfa3 167* The ELF assembler has a new pseudo-op, .symver, used for symbol versioning.
252b5132 168
a40cbfa3
NC
169* The -a option takes a new suboption, c (e.g., -alc), to skip false
170 conditionals in listings.
252b5132 171
a40cbfa3
NC
172* Added new pseudo-op, .equiv; it's like .equ, except that it is an error if
173 the symbol is already defined.
252b5132
RH
174
175Changes in 2.7:
176
a40cbfa3
NC
177* The PowerPC assembler now allows the use of symbolic register names (r0,
178 etc.) if -mregnames is used. Symbolic names preceded by a '%' (%r0, etc.)
179 can be used any time. PowerPC 860 move to/from SPR instructions have been
180 added.
252b5132 181
a40cbfa3 182* Alpha Linux (ELF) support added.
252b5132 183
a40cbfa3 184* PowerPC ELF support added.
252b5132 185
a40cbfa3 186* m68k Linux (ELF) support added.
252b5132 187
a40cbfa3 188* i960 Hx/Jx support added.
252b5132 189
a40cbfa3 190* i386/PowerPC gnu-win32 support added.
252b5132 191
a40cbfa3
NC
192* SCO ELF support added. For OpenServer 5 targets (i386-unknown-sco3.2v5) the
193 default is to build COFF-only support. To get a set of tools that generate
194 ELF (they'll understand both COFF and ELF), you must configure with
195 target=i386-unknown-sco3.2v5elf.
252b5132 196
a40cbfa3 197* m88k-motorola-sysv3* support added.
252b5132
RH
198
199Changes in 2.6:
200
a40cbfa3 201* Gas now directly supports macros, without requiring GASP.
252b5132 202
a40cbfa3
NC
203* Gas now has an MRI assembler compatibility mode. Use -M or --mri to select
204 MRI mode. The pseudo-op ``.mri 1'' will switch into the MRI mode until the
205 ``.mri 0'' is seen; this can be convenient for inline assembler code.
252b5132 206
a40cbfa3 207* Added --defsym SYM=VALUE option.
252b5132 208
a40cbfa3 209* Added -mips4 support to MIPS assembler.
252b5132 210
a40cbfa3 211* Added PIC support to Solaris and SPARC SunOS 4 assembler.
252b5132
RH
212
213Changes in 2.4:
214
a40cbfa3 215* Converted this directory to use an autoconf-generated configure script.
252b5132 216
a40cbfa3 217* ARM support, from Richard Earnshaw.
252b5132 218
a40cbfa3
NC
219* Updated VMS support, from Pat Rankin, including considerably improved
220 debugging support.
252b5132 221
a40cbfa3 222* Support for the control registers in the 68060.
252b5132 223
a40cbfa3
NC
224* Handles (ignores) a new directive ".this_GCC_requires_the_GNU_assembler", to
225 provide for possible future gcc changes, for targets where gas provides some
226 features not available in the native assembler. If the native assembler is
227 used, it should become obvious pretty quickly what the problem is.
252b5132 228
a40cbfa3 229* Usage message is available with "--help".
252b5132 230
a40cbfa3
NC
231* The GNU Assembler Preprocessor (gasp) is included. (Actually, it was in 2.3
232 also, but didn't get into the NEWS file.)
252b5132 233
a40cbfa3 234* Weak symbol support for a.out.
252b5132 235
a40cbfa3
NC
236* A bug in the listing code which could cause an infinite loop has been fixed.
237 Bugs in listings when generating a COFF object file have also been fixed.
252b5132 238
a40cbfa3
NC
239* Initial i386-svr4 PIC implementation from Eric Youngdale, based on code by
240 Paul Kranenburg.
252b5132 241
a40cbfa3
NC
242* Improved Alpha support. Immediate constants can have a much larger range
243 now. Support for the 21164 has been contributed by Digital.
252b5132 244
a40cbfa3 245* Updated ns32k (pc532-mach, netbsd532) support from Ian Dall.
252b5132
RH
246
247Changes in 2.3:
248
a40cbfa3 249* Mach i386 support, by David Mackenzie and Ken Raeburn.
252b5132 250
a40cbfa3 251* RS/6000 and PowerPC support by Ian Taylor.
252b5132 252
a40cbfa3
NC
253* VMS command scripts (make-gas.com, config-gas.com) have been worked on a bit,
254 based on mail received from various people. The `-h#' option should work
255 again too.
252b5132 256
a40cbfa3
NC
257* HP-PA work, by Jeff Law. Note, for the PA, gas-2.3 has been designed to work
258 with gdb-4.12 and gcc-2.6. As gcc-2.6 has not been released yet, a special
259 version of gcc-2.5.8 has been patched to work with gas-2.3. You can retrieve
260 this special version of gcc-2.5.8 via anonymous ftp from jaguar.cs.utah.edu
261 in the "dist" directory.
252b5132 262
a40cbfa3
NC
263* Vax support in gas fixed for BSD, so it builds and seems to run a couple
264 simple tests okay. I haven't put it through extensive testing. (GNU make is
265 currently required for BSD 4.3 builds.)
252b5132 266
a40cbfa3
NC
267* Support for the DEC Alpha, running OSF/1 (ECOFF format). The gas support is
268 based on code donated by CMU, which used an a.out-based format. I'm afraid
269 the alpha-a.out support is pretty badly mangled, and much of it removed;
270 making it work will require rewriting it as BFD support for the format anyways.
252b5132 271
a40cbfa3 272* Irix 5 support.
252b5132 273
a40cbfa3
NC
274* The test suites have been fixed up a bit, so that they should work with a
275 couple different versions of expect and dejagnu.
252b5132 276
a40cbfa3
NC
277* Symbols' values are now handled internally as expressions, permitting more
278 flexibility in evaluating them in some cases. Some details of relocation
279 handling have also changed, and simple constant pool management has been
280 added, to make the Alpha port easier.
252b5132 281
a40cbfa3
NC
282* New option "--statistics" for printing out program run times. This is
283 intended to be used with the gcc "-Q" option, which prints out times spent in
284 various phases of compilation. (You should be able to get all of them
285 printed out with "gcc -Q -Wa,--statistics", I think.)
252b5132
RH
286
287Changes in 2.2:
288
a40cbfa3 289* RS/6000 AIX and MIPS SGI Irix 5 support has been added.
252b5132 290
a40cbfa3
NC
291* Configurations that are still in development (and therefore are convenient to
292 have listed in configure.in) still get rejected without a minor change to
293 gas/Makefile.in, so people not doing development work shouldn't get the
294 impression that support for such configurations is actually believed to be
295 reliable.
252b5132 296
a40cbfa3
NC
297* The program name (usually "as") is printed when a fatal error message is
298 displayed. This should prevent some confusion about the source of occasional
299 messages about "internal errors".
252b5132 300
a40cbfa3
NC
301* ELF support is falling into place. Support for the 386 should be working.
302 Support for SPARC Solaris is in. HPPA support from Utah is being integrated.
252b5132 303
a40cbfa3
NC
304* Symbol values are maintained as expressions instead of being immediately
305 boiled down to add-symbol, sub-symbol, and constant. This permits slightly
306 more complex calculations involving symbols whose values are not alreadey
307 known.
252b5132 308
a40cbfa3
NC
309* DBX-style debugging info ("stabs") is now supported for COFF formats.
310 If any stabs directives are seen in the source, GAS will create two new
311 sections: a ".stab" and a ".stabstr" section. The format of the .stab
312 section is nearly identical to the a.out symbol format, and .stabstr is
313 its string table. For this to be useful, you must have configured GCC
314 to generate stabs (by defining DBX_DEBUGGING_INFO), and must have a GDB
315 that can use the stab sections (4.11 or later).
252b5132 316
a40cbfa3
NC
317* LynxOS, on i386 and m68k platforms, is now supported. SPARC LynxOS
318 support is in progress.
252b5132
RH
319
320Changes in 2.1:
321
a40cbfa3
NC
322* Several small fixes for i386-aix (PS/2) support from Minh Tran-Le have been
323 incorporated, but not well tested yet.
252b5132 324
a40cbfa3
NC
325* Altered the opcode table split for m68k; it should require less VM to compile
326 with gcc now.
252b5132 327
a40cbfa3
NC
328* Some minor adjustments to add (Convergent Technologies') Miniframe support,
329 suggested by Ronald Cole.
252b5132 330
a40cbfa3
NC
331* HPPA support (running OSF only, not HPUX) has been contributed by Utah. This
332 includes improved ELF support, which I've started adapting for SPARC Solaris
333 2.x. Integration isn't completely, so it probably won't work.
252b5132 334
a40cbfa3 335* HP9000/300 support, donated by HP, has been merged in.
252b5132 336
a40cbfa3 337* Ian Taylor has finished the MIPS ECOFF (Ultrix, Irix) support.
252b5132 338
a40cbfa3 339* Better error messages for unsupported configurations (e.g., hppa-hpux).
252b5132 340
a40cbfa3 341* Test suite framework is starting to become reasonable.
252b5132
RH
342
343Changes in 2.0:
344
a40cbfa3 345* Mostly bug fixes.
252b5132 346
a40cbfa3 347* Some more merging of BFD and ELF code, but ELF still doesn't work.
252b5132
RH
348
349Changes in 1.94:
350
a40cbfa3
NC
351* BFD merge is partly done. Adventurous souls may try giving configure the
352 "--with-bfd-assembler" option. Currently, ELF format requires it, a.out
353 format accepts it; SPARC CPU accepts it. It's the default only for OS "elf"
354 or "solaris". (ELF isn't really supported yet. It needs work. I've got
355 some code from Utah for HP-PA ELF, and from DG for m88k ELF, but they're not
356 fully merged yet.)
252b5132 357
a40cbfa3
NC
358* The 68K opcode table has been split in half. It should now compile under gcc
359 without consuming ridiculous amounts of memory.
252b5132 360
a40cbfa3
NC
361* A couple data structures have been reduced in size. This should result in
362 saving a little bit of space at runtime.
252b5132 363
a40cbfa3
NC
364* Support for MIPS, from OSF and Ralph Campbell, has been merged in. The OSF
365 code provided ROSE format support, which I haven't merged in yet. (I can
366 make it available, if anyone wants to try it out.) Ralph's code, for BSD
367 4.4, supports a.out format. We don't have ECOFF support in just yet; it's
368 coming.
252b5132 369
a40cbfa3 370* Support for the Hitachi H8/500 has been added.
252b5132 371
a40cbfa3
NC
372* VMS host and target support should be working now, thanks chiefly to Eric
373 Youngdale.
252b5132
RH
374
375Changes in 1.93.01:
376
a40cbfa3 377* For m68k, support for more processors has been added: 68040, CPU32, 68851.
252b5132 378
a40cbfa3 379* For i386, .align is now power-of-two; was number-of-bytes.
252b5132 380
a40cbfa3
NC
381* For m68k, "%" is now accepted before register names. For COFF format, which
382 doesn't use underscore prefixes for C labels, it is required, so variable "a0"
383 can be distinguished from the register.
252b5132 384
a40cbfa3
NC
385* Last public release was 1.38. Lots of configuration changes since then, lots
386 of new CPUs and formats, lots of bugs fixed.
252b5132
RH
387
388\f
389Local variables:
390fill-column: 79
391End:
This page took 0.265891 seconds and 4 git commands to generate.