gas/riscv: Produce version 3 DWARF CIE by default
[deliverable/binutils-gdb.git] / gas / NEWS
CommitLineData
252b5132 1-*- text -*-
96a84ea3 2
60391a25
PB
3Changes in 2.33:
4
7738ddb4
MM
5* Add support for the Arm Scalable Vector Extension version 2 (SVE2)
6 instructions.
7
8* Add support for the Arm Transactional Memory Extension (TME)
9 instructions.
10
514bbb0f
AV
11* Add support for the Armv8.1-M Mainline and M-profile Vector Extension (MVE)
12 instructions.
13
b20d3859
BW
14* For MIPS, Add -m[no-]fix-loongson3-llsc option to fix (or not) Loongson3
15 LLSC Errata. Add a --enable-mips-fix-loongson3-llsc=[yes|no] configure
16 time option to set the default behavior. Set the default if the configure
17 option is not used to "no".
6f2117ba 18
546053ac
DZ
19* Add support for the Arm Cortex-A76AE, Cortex-A77 and Cortex-M35P
20 processors.
21
22* Add support for the AArch64 Cortex-A34, Cortex-A65, Cortex-A65AE,
23 Cortex-A76AE, and Cortex-A77 processors.
24
b20d3859
BW
25* Add .float16 directive for both Arm and AArch64 to allow encoding of 16-bit
26 floating point literals. Add .float16_format directive and
27 -mfp16-format=[ieee|alternative] option for Arm to control the format of the
28 encoding.
29
66f8b2cb
AB
30* Add --gdwarf-cie-version command line flag. This allows control over which
31 version of DWARF CIE the assembler creates.
32
f974f26c
NC
33Changes in 2.32:
34
03751133
L
35* Add -mvexwig=[0|1] option to x86 assembler to control encoding of
36 VEX.W-ignored (WIG) VEX instructions.
37
b4a3a7b4
L
38* Add -mx86-used-note=[yes|no] option to generate (or not) x86 GNU property
39 notes. Add a --enable-x86-used-note configure time option to set the
40 default behavior. Set the default if the configure option is not used
41 to "no".
42
a693765e
CX
43* Add support for the MIPS Loongson EXTensions R2 (EXT2) instructions.
44
bdc6c06e
CX
45* Add support for the MIPS Loongson EXTensions (EXT) instructions.
46
716c08de
CX
47* Add support for the MIPS Loongson Content Address Memory (CAM) ASE.
48
b8891f8d
AJ
49* Add support for the C-SKY processor series.
50
8095d2f7
CX
51* Add support for the MIPS Loongson MultiMedia extensions Instructions (MMI)
52 ASE.
53
719d8288
NC
54Changes in 2.31:
55
fc6141f0
NC
56* The ADR and ADRL pseudo-instructions supported by the ARM assembler
57 now only set the bottom bit of the address of thumb function symbols
58 if the -mthumb-interwork command line option is active.
59
6f20c942
FS
60* Add support for the MIPS Global INValidate (GINV) ASE.
61
730c3174
SE
62* Add support for the MIPS Cyclic Redudancy Check (CRC) ASE.
63
7b4ae824
JD
64* Add support for the Freescale S12Z architecture.
65
0df8ad28
NC
66* Add --generate-missing-build-notes=[yes|no] option to create (or not) GNU
67 Build Attribute notes if none are present in the input sources. Add a
68 --enable-generate-build-notes=[yes|no] configure time option to set the
69 default behaviour. Set the default if the configure option is not used
70 to "no".
71
bd5dea88
L
72* Remove -mold-gcc command-line option for x86 targets.
73
b6f8c7c4
L
74* Add -O[2|s] command-line options to x86 assembler to enable alternate
75 shorter instruction encoding.
76
8f065d3b 77* Add support for .nops directive. It is currently supported only for
62a02d25
L
78 x86 targets.
79
9176ac5b
NC
80Changes in 2.30:
81
ba8826a8
AO
82* Add support for loaction views in DWARF debug line information.
83
55a09eb6
TG
84Changes in 2.29:
85
a91e1603
L
86* Add support for ELF SHF_GNU_MBIND.
87
f96bd6c2
PC
88* Add support for the WebAssembly file format and wasm32 ELF conversion.
89
7e0de605 90* PowerPC gas now checks that the correct register class is used in
ece5dcc1
AM
91 instructions. For instance, "addi %f4,%cr3,%r31" warns three times
92 that the registers are invalid.
7e0de605 93
93f11b16
DD
94* Add support for the Texas Instruments PRU processor.
95
0cda1e19
TP
96* Support for the ARMv8-R architecture and Cortex-R52 processor has been
97 added to the ARM port.
ced40572 98
9703a4ef
TG
99Changes in 2.28:
100
e23eba97
NC
101* Add support for the RISC-V architecture.
102
b19ea8d2 103* Add support for the ARM Cortex-M23 and Cortex-M33 processors.
ce1b0a45 104
96a84ea3
TG
105Changes in 2.27:
106
4e3e1fdf
L
107* Default to --enable-compressed-debug-sections=gas for Linux/x86 targets.
108
2edb36e7
NC
109* Add --no-pad-sections to stop the assembler from padding the end of output
110 sections up to their alignment boundary.
111
15afaa63
TP
112* Support for the ARMv8-M architecture has been added to the ARM port. Support
113 for the ARMv8-M Security and DSP Extensions has also been added to the ARM
114 port.
115
f36e33da
CZ
116* ARC backend accepts .extInstruction, .extCondCode, .extAuxRegister, and
117 .extCoreRegister pseudo-ops that allow an user to define custom
118 instructions, conditional codes, auxiliary and core registers.
119
b8871f35
L
120* Add a configure option --enable-elf-stt-common to decide whether ELF
121 assembler should generate common symbols with the STT_COMMON type by
122 default. Default to no.
123
a05a5b64 124* New command-line option --elf-stt-common= for ELF targets to control
b8871f35
L
125 whether to generate common symbols with the STT_COMMON type.
126
9fb71ee4
NC
127* Add ability to set section flags and types via numeric values for ELF
128 based targets.
81c23f82 129
0cb4071e
L
130* Add a configure option --enable-x86-relax-relocations to decide whether
131 x86 assembler should generate relax relocations by default. Default to
132 yes, except for x86 Solaris targets older than Solaris 12.
133
a05a5b64 134* New command-line option -mrelax-relocations= for x86 target to control
0cb4071e
L
135 whether to generate relax relocations.
136
a05a5b64 137* New command-line option -mfence-as-lock-add=yes for x86 target to encode
9d3fc4e1
L
138 lfence, mfence and sfence as "lock addl $0x0, (%[re]sp)".
139
4670103e
CZ
140* Add assembly-time relaxation option for ARC cpus.
141
9004b6bd
AB
142* Add --with-cpu=TYPE configure option for ARC gas. This allows the default
143 cpu type to be adjusted at configure time.
144
7feec526
TG
145Changes in 2.26:
146
edeefb67
L
147* Add a configure option --enable-compressed-debug-sections={all,gas} to
148 decide whether DWARF debug sections should be compressed by default.
e12fe555 149
886a2506
NC
150* Add support for the ARC EM/HS, and ARC600/700 architectures. Remove
151 assembler support for Argonaut RISC architectures.
152
d02603dc
NC
153* Symbol and label names can now be enclosed in double quotes (") which allows
154 them to contain characters that are not part of valid symbol names in high
155 level languages.
156
f33026a9
MW
157* Added the correctly spelled -march=armv6kz, for ARMv6KZ support. The
158 previous spelling, -march=armv6zk, is still accepted.
159
88f0ea34
MW
160* Support for the ARMv8.1 architecture has been added to the Aarch64 port.
161 Support for the individual ARMv8.1 Adv.SIMD, LOR and PAN architecture
162 extensions has also been added to the Aarch64 port.
163
a5932920
MW
164* Support for the ARMv8.1 architecture has been added to the ARM port. Support
165 for the individual ARMv8.1 Adv.SIMD and PAN architecture extensions has also
166 been added to the ARM port.
167
ea556d25
L
168* Extend --compress-debug-sections option to support
169 --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi] for ELF
170 targets.
171
0d2b51ad
L
172* --compress-debug-sections is turned on for Linux/x86 by default.
173
c50415e2
TG
174Changes in 2.25:
175
f36e8886
BS
176* Add support for the AVR Tiny microcontrollers.
177
73589c9d
CS
178* Replace support for openrisc and or32 with support for or1k.
179
2e6976a8 180* Enhanced the ARM port to accept the assembler output from the CodeComposer
a05a5b64 181 Studio tool. Support is enabled via the new command-line option -mccs.
2e6976a8 182
35c08157
KLC
183* Add support for the Andes NDS32.
184
58ca03a2
TG
185Changes in 2.24:
186
13761a11
NC
187* Add support for the Texas Instruments MSP430X processor.
188
a05a5b64 189* Add -gdwarf-sections command-line option to enable per-code-section
b40bf0a2
NC
190 generation of DWARF .debug_line sections.
191
36591ba1
SL
192* Add support for Altera Nios II.
193
a3c62988
NC
194* Add support for the Imagination Technologies Meta processor.
195
5bf135a7
NC
196* Add support for the v850e3v5.
197
e8044f35
RS
198* Remove assembler support for MIPS ECOFF targets.
199
af18cb59
TG
200Changes in 2.23:
201
da2bb560
NC
202* Add support for the 64-bit ARM architecture: AArch64.
203
6927f982
NC
204* Add support for S12X processor.
205
b9c361e0
JL
206* Add support for the VLE extension to the PowerPC architecture.
207
f6c1a2d5
NC
208* Add support for the Freescale XGATE architecture.
209
fa94de6b
RM
210* Add support for .bundle_align_mode, .bundle_lock, and .bundle_unlock
211 directives. These are currently available only for x86 and ARM targets.
212
99c513f6
DD
213* Add support for the Renesas RL78 architecture.
214
cfb8c092
NC
215* Add support for the Adapteva EPIPHANY architecture.
216
fe13e45b 217* For x86, allow 'rep bsf', 'rep bsr', and 'rep ret' syntax.
29c048b6 218
a7142d94
TG
219Changes in 2.22:
220
69f56ae1 221* Add support for the Tilera TILEPro and TILE-Gx architectures.
44f45767 222
90b3661c 223Changes in 2.21:
44f45767 224
5fec8599
L
225* Gas no longer requires doubling of ampersands in macros.
226
40b36596
JM
227* Add support for the TMS320C6000 (TI C6X) processor family.
228
31907d5e
DK
229* GAS now understands an extended syntax in the .section directive flags
230 for COFF targets that allows the section's alignment to be specified. This
231 feature has also been backported to the 2.20 release series, starting with
232 2.20.1.
233
c7927a3c
NC
234* Add support for the Renesas RX processor.
235
a05a5b64 236* New command-line option, --compress-debug-sections, which requests
700c4060
CC
237 compression of DWARF debug information sections in the relocatable output
238 file. Compressed debug sections are supported by readelf, objdump, and
239 gold, but not currently by Gnu ld.
240
81c23f82
TG
241Changes in 2.20:
242
1cd986c5
NC
243* Added support for v850e2 and v850e2v3.
244
3e7a7d11
NC
245* GNU/Linux targets now supports "gnu_unique_object" as a value in the .type
246 pseudo op. It marks the symbol as being globally unique in the entire
247 process.
248
c921be7d
NC
249* ARM assembler now supports .inst[.nw] pseudo-ops to insert opcodes specified
250 in binary rather than text.
6e33da12 251
c1711530
DK
252* Add support for common symbol alignment to PE formats.
253
92846e72
CC
254* Add support for the new discriminator column in the DWARF line table,
255 with a discriminator operand for the .loc directive.
256
c3b7224a
NC
257* Add support for Sunplus score architecture.
258
d8045f23
NC
259* The .type pseudo-op now accepts a type of STT_GNU_IFUNC which can be used to
260 indicate that if the symbol is the target of a relocation, its value should
261 not be use. Instead the function should be invoked and its result used as
262 the value.
fa94de6b 263
84e94c90
NC
264* Add support for Lattice Mico32 (lm32) architecture.
265
fa94de6b 266* Add support for Xilinx MicroBlaze architecture.
caa03924 267
6e33da12
TG
268Changes in 2.19:
269
4f6d9c90
DJ
270* New pseudo op .cfi_val_encoded_addr, to record constant addresses in unwind
271 tables without runtime relocation.
272
a05a5b64 273* New command-line option, -h-tick-hex, for sh, m32c, and h8/300 targets, which
6fd4f6cc
DD
274 adds compatibility with H'00 style hex constants.
275
a05a5b64 276* New command-line option, -msse-check=[none|error|warning], for x86
daf50ae7
L
277 targets.
278
a05a5b64 279* New sub-option added to the assembler's -a command-line switch to
83f10cb2
NC
280 generate a listing output. The 'g' sub-option will insert into the listing
281 various information about the assembly, such as assembler version, the
a05a5b64 282 command-line options used, and a time stamp.
83f10cb2 283
a05a5b64 284* New command-line option -msse2avx for x86 target to encode SSE
c0f3af97
L
285 instructions with VEX prefix.
286
f1f8f695 287* Add Intel XSAVE, EPT, MOVBE, AES, PCLMUL, AVX/FMA support for x86 target.
c0f3af97 288
a05a5b64 289* New command-line options, -march=CPU[,+EXTENSION...], -mtune=CPU,
ae40c993
L
290 -mmnemonic=[att|intel], -msyntax=[att|intel], -mindex-reg,
291 -mnaked-reg and -mold-gcc, for x86 targets.
292
38a57ae7
NC
293* Support for generating wide character strings has been added via the new
294 pseudo ops: .string16, .string32 and .string64.
295
85f10a01
MM
296* Support for SSE5 has been added to the i386 port.
297
7c3d153f
NC
298Changes in 2.18:
299
ec2655a6
NC
300* The GAS sources are now released under the GPLv3.
301
3d3d428f
NC
302* Support for the National Semiconductor CR16 target has been added.
303
3f9ce309
AM
304* Added gas .reloc pseudo. This is a low-level interface for creating
305 relocations.
306
99ad8390
NC
307* Add support for x86_64 PE+ target.
308
1c0d3aa6 309* Add support for Score target.
83518699 310
ec2655a6
NC
311Changes in 2.17:
312
d70c5fc7
NC
313* Support for the Infineon XC16X has been added by KPIT Cummins Infosystems.
314
08333dc4
NS
315* Support for ms2 architecture has been added.
316
b7b8fb1d
NC
317* Support for the Z80 processor family has been added.
318
3e8a519c
MM
319* Add support for the "@<file>" syntax to the command line, so that extra
320 switches can be read from <file>.
321
a05a5b64 322* The SH target supports a new command-line switch --enable-reg-prefix which,
37dedf66
NC
323 if enabled, will allow register names to be optionally prefixed with a $
324 character. This allows register names to be distinguished from label names.
fa94de6b 325
6eaeac8a
JB
326* Macros with a variable number of arguments are now supported. See the
327 documentation for how this works.
328
4bdd3565
NC
329* Added --reduce-memory-overheads switch to reduce the size of the hash
330 tables used, at the expense of longer assembly times, and
331 --hash-size=<NUMBER> to set the size of the hash tables used by gas.
332
5e75c3ab
JB
333* Macro names and macro parameter names can now be any identifier that would
334 also be legal as a symbol elsewhere. For macro parameter names, this is
335 known to cause problems in certain sources when the respective target uses
336 characters inconsistently, and thus macro parameter references may no longer
337 be recognized as such (see the documentation for details).
fa94de6b 338
d2c5f73e
NC
339* Support the .f_floating, .d_floating, .g_floating and .h_floating directives
340 for the VAX target in order to be more compatible with the VAX MACRO
341 assembler.
342
a05a5b64 343* New command-line option -mtune=[itanium1|itanium2] for IA64 targets.
8c2fda1d 344
957d91c1
NC
345Changes in 2.16:
346
fffeaa5f
JB
347* Redefinition of macros now results in an error.
348
a05a5b64 349* New command-line option -mhint.b=[ok|warning|error] for IA64 targets.
91d777ee 350
a05a5b64 351* New command-line option -munwind-check=[warning|error] for IA64
970d6792
L
352 targets.
353
f1dab70d
JB
354* The IA64 port now uses automatic dependency violation removal as its default
355 mode.
356
7499d566
NC
357* Port to MAXQ processor contributed by HCL Tech.
358
7ed4c4c5
NC
359* Added support for generating unwind tables for ARM ELF targets.
360
a05a5b64 361* Add a -g command-line option to generate debug information in the target's
329e276d
NC
362 preferred debug format.
363
1fe1f39c
NC
364* Support for the crx-elf target added.
365
1a320fbb 366* Support for the sh-symbianelf target added.
1fe1f39c 367
0503b355
BF
368* Added a pseudo-op (.secrel32) to generate 32 bit section relative relocations
369 on pe[i]-i386; required for this target's DWARF 2 support.
370
6b6e92f4
NC
371* Support for Motorola MCF521x/5249/547x/548x added.
372
fd99574b
NC
373* Support for ColdFire EMAC instructions added and Motorola syntax for MAC/EMAC
374 instrucitons.
375
a05a5b64 376* New command-line option -mno-shared for MIPS ELF targets.
aa6975fb 377
a05a5b64 378* New command-line option --alternate and pseudo-ops .altmacro and .noaltmacro
caa32fe5
NC
379 added to enter (and leave) alternate macro syntax mode.
380
0477af35
NC
381Changes in 2.15:
382
7a7f4e42
CD
383* The MIPS -membedded-pic option (Embedded-PIC code generation) is
384 deprecated and will be removed in a future release.
385
6edf0760
NC
386* Added PIC m32r Linux (ELF) and support to M32R assembler.
387
09d92015
MM
388* Added support for ARM V6.
389
88da98f3
MS
390* Added support for sh4a and variants.
391
eb764db8
NC
392* Support for Renesas M32R2 added.
393
88da98f3
MS
394* Limited support for Mapping Symbols as specified in the ARM ELF
395 specification has been added to the arm assembler.
ed769ec1 396
0bbf2aa4
NC
397* On ARM architectures, added a new gas directive ".unreq" that undoes
398 definitions created by ".req".
399
3e602632
NC
400* Support for Motorola ColdFire MCF528x added.
401
05da4302
NC
402* Added --gstabs+ switch to enable the generation of STABS debug format
403 information with GNU extensions.
fa94de6b 404
6a265366
CD
405* Added support for MIPS64 Release 2.
406
8ad30312
NC
407* Added support for v850e1.
408
12b55ccc
L
409* Added -n switch for x86 assembler. By default, x86 GAS replaces
410 multiple nop instructions used for alignment within code sections
411 with multi-byte nop instructions such as leal 0(%esi,1),%esi. This
412 switch disables the optimization.
413
78849248
ILT
414* Removed -n option from MIPS assembler. It was not useful, and confused the
415 existing -non_shared option.
416
43c58ae6
CD
417Changes in 2.14:
418
69be0a2b
CD
419* Added support for MIPS32 Release 2.
420
e8fd7476
NC
421* Added support for Xtensa architecture.
422
e16bb312
NC
423* Support for Intel's iWMMXt processor (an ARM variant) added.
424
cce4814f
NC
425* An assembler test generator has been contributed and an example file that
426 uses it (gas/testsuite/gas/all/test-gen.c and test-exmaple.c).
fa94de6b 427
5177500f
NC
428* Support for SH2E added.
429
fea17916
NC
430* GASP has now been removed.
431
004d9caf
NC
432* Support for Texas Instruments TMS320C4x and TMS320C3x series of
433 DSP's contributed by Michael Hayes and Svein E. Seldal.
fa94de6b 434
a40cbfa3
NC
435* Support for the Ubicom IP2xxx microcontroller added.
436
2cbb2eef
NC
437Changes in 2.13:
438
a40cbfa3
NC
439* Support for the Fujitsu FRV architecture added by Red Hat. Models for FR400
440 and FR500 included.
0ebb9a87 441
a40cbfa3 442* Support for DLX processor added.
52216602 443
a40cbfa3
NC
444* GASP has now been deprecated and will be removed in a future release. Use
445 the macro facilities in GAS instead.
3f965e60 446
a40cbfa3
NC
447* GASP now correctly parses floating point numbers. Unless the base is
448 explicitly specified, they are interpreted as decimal numbers regardless of
449 the currently specified base.
1ac57253 450
9a66911f
NC
451Changes in 2.12:
452
a40cbfa3 453* Support for Don Knuth's MMIX, by Hans-Peter Nilsson.
49fda6c8 454
a40cbfa3 455* Support for the OpenRISC 32-bit embedded processor by OpenCores.
3b16e843 456
fa94de6b
RM
457* The ARM assembler now accepts -march=..., -mcpu=... and -mfpu=... for
458 specifying the target instruction set. The old method of specifying the
a40cbfa3
NC
459 target processor has been deprecated, but is still accepted for
460 compatibility.
03b1477f 461
a40cbfa3
NC
462* Support for the VFP floating-point instruction set has been added to
463 the ARM assembler.
252b5132 464
a40cbfa3
NC
465* New psuedo op: .incbin to include a set of binary data at a given point
466 in the assembly. Contributed by Anders Norlander.
7e005732 467
a40cbfa3
NC
468* The MIPS assembler now accepts -march/-mtune. -mcpu has been deprecated
469 but still works for compatability.
ec68c924 470
fa94de6b 471* The MIPS assembler no longer issues a warning by default when it
a05a5b64 472 generates a nop instruction from a macro. The new command-line option
a40cbfa3 473 -n will turn on the warning.
63486801 474
2dac7317
JW
475Changes in 2.11:
476
500800ca
NC
477* Support for PDP-11 and 2.11BSD a.out format, by Lars Brinkhoff.
478
a40cbfa3 479* x86 gas now supports the full Pentium4 instruction set.
a167610d 480
a40cbfa3 481* Support for AMD x86-64 architecture, by Jan Hubicka, SuSE Labs.
c0d8940f 482
a40cbfa3 483* Support for Motorola 68HC11 and 68HC12.
df86943d 484
a40cbfa3 485* Support for Texas Instruments TMS320C54x (tic54x).
39bec121 486
a40cbfa3 487* Support for IA-64.
2dac7317 488
a40cbfa3 489* Support for i860, by Jason Eckhardt.
22b36938 490
a40cbfa3 491* Support for CRIS (Axis Communications ETRAX series).
5bcac8a4 492
a40cbfa3 493* x86 gas has a new .arch pseudo op to specify the target CPU architecture.
a38cf1db 494
a05a5b64 495* x86 gas -q command-line option quietens warnings about register size changes
a40cbfa3
NC
496 due to suffix, indirect jmp/call without `*', stand-alone prefixes, and
497 translating various deprecated floating point instructions.
a38cf1db 498
252b5132
RH
499Changes in 2.10:
500
a40cbfa3
NC
501* Support for the ARM msr instruction was changed to only allow an immediate
502 operand when altering the flags field.
d14442f4 503
a40cbfa3 504* Support for ATMEL AVR.
adde6300 505
a40cbfa3 506* Support for IBM 370 ELF. Somewhat experimental.
b5ebe70e 507
a40cbfa3 508* Support for numbers with suffixes.
3fd9f047 509
a40cbfa3 510* Added support for breaking to the end of repeat loops.
6a6987a9 511
a40cbfa3 512* Added support for parallel instruction syntax (DOUBLEBAR_PARALLEL).
6a6987a9 513
a40cbfa3 514* New .elseif pseudo-op added.
3fd9f047 515
a40cbfa3 516* New --fatal-warnings option.
1f776aa5 517
a40cbfa3 518* picoJava architecture support added.
252b5132 519
a40cbfa3 520* Motorola MCore 210 processor support added.
041dd5a9 521
fa94de6b 522* A new pseudo-op .intel_syntax has been implemented to allow gas to parse i386
a40cbfa3 523 assembly programs with intel syntax.
252b5132 524
a40cbfa3 525* New pseudo-ops .func,.endfunc to aid in debugging user-written assembler code.
252b5132 526
a40cbfa3 527* Added -gdwarf2 option to generate DWARF 2 debugging information.
041dd5a9 528
a40cbfa3 529* Full 16-bit mode support for i386.
252b5132 530
fa94de6b 531* Greatly improved instruction operand checking for i386. This change will
a40cbfa3
NC
532 produce errors or warnings on incorrect assembly code that previous versions
533 of gas accepted. If you get unexpected messages from code that worked with
534 older versions of gas, please double check the code before reporting a bug.
252b5132 535
a40cbfa3 536* Weak symbol support added for COFF targets.
252b5132 537
a40cbfa3 538* Mitsubishi D30V support added.
252b5132 539
a40cbfa3 540* Texas Instruments c80 (tms320c80) support added.
252b5132 541
a40cbfa3 542* i960 ELF support added.
bedf545c 543
a40cbfa3 544* ARM ELF support added.
a057431b 545
252b5132
RH
546Changes in 2.9:
547
a40cbfa3 548* Texas Instruments c30 (tms320c30) support added.
252b5132 549
fa94de6b 550* The assembler now optimizes the exception frame information generated by egcs
a40cbfa3 551 and gcc 2.8. The new --traditional-format option disables this optimization.
252b5132 552
a40cbfa3 553* Added --gstabs option to generate stabs debugging information.
252b5132 554
fa94de6b 555* The -a option takes a new suboption, m (e.g., -alm) to expand macros in a
a40cbfa3 556 listing.
252b5132 557
a40cbfa3 558* Added -MD option to print dependencies.
252b5132
RH
559
560Changes in 2.8:
561
a40cbfa3 562* BeOS support added.
252b5132 563
a40cbfa3 564* MIPS16 support added.
252b5132 565
a40cbfa3 566* Motorola ColdFire 5200 support added (configure for m68k and use -m5200).
252b5132 567
a40cbfa3 568* Alpha/VMS support added.
252b5132 569
a40cbfa3
NC
570* m68k options --base-size-default-16, --base-size-default-32,
571 --disp-size-default-16, and --disp-size-default-32 added.
252b5132 572
a40cbfa3
NC
573* The alignment directives now take an optional third argument, which is the
574 maximum number of bytes to skip. If doing the alignment would require
575 skipping more than the given number of bytes, the alignment is not done at
576 all.
252b5132 577
a40cbfa3 578* The ELF assembler has a new pseudo-op, .symver, used for symbol versioning.
252b5132 579
a40cbfa3
NC
580* The -a option takes a new suboption, c (e.g., -alc), to skip false
581 conditionals in listings.
252b5132 582
a40cbfa3
NC
583* Added new pseudo-op, .equiv; it's like .equ, except that it is an error if
584 the symbol is already defined.
252b5132
RH
585
586Changes in 2.7:
587
a40cbfa3
NC
588* The PowerPC assembler now allows the use of symbolic register names (r0,
589 etc.) if -mregnames is used. Symbolic names preceded by a '%' (%r0, etc.)
590 can be used any time. PowerPC 860 move to/from SPR instructions have been
591 added.
252b5132 592
a40cbfa3 593* Alpha Linux (ELF) support added.
252b5132 594
a40cbfa3 595* PowerPC ELF support added.
252b5132 596
a40cbfa3 597* m68k Linux (ELF) support added.
252b5132 598
a40cbfa3 599* i960 Hx/Jx support added.
252b5132 600
a40cbfa3 601* i386/PowerPC gnu-win32 support added.
252b5132 602
a40cbfa3
NC
603* SCO ELF support added. For OpenServer 5 targets (i386-unknown-sco3.2v5) the
604 default is to build COFF-only support. To get a set of tools that generate
fa94de6b 605 ELF (they'll understand both COFF and ELF), you must configure with
a40cbfa3 606 target=i386-unknown-sco3.2v5elf.
252b5132 607
a40cbfa3 608* m88k-motorola-sysv3* support added.
252b5132
RH
609
610Changes in 2.6:
611
a40cbfa3 612* Gas now directly supports macros, without requiring GASP.
252b5132 613
a40cbfa3
NC
614* Gas now has an MRI assembler compatibility mode. Use -M or --mri to select
615 MRI mode. The pseudo-op ``.mri 1'' will switch into the MRI mode until the
616 ``.mri 0'' is seen; this can be convenient for inline assembler code.
252b5132 617
a40cbfa3 618* Added --defsym SYM=VALUE option.
252b5132 619
a40cbfa3 620* Added -mips4 support to MIPS assembler.
252b5132 621
a40cbfa3 622* Added PIC support to Solaris and SPARC SunOS 4 assembler.
252b5132
RH
623
624Changes in 2.4:
625
a40cbfa3 626* Converted this directory to use an autoconf-generated configure script.
252b5132 627
a40cbfa3 628* ARM support, from Richard Earnshaw.
252b5132 629
a40cbfa3
NC
630* Updated VMS support, from Pat Rankin, including considerably improved
631 debugging support.
252b5132 632
a40cbfa3 633* Support for the control registers in the 68060.
252b5132 634
a40cbfa3 635* Handles (ignores) a new directive ".this_GCC_requires_the_GNU_assembler", to
fa94de6b
RM
636 provide for possible future gcc changes, for targets where gas provides some
637 features not available in the native assembler. If the native assembler is
a40cbfa3 638 used, it should become obvious pretty quickly what the problem is.
252b5132 639
a40cbfa3 640* Usage message is available with "--help".
252b5132 641
fa94de6b 642* The GNU Assembler Preprocessor (gasp) is included. (Actually, it was in 2.3
a40cbfa3 643 also, but didn't get into the NEWS file.)
252b5132 644
a40cbfa3 645* Weak symbol support for a.out.
252b5132 646
fa94de6b 647* A bug in the listing code which could cause an infinite loop has been fixed.
a40cbfa3 648 Bugs in listings when generating a COFF object file have also been fixed.
252b5132 649
a40cbfa3
NC
650* Initial i386-svr4 PIC implementation from Eric Youngdale, based on code by
651 Paul Kranenburg.
252b5132 652
a40cbfa3
NC
653* Improved Alpha support. Immediate constants can have a much larger range
654 now. Support for the 21164 has been contributed by Digital.
252b5132 655
a40cbfa3 656* Updated ns32k (pc532-mach, netbsd532) support from Ian Dall.
252b5132
RH
657
658Changes in 2.3:
659
a40cbfa3 660* Mach i386 support, by David Mackenzie and Ken Raeburn.
252b5132 661
a40cbfa3 662* RS/6000 and PowerPC support by Ian Taylor.
252b5132 663
a40cbfa3
NC
664* VMS command scripts (make-gas.com, config-gas.com) have been worked on a bit,
665 based on mail received from various people. The `-h#' option should work
666 again too.
252b5132 667
a40cbfa3 668* HP-PA work, by Jeff Law. Note, for the PA, gas-2.3 has been designed to work
fa94de6b 669 with gdb-4.12 and gcc-2.6. As gcc-2.6 has not been released yet, a special
a40cbfa3
NC
670 version of gcc-2.5.8 has been patched to work with gas-2.3. You can retrieve
671 this special version of gcc-2.5.8 via anonymous ftp from jaguar.cs.utah.edu
672 in the "dist" directory.
252b5132 673
a40cbfa3
NC
674* Vax support in gas fixed for BSD, so it builds and seems to run a couple
675 simple tests okay. I haven't put it through extensive testing. (GNU make is
676 currently required for BSD 4.3 builds.)
252b5132 677
fa94de6b 678* Support for the DEC Alpha, running OSF/1 (ECOFF format). The gas support is
a40cbfa3
NC
679 based on code donated by CMU, which used an a.out-based format. I'm afraid
680 the alpha-a.out support is pretty badly mangled, and much of it removed;
681 making it work will require rewriting it as BFD support for the format anyways.
252b5132 682
a40cbfa3 683* Irix 5 support.
252b5132 684
fa94de6b 685* The test suites have been fixed up a bit, so that they should work with a
a40cbfa3 686 couple different versions of expect and dejagnu.
252b5132 687
fa94de6b
RM
688* Symbols' values are now handled internally as expressions, permitting more
689 flexibility in evaluating them in some cases. Some details of relocation
a40cbfa3
NC
690 handling have also changed, and simple constant pool management has been
691 added, to make the Alpha port easier.
252b5132 692
a40cbfa3
NC
693* New option "--statistics" for printing out program run times. This is
694 intended to be used with the gcc "-Q" option, which prints out times spent in
695 various phases of compilation. (You should be able to get all of them
696 printed out with "gcc -Q -Wa,--statistics", I think.)
252b5132
RH
697
698Changes in 2.2:
699
a40cbfa3 700* RS/6000 AIX and MIPS SGI Irix 5 support has been added.
252b5132 701
fa94de6b
RM
702* Configurations that are still in development (and therefore are convenient to
703 have listed in configure.in) still get rejected without a minor change to
a40cbfa3
NC
704 gas/Makefile.in, so people not doing development work shouldn't get the
705 impression that support for such configurations is actually believed to be
706 reliable.
252b5132 707
fa94de6b 708* The program name (usually "as") is printed when a fatal error message is
a40cbfa3
NC
709 displayed. This should prevent some confusion about the source of occasional
710 messages about "internal errors".
252b5132 711
fa94de6b 712* ELF support is falling into place. Support for the 386 should be working.
a40cbfa3 713 Support for SPARC Solaris is in. HPPA support from Utah is being integrated.
252b5132 714
a40cbfa3
NC
715* Symbol values are maintained as expressions instead of being immediately
716 boiled down to add-symbol, sub-symbol, and constant. This permits slightly
717 more complex calculations involving symbols whose values are not alreadey
718 known.
252b5132 719
a40cbfa3 720* DBX-style debugging info ("stabs") is now supported for COFF formats.
fa94de6b
RM
721 If any stabs directives are seen in the source, GAS will create two new
722 sections: a ".stab" and a ".stabstr" section. The format of the .stab
a40cbfa3
NC
723 section is nearly identical to the a.out symbol format, and .stabstr is
724 its string table. For this to be useful, you must have configured GCC
725 to generate stabs (by defining DBX_DEBUGGING_INFO), and must have a GDB
726 that can use the stab sections (4.11 or later).
252b5132 727
fa94de6b 728* LynxOS, on i386 and m68k platforms, is now supported. SPARC LynxOS
a40cbfa3 729 support is in progress.
252b5132
RH
730
731Changes in 2.1:
732
fa94de6b 733* Several small fixes for i386-aix (PS/2) support from Minh Tran-Le have been
a40cbfa3 734 incorporated, but not well tested yet.
252b5132 735
fa94de6b 736* Altered the opcode table split for m68k; it should require less VM to compile
a40cbfa3 737 with gcc now.
252b5132 738
a40cbfa3
NC
739* Some minor adjustments to add (Convergent Technologies') Miniframe support,
740 suggested by Ronald Cole.
252b5132 741
a40cbfa3
NC
742* HPPA support (running OSF only, not HPUX) has been contributed by Utah. This
743 includes improved ELF support, which I've started adapting for SPARC Solaris
744 2.x. Integration isn't completely, so it probably won't work.
252b5132 745
a40cbfa3 746* HP9000/300 support, donated by HP, has been merged in.
252b5132 747
a40cbfa3 748* Ian Taylor has finished the MIPS ECOFF (Ultrix, Irix) support.
252b5132 749
a40cbfa3 750* Better error messages for unsupported configurations (e.g., hppa-hpux).
252b5132 751
a40cbfa3 752* Test suite framework is starting to become reasonable.
252b5132
RH
753
754Changes in 2.0:
755
a40cbfa3 756* Mostly bug fixes.
252b5132 757
a40cbfa3 758* Some more merging of BFD and ELF code, but ELF still doesn't work.
252b5132
RH
759
760Changes in 1.94:
761
a40cbfa3
NC
762* BFD merge is partly done. Adventurous souls may try giving configure the
763 "--with-bfd-assembler" option. Currently, ELF format requires it, a.out
764 format accepts it; SPARC CPU accepts it. It's the default only for OS "elf"
765 or "solaris". (ELF isn't really supported yet. It needs work. I've got
766 some code from Utah for HP-PA ELF, and from DG for m88k ELF, but they're not
767 fully merged yet.)
252b5132 768
a40cbfa3
NC
769* The 68K opcode table has been split in half. It should now compile under gcc
770 without consuming ridiculous amounts of memory.
252b5132 771
a40cbfa3
NC
772* A couple data structures have been reduced in size. This should result in
773 saving a little bit of space at runtime.
252b5132 774
a40cbfa3
NC
775* Support for MIPS, from OSF and Ralph Campbell, has been merged in. The OSF
776 code provided ROSE format support, which I haven't merged in yet. (I can
777 make it available, if anyone wants to try it out.) Ralph's code, for BSD
778 4.4, supports a.out format. We don't have ECOFF support in just yet; it's
779 coming.
252b5132 780
a40cbfa3 781* Support for the Hitachi H8/500 has been added.
252b5132 782
a40cbfa3
NC
783* VMS host and target support should be working now, thanks chiefly to Eric
784 Youngdale.
252b5132
RH
785
786Changes in 1.93.01:
787
a40cbfa3 788* For m68k, support for more processors has been added: 68040, CPU32, 68851.
252b5132 789
a40cbfa3 790* For i386, .align is now power-of-two; was number-of-bytes.
252b5132 791
a40cbfa3
NC
792* For m68k, "%" is now accepted before register names. For COFF format, which
793 doesn't use underscore prefixes for C labels, it is required, so variable "a0"
794 can be distinguished from the register.
252b5132 795
a40cbfa3
NC
796* Last public release was 1.38. Lots of configuration changes since then, lots
797 of new CPUs and formats, lots of bugs fixed.
252b5132
RH
798
799\f
82704155 800Copyright (C) 2012-2019 Free Software Foundation, Inc.
5bf135a7
NC
801
802Copying and distribution of this file, with or without modification,
803are permitted in any medium without royalty provided the copyright
804notice and this notice are preserved.
805
252b5132
RH
806Local variables:
807fill-column: 79
808End:
This page took 0.884946 seconds and 4 git commands to generate.