[GAS, Arm] CLI with architecture sensitive extensions
[external/binutils.git] / gas / ChangeLog
1 2019-04-01  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2
3         * config/tc-arm.c (arm_ext_table): New struct type.
4         (arm_arch_option_table): Add new 'arm_ext_table' field.
5         (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
6         (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
7         armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
8         armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
9         armv85a_ext_table, armv8m_main_ext_table,
10         armv8r_ext_table): New architecture extension tables.
11         (ARM_ARCH_OPT): Add new default field.
12         (ARM_ARCH_OPT2): New macro.
13         (arm_archs): Extend some architectures with the new architecture
14         extension tables mentioned above.
15         (arm_extensions): Add DEPRECATED comment with instructions to
16         use new table.
17         (arm_parse_extension): Change to use new extension tables.
18         (arm_parse_cpu): Don't change existing behavior.
19         (arm_parse_arch): Change to use new extension tables.
20         * doc/c-arm.texi: Document new architecture extensions.
21         * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
22         extension option rather than -mfpu and change expected behaviour to
23         sane outputs.
24         * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
25         * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
26         * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
27         * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
28         * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
29         * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
30         * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
31         * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
32         * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
33         * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
34         * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
35         * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
36         * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
37         * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
38         * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
39         * testsuite/gas/arm/armv8m.main+fp.d: New.
40         * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
41         * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
42         * testsuite/gas/arm/attr-ext-fpv5.d: New.
43         * testsuite/gas/arm/attr-ext-idiv.d: New.
44         * testsuite/gas/arm/attr-ext-mp.d: New.
45         * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
46         * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
47         * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
48         * testsuite/gas/arm/attr-ext-sec.d: New.
49         * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
50         * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
51         * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
52         * testsuite/gas/arm/attr-ext-vfpv3.d: New.
53         * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
54         * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
55         * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
56         * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
57         * testsuite/gas/arm/attr-ext-vfpv4.d: New.
58         * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
59         * testsuite/gas/arm/fpv5-d16.s: New.
60         * testsuite/gas/arm/fpv5-sp-d16.s: New.
61
62 2019-03-28  Alan Modra  <amodra@gmail.com>
63
64         PR 24390
65         * testsuite/gas/ppc/476.d: Update mtfsb*.
66         * testsuite/gas/ppc/a2.d: Likewise.
67
68 2019-03-21  Alan Modra  <amodra@gmail.com>
69
70         * emul.h (struct emulation): Delete strip_underscore.
71         * emul-target.h (emul_strip_underscore): Don't define.
72         (emul_struct_name): Update initialization.
73
74 2019-03-21  Alan Modra  <amodra@gmail.com>
75
76         * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
77         * config/tc-pdp11.c (md_apply_fix): Likewise.
78         * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
79         BFD_RELOC_16, and BFD_RELOC_64.
80         * testsuite/gas/all/gas.exp: Move target exclusions for forward
81         test, but not cr16, to..
82         * testsuite/gas/all/forward.d: ..here, with explanation.  Remove
83         d10v, d30v, and pdp11 xfails.
84
85 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
86
87         * config/tc-i386.c (optimize_encoding): Don't check AVX for
88         EVEX vector load/store optimization.  Check both operands for
89         ZMM register.  Update EVEX vector load/store opcode check.
90         Choose EVEX Disp8 over VEX Disp32.
91         * testsuite/gas/i386/optimize-1.d: Updated.
92         * testsuite/gas/i386/optimize-1a.d: Likewise.
93         * testsuite/gas/i386/optimize-2.d: Likewise.
94         * testsuite/gas/i386/optimize-4.d: Likewise.
95         * testsuite/gas/i386/optimize-5.d: Likewise.
96         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
97         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
98         * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
99         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
100         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
101         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
102         * testsuite/gas/i386/optimize-1.s: Add ZMM register load
103         test.
104         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
105
106 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
107
108         PR gas/24352
109         * config/tc-i386.c (optimize_encoding): Check only
110         cpu_arch_flags.bitfield.cpuavx512vl.
111         * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
112         * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
113         change.
114         * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
115         * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
116
117 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
118
119         PR gas/24359
120         * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
121         x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
122         Remove optimize-6c and x86-64-optimize-7c tests.
123         * testsuite/gas/i386/noavx-3.l: Updated.
124         * testsuite/gas/i386/noavx-4.d: Likewise.
125         * testsuite/gas/i386/noavx-5.d: Likewise.
126         * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
127         * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
128         * testsuite/gas/i386/nosse-5.s: Likewise.
129         * testsuite/gas/i386/optimize-6a.d: Removed.
130         * testsuite/gas/i386/optimize-6c.d: Likewise.
131         * testsuite/gas/i386/optimize-7.d: Likewise.
132         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
133         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
134         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
135         * testsuite/gas/i386/optimize-6a.l: New file.
136         * testsuite/gas/i386/optimize-6a.s: Likewise.
137         * testsuite/gas/i386/optimize-7.l: Likewise.
138         * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
139         * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
140         * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
141
142 2019-03-18  Alan Modra  <amodra@gmail.com>
143
144         * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
145         * as.c (macro_expr): Likewise.
146         * macro.c (buffer_and_nest): Likewise.
147         * read.c (temp_ilp): Remove FIXME.
148
149 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
150
151         * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
152         * testsuite/gas/i386/avx512bw-intel.d: Likewise.
153         * testsuite/gas/i386/avx512bw.d: Likewise.
154         * testsuite/gas/i386/avx512f-intel.d: Likewise.
155         * testsuite/gas/i386/avx512f.d: Likewise.
156         * testsuite/gas/i386/disp32.d: Likewise.
157         * testsuite/gas/i386/intel-regs.d: Likewise.
158         * testsuite/gas/i386/pseudos.d: Likewise.
159         * testsuite/gas/i386/x86-64-disp32.d: Likewise.
160         * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
161
162 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
163
164         PR gas/24348
165         * config/tc-i386.c (optimize_encoding): Encode 128-bit and
166         256-bit EVEX vector register load/store instructions as VEX
167         vector register load/store instructions for -O1.
168         * doc/c-i386.texi: Update -O1 documentation.
169         * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
170         * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
171         load/store instructions.
172         * testsuite/gas/i386/optimize-2.s: Likewise.
173         * testsuite/gas/i386/optimize-3.s: Likewise.
174         * testsuite/gas/i386/optimize-5.s: Likewise.
175         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
176         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
177         * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
178         * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
179         * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
180         * testsuite/gas/i386/optimize-1.d: Updated.
181         * testsuite/gas/i386/optimize-2.d: Likewise.
182         * testsuite/gas/i386/optimize-3.d: Likewise.
183         * testsuite/gas/i386/optimize-4.d: Likewise.
184         * testsuite/gas/i386/optimize-5.d: Likewise.
185         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
186         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
187         * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
188         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
189         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
190         * testsuite/gas/i386/optimize-7.d: New file.
191         * testsuite/gas/i386/optimize-7.s: Likewise.
192         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
193         * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
194
195 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
196
197         * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
198         VEX/EVEX vector register clearing instructions with 128-bit VEX
199         vector register clearing instructions at -O1.
200         * doc/c-i386.texi: Update -O1 and -O2 documentation.
201         * testsuite/gas/i386/i386.exp: Run optimize-1a and
202         x86-64-optimize-2a.
203         * testsuite/gas/i386/optimize-1a.d: New file.
204         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
205
206 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
207
208         PR gas/24353
209         * config/tc-i386.c: Include <limits.h> if it exists and try
210         including <sys/param.h> if we have it.
211         (INT_MAX): Define if not defined.
212         (md_parse_option): Set optimize to INT_MAX for -Os.
213         * testsuite/gas/i386/optimize-2.s: Add a test.
214         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
215         * testsuite/gas/i386/optimize-2.d: Updated.
216         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
217
218 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
219
220         PR gas/24352
221         * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
222         with 128-bit VEX encoding only when AVX is enabled and with
223         128-bit EVEX encoding only when AVX512VL is enabled.
224         * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
225         * testsuite/gas/i386/optimize-6.s: New file.
226         * testsuite/gas/i386/optimize-6a.d: Likewise.
227         * testsuite/gas/i386/optimize-6b.d: Likewise.
228         * testsuite/gas/i386/optimize-6c.d: Likewise.
229         * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
230         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
231         * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
232         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
233         * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
234
235 2019-03-15  Li Hao  <li.hao296@zte.com.cn>
236
237         PR 24308
238         * config/tc-i386.c (parse_insn): Check mnemp before using it to
239         determine if a suffix can be trimmed.
240
241 2019-03-13  Christian Eggers  <ceggers@gmx.de>
242
243         * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
244
245 2019-03-13  Christian Eggers  <ceggers@gmx.de>
246
247         * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
248
249 2019-03-13  Christian Eggers  <ceggers@gmx.de>
250
251         * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
252
253 2019-03-13  Christian Eggers  <ceggers@gmx.de>
254
255         * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
256
257 2019-03-13  Christian Eggers  <ceggers@gmx.de>
258
259         * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
260         (out_debug_aranges, out_debug_info): Likewise.
261
262 2019-03-13  Christian Eggers  <ceggers@gmx.de>
263
264         * symbols.h (symbol_temp_new_now_octets): Declare.
265         (symbol_set_value_now_octets, symbol_octets_p): Declare.
266         * symbols.c (struct symbol_flags): New member sy_octets.
267         (symbol_temp_new_now_octets): New function.
268         (resolve_symbol_value): Return octets instead of bytes if
269         sy_octets is set.
270         (symbol_set_value_now_octets): New function.
271         (symbol_octets_p): New function.
272
273 2019-03-13  Christian Eggers  <ceggers@gmx.de>
274
275         * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
276
277 2019-03-12  Andreas Krebbel  <krebbel@linux.ibm.com>
278
279         * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
280         * testsuite/gas/s390/zarch-arch13.d: Likewise.
281
282 2019-02-27  Matthew Malcomson  <matthew.malcomson@arm.com>
283
284         * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
285         * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
286         * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
287         * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
288         lines.
289         * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
290         * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
291
292 2019-02-24  Alan Modra  <amodra@gmail.com>
293
294         * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
295
296 2019-02-24  Alan Modra  <amodra@gmail.com>
297
298         PR 24144
299         * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
300         of section to ensure file contents cover aligned section size.
301
302 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
303
304         * config/tc-arm.c (arm_cpus): Add neoverse-n1.
305         * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
306
307 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
308
309         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
310         * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
311
312 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
313
314         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
315         * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
316
317 2019-02-19  Paul Hua  <paul.hua.gm@gmail.com>
318
319         * NEWS: Mention -m[no-]fix-loongson3-llsc.
320         * configure.ac: Add --enable-mips-fix-loongson3-llsc.
321         Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
322         * config.in: Regenerated.
323         * configure: Likewise.
324         * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
325         New variables.
326         (options): New OPTION_FIX_LOONGSON3_LLSC,
327         OPTION_NO_FIX_LOONGSON3_LLSC.
328         (md_longopts): Add -m[no-]fix-loongson3-llsc.
329         (md_begin): Initialize sync insn.
330         (fix_loongson3_llsc): New.
331         (append_insn): Call fix_loongson3_llsc.
332         (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
333         OPTION_NO_FIX_LOONGSON3_LLSC.
334         (md_show_usage): Display -m[no-]fix-loongson3-llsc.
335         * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
336         --enable-mips-fix-loongson3-llsc=[yes|no].
337
338 2019-02-10  H.J. Lu  <hongjiu.lu@intel.com>
339
340         PR gas/24165
341         * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
342         max_bytes.
343         * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
344         aarch64_init_frag.
345         * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
346         arm_init_frag.
347         * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
348         * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
349         * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
350         * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
351         * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
352         * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
353         * config/tc-rx.h (TC_FRAG_INIT): Likewise.
354         * config/tc-score.h (TC_FRAG_INIT): Likewise.
355         * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
356         * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
357         * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
358         * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
359         (alignment ? ((1 << alignment) - 1) : 1)
360         (i386_tc_frag_data): Add max_bytes.
361         (TC_FRAG_INIT): Add and track max_bytes.
362         (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
363         fragP->tc_frag_data.max_bytes.
364         * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
365
366 2019-02-08  Jim Wilson  <jimw@sifive.com>
367
368         * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
369         (riscv_ip) <'C'>: Add 'z' support.
370
371 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
372
373         * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
374         hlt to armv1.
375         * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
376         * testsuite/gas/arm/hlt.d: New test.
377         * testsuite/gas/arm/hlt.s: New test.
378
379 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
380
381         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
382         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
383
384 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
385
386         PR binutils/23212
387         * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
388         * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
389
390 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
391
392         * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
393         64-bit boundaries for the GR6.
394         * testsuite/gas/visium/allinsn_gr6.s: Tweak.
395         * testsuite/gas/visium/allinsn_gr6.d: Likewise.
396         * testsuite/gas/visium/bra-1.d: New test.
397         * testsuite/gas/visium/bra-1.s: Likewise.
398         * testsuite/gas/visium/visium.exp: Run bra-1 test.
399
400 2019-01-31  John Darrington <john@darrington.wattle.id.au>
401
402         * config/tc-s12z.c (lex_imm): Add new argument exp_o.
403         (emit_reloc): New function.
404         (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
405         can be either 2 bytes or 3 bytes long.
406         * testsuite/gas/s12z/mov-imm-reloc.d: New file.
407         * testsuite/gas/s12z/mov-imm-reloc.s: New file.
408         * testsuite/gas/s12z/s12z.exp: Add them.
409
410 2019-01-31  John Darrington <john@darrington.wattle.id.au>
411
412         * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
413         * testsuite/gas/s12z/pc-rel-bad.d: New file.
414         * testsuite/gas/s12z/pc-rel-bad.l: New file.
415         * testsuite/gas/s12z/pc-rel-bad.s: New file.
416         * testsuite/gas/s12z/pc-rel-good.d: New file.
417         * testsuite/gas/s12z/pc-rel-good.s: New file.
418         * testsuite/gas/s12z/s12z.exp: Add them.
419
420 2019-01-31  John Darrington <john@darrington.wattle.id.au>
421
422         * config/tc-s12z.c (tfr): Emit warning if operands are the same.
423         * testsuite/gas/s12z/exg.d: New test case.
424         * testsuite/gas/s12z/exg.l: New file.
425
426 2019-01-31  John Darrington <john@darrington.wattle.id.au>
427
428         * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
429         immediate mode operands should be permitted.
430         * testsuite/s12z/imm-dest.d: New file.
431         * testsuite/s12z/imm-dest.l: New file.
432         * testsuite/s12z/imm-dest.s: New file.
433         * testsuite/s12z/s12z.exp: Add them.
434
435 2019-01-31  Andreas Krebbel  <krebbel@linux.ibm.com>
436
437         * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
438         * doc/c-s390.texi: Document arch13 march option.
439         * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
440         * testsuite/gas/s390/zarch-arch13.d: New test.
441         * testsuite/gas/s390/zarch-arch13.s: New test.
442         * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
443         also for z13.
444
445 2019-01-31  Alan Modra  <amodra@gmail.com>
446
447         * config/tc-alpha.c (md_apply_fix): Correct range checks for
448         BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
449         * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
450         * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
451
452 2019-01-28  Max Filippov  <jcmvbkbc@gmail.com>
453
454         * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
455         symbols as done in md_apply_fix.
456         * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
457
458 2019-01-28  Nick Clifton  <nickc@redhat.com>
459
460         * po/fr.po: Updated French translation.
461         * po/ru.po: Updated Russian translation.
462
463 2019-01-28  Alan Modra  <amodra@gmail.com>
464
465         * configure.ac (ac_checking): Set from bfd/development.sh
466         development variable.
467         * configure: Regenerate.
468
469 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
470
471         * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
472         stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
473         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
474         stg, stzg, st2g and stz2g.
475         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
476         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
477         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
478
479 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
480
481         * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
482         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
483         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
484         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
485
486 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
487             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
488
489         * config/tc-aarch64.c (parse_address_main): Remove support for
490         [base]! address expression.
491         (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
492         (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
493         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
494         and stgv.
495         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
496         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
497         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
498
499 2019-01-25  Wu Heng  <wu.heng@zte.com.cn>
500
501         PR gas/23940
502         * macro.c (getstring): Check array bound before accessing.
503
504 2019-01-25  Alan Modra  <amodra@gmail.com>
505
506         PR 20902
507         PR 24125
508         * read.c (stringer): Delete assertion.
509
510 2019-01-21  Nick Clifton  <nickc@redhat.com>
511
512         * po/uk.po: Updated Ukranian translation.
513
514 2019-01-19  Nick Clifton  <nickc@redhat.com>
515
516         * config.in: Regenerate.
517         * configure: Regenerate.
518         * po/gas.pot: Regenerate.
519
520 2018-06-24  Nick Clifton  <nickc@redhat.com>
521
522         2.32 branch created.
523
524 2019-01-17  Tamar Christina  <tamar.christina@arm.com>
525
526         * testsuite/gas/arm/archv6t2-1-pe.d: New test.
527         * testsuite/gas/arm/archv6t2-1.d: Skip pe.
528         * testsuite/gas/arm/csdb.d: Skip pe.
529         * testsuite/gas/arm/sb-thumb1-pe.d: New test.
530         * testsuite/gas/arm/sb-thumb1.d: Skip pe.
531         * testsuite/gas/arm/sb-thumb2-pe.d: New test.
532         * testsuite/gas/arm/sb-thumb2.d: Skip pe.
533         * testsuite/gas/arm/udf.d: Skip pe.
534
535 2019-01-16  Kito Cheng  <kito@andestech.com>
536
537         * testsuite/gas/riscv/attribute-empty.d: New.
538
539 2019-01-16  Kito Cheng  <kito@andestech.com>
540             Nelson Chu  <nelson@andestech.com>
541
542         * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
543         (riscv_set_options): Add `arch_attr` field.
544         (riscv_opts): Set default value for arch_attr.
545         (riscv_write_out_arch_attr): New.
546         (riscv_set_public_attributes): Likewise.
547         (riscv_md_end): Likewise.
548         (riscv_convert_symbolic_attribute): Likewise.
549         (s_riscv_attribute): Likewise.
550         (explicit_arch_attr): Likewise.
551         (riscv_pseudo_table): Add .attribute to the table.
552         (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
553         enumeration constants.
554         (md_longopts): Add `march-attr' and `mno-arch-attr' options.
555         (md_parse_option): Handle the new options.
556         (md_show_usage): Document the `march-attr' option.
557         * config/tc-riscv.h (md_end): Define as riscv_md_end
558         (riscv_md_end): Declare.
559         (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
560         riscv_convert_symbolic_attribute.
561         (riscv_convert_symbolic_attribute): Declare.
562         (start_assemble): Declare.
563         * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
564         * testsuite/gas/elf/section2.e-riscv: New.
565         * testsuite/gas/riscv/attribute-01.d: New test
566         * testsuite/gas/riscv/attribute-02.d: Likewise.
567         * testsuite/gas/riscv/attribute-03.d: Likewise.
568         * testsuite/gas/riscv/attribute-04.d: Likewise.
569         * testsuite/gas/riscv/attribute-04.s: Likewise.
570         * testsuite/gas/riscv/attribute-05.d: Likewise.
571         * testsuite/gas/riscv/attribute-05.s: Likewise.
572         * testsuite/gas/riscv/attribute-06.d: Likewise.
573         * testsuite/gas/riscv/attribute-06.s: Likewise.
574         * testsuite/gas/riscv/attribute-07.d: Likewise.
575         * testsuite/gas/riscv/attribute-07.s: Likewise.
576         * testsuite/gas/riscv/attribute-08.d: Likewise.
577         * testsuite/gas/riscv/attribute-08.s: Likewise.
578         * testsuite/gas/riscv/attribute-unknown.d: Likewise.
579         * testsuite/gas/riscv/attribute-unknown.s: Likewise.
580         * testsuite/gas/riscv/empty.l: Likewise.
581         * doc/c-riscv.texi (.attribute): Add documentation.
582         * configure.ac (--enable-default-riscv-attribute): New options.
583         * configure: Re-generate.
584         * config.in: Re-generate.
585
586 2019-01-16  John Darrington <john@darrington.wattle.id.au>
587
588         * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
589         before the contents.
590         * testsuite/gas/s12z/labels.d: New file.
591         * testsuite/gas/s12z/labels.s: New file.
592         * testsuite/gas/s12z/s12z.exp: Add them.
593         * config/tc-s12z.c (tfr): Change as_bad to as_warn.
594         Also fix message typo and semantics.
595         * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
596         BFD_RELOC_24.
597         * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
598         of R_S12Z_EXT24.
599
600 2019-01-14  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
601
602         * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
603         (insns) [ARM_VARIANT]: Modified.
604         (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
605         in ARMv6T2 as well.
606         * testsuite/gas/arm/archv6t2-1.d: New test.
607         * testsuite/gas/arm/archv6t2-1.s: Likewise.
608         * testsuite/gas/arm/archv6t2-2.d: Likewise.
609
610 2019-01-11  Alan Modra  <amodra@gmail.com>
611
612         PR 23963
613         * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
614         * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
615
616 2019-01-10  Nick Clifton  <nickc@redhat.com>
617
618         PR 23963
619         * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
620         fact that control characters are now displayed as escape
621         sequences.
622         * testsuite/gas/mips/mips16-e.d: Likewise.
623         * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
624         * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
625         * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
626         * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
627         * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
628         * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
629         * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
630         * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
631         * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
632         * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
633         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
634         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
635         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
636         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
637         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
638         Likewise.
639         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
640         Likewise.
641         * testsuite/gas/mips/mipsel16-e.d: Likewise.
642         * testsuite/gas/mips/mipsr6@msa.d: Likewise.
643         * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
644         * testsuite/gas/mips/r6-64-n32.d: Likewise.
645         * testsuite/gas/mips/r6-64-n64.d: Likewise.
646         * testsuite/gas/mips/r6-n32.d: Likewise.
647         * testsuite/gas/mips/r6-n64.d: Likewise.
648         * testsuite/gas/mips/r6.d: Likewise.
649         * testsuite/gas/mips/tmips16-e.d: Likewise.
650         * testsuite/gas/mips/tmipsel16-e.d: Likewise.
651         * testsuite/gas/mn10300/relax.d: Likewise.
652
653 2019-01-09  John Darrington <john@darrington.wattle.id.au>
654
655         * testsuite/gas/s12z/jsr.s: New case.
656         * testsuite/gas/s12z/jsr.d: New case.
657
658 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
659
660         * configure: Regenerate.
661
662 2019-01-08  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
663
664         * config/tc-aarch64.c (aarch64_cpus): Add ares.
665         * doc/c-aarch64.texi (-mcpu): Document ares value.
666
667 2019-01-08  Alan Modra  <amodra@gmail.com>
668
669         * testsuite/gas/rx/rx.exp: Create generated test source in
670         current directory.
671         * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
672         * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
673         * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
674         * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
675         * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
676         * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
677         * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
678         * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
679         * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
680         * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
681         * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
682         * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
683         * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
684         * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
685         * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
686         * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
687         * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
688         * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
689         * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
690         * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
691         * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
692         * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
693         * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
694         * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
695         * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
696         * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
697         * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
698         * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
699         * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
700         * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
701         * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
702         * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
703         * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
704         * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
705         * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
706         * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
707         * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
708         * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
709         * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
710         * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
711         * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
712         * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
713         * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
714         * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
715         * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
716         * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
717         * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
718         * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
719         * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
720         * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
721         * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
722         * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
723         * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
724         * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
725         * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
726         * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
727         * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
728         * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
729         * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
730         * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
731         * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
732         * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
733         * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
734         * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
735         * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
736         * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
737         * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
738         * testsuite/gas/rx/xor.d: Add #source line.
739
740 2019-01-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
741
742         * config/tc-arm.c (arm_cpus): Add ares.
743         * doc/c-arm.texi (-mcpu): Document ares value.
744
745 2019-01-05  Yoshinori Sato  <ysato@users.sourceforge.jp>
746
747         * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
748         (rx_bfield): Add prototype.
749         (rx_post): Likewise.
750         * config/rx-parse.y: Add v3 instructions and Double FPU registers.
751         (DSIZE): Define.
752         (POST): Define.
753         (rx_check_v3): New. check v3 type.
754         (rx_check_dfpu): New. check have double support.
755         (double_condition_table): New. dcmp<cond> contiditon.
756         (check_condition): Multiple condition support.
757         (rx_lex): RXv3 instructions support.
758         Add parse dcmp<cond> instruction and Double FPU registers.
759         (immediate): Disable optimize in dmov #imm case.
760         (displacement): Add double displacement in dmov instraction.
761         * config/tc-rx.c (rx_use_conventional_section_names):
762         Invert default value in rx-*-linux target.
763         (cpu_type): Add additional ELF flags.
764         (cpu_type_list): Add RXv3.
765         (md_parse_option): Refer elf_flags from cpu_type_list.
766         (md_show_usage): Add rxv3 and rxv3-dfpu.
767         (rx_bytesT): Add post byte.
768         (rx_bfield): New. generate bfmov / bfmovz "imm" field.
769         (rx_post): New. Set instruction post byte.
770         (md_assemble): Add post byte.
771         doc/c-rx.texi: Add cpu types.
772         * testsuite/gas/rx/Xtod.d: New.
773         * testsuite/gas/rx/Xtod.sm: New.
774         * testsuite/gas/rx/bfmov.d: New.
775         * testsuite/gas/rx/bfmov.sm: New.
776         * testsuite/gas/rx/dabs.d: New.
777         * testsuite/gas/rx/dabs.sm: New.
778         * testsuite/gas/rx/dadd.d: New.
779         * testsuite/gas/rx/dadd.sm: New.
780         * testsuite/gas/rx/dcmp.d: New.
781         * testsuite/gas/rx/dcmp.sm: New.
782         * testsuite/gas/rx/ddiv.d: New.
783         * testsuite/gas/rx/ddiv.sm: New.
784         * testsuite/gas/rx/dmov.d: New.
785         * testsuite/gas/rx/dmov.sm: New.
786         * testsuite/gas/rx/dmul.d: New.
787         * testsuite/gas/rx/dmul.sm: New.
788         * testsuite/gas/rx/dneg.d: New.
789         * testsuite/gas/rx/dneg.sm: New.
790         * testsuite/gas/rx/dpopm.d: New.
791         * testsuite/gas/rx/dpopm.sm: New.
792         * testsuite/gas/rx/dpushm.d: New.
793         * testsuite/gas/rx/dpushm.sm: New.
794         * testsuite/gas/rx/dround.d: New.
795         * testsuite/gas/rx/dround.sm: New.
796         * testsuite/gas/rx/dsqrt.d: New.
797         * testsuite/gas/rx/dsqrt.sm: New.
798         * testsuite/gas/rx/dsub.d: New.
799         * testsuite/gas/rx/dsub.sm: New.
800         * testsuite/gas/rx/dtoX.d: New.
801         * testsuite/gas/rx/dtoX.sm: New.
802         * testsuite/gas/rx/macros.inc: Add double FPU registers.
803         * testsuite/gas/rx/mvfdc.d: New.
804         * testsuite/gas/rx/mvfdc.sm: New.
805         * testsuite/gas/rx/mvfdr.d: New.
806         * testsuite/gas/rx/mvfdr.sm: New.
807         * testsuite/gas/rx/mvtdc.d: New.
808         * testsuite/gas/rx/mvtdc.sm: New.
809         * testsuite/gas/rx/rstr.d: New.
810         * testsuite/gas/rx/rstr.sm: New.
811         * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
812         * testsuite/gas/rx/save.d: New.
813         * testsuite/gas/rx/save.sm: New.
814         * testsuite/gas/rx/xor.d: New.
815         * testsuite/gas/rx/xor.sm: Add pattern.
816
817 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
818
819         PR 24010
820         * macro.c (get_any_string): Check for end of input whilst scanning
821         for separators.
822
823 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
824
825         PR 24009
826         * read.c (stringer): Fix handling of missing '>' character at end
827         of <...> sequence.
828
829 2019-01-01  Alan Modra  <amodra@gmail.com>
830
831         Update year range in copyright notice of all files.
832
833 For older changes see ChangeLog-2018
834 \f
835 Copyright (C) 2019 Free Software Foundation, Inc.
836
837 Copying and distribution of this file, with or without modification,
838 are permitted in any medium without royalty provided the copyright
839 notice and this notice are preserved.
840
841 Local Variables:
842 mode: change-log
843 left-margin: 8
844 fill-column: 74
845 version-control: never
846 End: