x86: simplify result processing of cpu_flags_match()
[external/binutils.git] / gas / ChangeLog
1 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2
3         * config/tc-i386.c (parse_insn): Move success return up. Combine
4         failure returns.
5
6 2018-03-08  Jan Beulich  <jbeulich@suse.com>
7
8         * config/tc-i386.c (cpu_flags_match): Add GFNI check to AVX
9         logic. Add respective logic for AVX512F.
10         * testsuite/gas/i386/arch-avx-1.s: Add GFNI test.
11         testsuite/gas/i386/arch-avx-1.d,
12         testsuite/gas/i386/arch-avx-1-1.l,
13         testsuite/gas/i386/arch-avx-1-2.l,
14         testsuite/gas/i386/arch-avx-1-3.l,
15         testsuite/gas/i386/arch-avx-1-4.l,
16         testsuite/gas/i386/arch-avx-1-5.l,
17         testsuite/gas/i386/arch-avx-1-6.l: Adjust expectations.
18         * testsuite/gas/i386/arch-avx-1-7.l,
19         testsuite/gas/i386/arch-avx-1-7.s,
20         testsuite/gas/i386/arch-avx-1-8.l,
21         testsuite/gas/i386/arch-avx-1-8.s,
22         testsuite/gas/i386/avx512f-plain.l,
23         testsuite/gas/i386/avx512f-plain.s,
24         testsuite/gas/i386/avx512vl-plain.l,
25         testsuite/gas/i386/avx512vl-plain.s: New.
26         * testsuite/gas/i386/i386.exp: Run new tests.
27
28 2018-03-08  Jan Beulich  <jbeulich@suse.com>
29
30         * config/tc-i386.c (cpu_flags_match): Move AVX512VL check ahead.
31
32 2018-03-08  Jan Beulich  <jbeulich@suse.com>
33
34         * config/tc-i386.c (CPU_FLAGS_32BIT_MATCH): Delete.
35         (cpu_flags_match): Use CPU_FLAGS_ARCH_MATCH instead of
36         CPU_FLAGS_32BIT_MATCH.
37
38 2018-03-08  Jan Beulich  <jbeulich@suse.com>
39
40         * config/tc-i386.c (CPU_FLAGS_AES_MATCH, CPU_FLAGS_AVX_MATCH,
41         CPU_FLAGS_PCLMUL_MATCH): Delete.
42         (CPU_FLAGS_32BIT_MATCH): Drop uses of deleted CPU_FLAGS_*_MATCH.
43         (cpu_flags_match): Combine AVX checks into
44         single if().
45
46 2018-03-08  Jan Beulich  <jbeulich@suse.com>
47
48         * config/tc-i386.c (cpu_flags_match): Drop "else" branches
49         setting CPU_FLAGS_ARCH_MATCH.
50
51 2018-03-08  Jan Beulich  <jbeulich@suse.com>
52
53         * config/tc-i386.c (md_assemble): Extend SSE check conditional.
54         * testsuite/gas/i386/ilp32/x86-64-sse-check-none.d,
55         testsuite/gas/i386/ilp32/x86-64-sse-check-warn.d,
56         testsuite/gas/i386/ilp32/x86-64-sse-check.d,
57         testsuite/gas/i386/sse-check-none.d,
58         testsuite/gas/i386/sse-check-warn.d,
59         testsuite/gas/i386/x86-64-sse-check.d,
60         testsuite/gas/i386/x86-64-sse-check-none.d,
61         testsuite/gas/i386/x86-64-sse-check-warn.d: Refer to sse-check.d.
62         * testsuite/gas/i386/sse-check.s: Add AES, GFNI, and PCLMUL
63         tests.
64         * testsuite/gas/i386/sse-check-none.s: Replace code by inclusion
65         of sse-check.s.
66         * testsuite/gas/i386/sse-check.d: Adjust expectations.
67         * testsuite/gas/i386/sse-check-error.l,
68         testsuite/gas/i386/x86-64-sse-check-error.l: Likewise.
69         * testsuite/gas/i386/sse-check-warn.e: Likewise.
70
71 2018-03-08  Jan Beulich  <jbeulich@suse.com>
72
73         * config/tc-i386.c (operand_size_match): Drop / replace uses of
74         .floatd.
75
76 2018-03-08  Jan Beulich  <jbeulich@suse.com>
77
78         * testsuite/gas/i386/intel-intel.d: New.
79         * testsuite/gas/i386/i386.exp: Run new test.
80
81 2018-03-08  Jan Beulich  <jbeulich@suse.com>
82
83         * config/tc-i386.c (process_operands): Access operands only
84         after operand count assertion. Sanitize warning text. Fix
85         indentation.
86         * testsuite/gas/i386/avx512_4fmaps-warn.l,
87         gas/i386/x86-64-avx512_4fmaps-warn.l: Adjust expectations.
88
89 2018-03-08  Jan Beulich  <jbeulich@suse.com>
90
91         * testsuite/gas/i386/x86-64-movd.s: Drop bogus vmovd memory forms.
92         * testsuite/gas/i386/x86-64-movd.d,
93         testsuite/gas/i386/x86-64-movd-intel.d: Adjust expectations.
94
95 2018-03-08  Jan Beulich  <jbeulich@suse.com>
96
97         * config/tc-i386.c (operand_type_and_not): New.
98         (build_modrm_byte): Use it to prevent clearing unrelated bits.
99
100 2018-03-08  Alan Modra  <amodra@gmail.com>
101
102         * config/tc-ppc.c (ppc_handle_align): Correct last patch.  Really
103         don't emit a group terminating nop for power9.  Simplify cpu
104         tests.
105
106 2018-03-08  Alan Modra  <amodra@gmail.com>
107
108         * config/tc-ppc.c (ppc_handle_align): Don't emit a group
109         terminating nop for power9.
110
111 2018-03-07  H.J. Lu  <hongjiu.lu@intel.com>
112
113         PR gas/22874
114         * config/tc-i386.c (f32_5): Removed.
115         (f32_8): Likewise.
116         (f32_9): Likewise.
117         (f32_10): Likewise.
118         (f32_11): Likewise.
119         (f32_12): Likewise.
120         (f32_13): Likewise.
121         (f32_14): Likewise.
122         (f16_5): Likewise.
123         (f16_6): Likewise.
124         (f16_7): Likewise.
125         (f16_8): Likewise.
126         (jump_31): Likewise.
127         (alt64_11): Likewise.
128         (alt64_patt): Likewise.
129         (jump_disp8): New.
130         (jump32_disp32): Likewise.
131         (jump16_disp32): Likewise.
132         (alt_11): Likewise.
133         (f32_patt): Updated.
134         (f16_patt): Likewise.
135         (alt_patt): Add alt_11.
136         (i386_align_code): Merged with ...
137         (i386_generate_nops): This.  Rewritten.
138         (fits_in_imm7): Moved before i386_generate_nops.
139         (fits_in_imm31): Likewise.
140         * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Updated to
141         4095.
142         (i386_align_code): Removed.
143         (HANDLE_ALIGN): Rewritten with i386_generate_nops.
144         * doc/as.texinfo: Update limits of control byte for x86 .nops
145         directive.
146         * testsuite/gas/i386/i386.exp: Run nops-7 and x86-64-nops-7.
147         * gas/testsuite/gas/i386/noavx-3.l: Updated.
148         * gas/testsuite/gas/i386/nop-1.d: Likewise.
149         * gas/testsuite/gas/i386/nop-1.s: Likewise.
150         * gas/testsuite/gas/i386/nop-2.d: Likewise.
151         * gas/testsuite/gas/i386/nop-2.s: Likewise.
152         * gas/testsuite/gas/i386/nop-3.d: Likewise.
153         * gas/testsuite/gas/i386/nop-4.d: Likewise.
154         * gas/testsuite/gas/i386/nop-5.d: Likewise.
155         * gas/testsuite/gas/i386/nop-5.s: Likewise.
156         * gas/testsuite/gas/i386/nop-6.d: Likewise.
157         * gas/testsuite/gas/i386/nop-bad-1.l: Likewise.
158         * gas/testsuite/gas/i386/nops-1-core2.d: Likewise.
159         * gas/testsuite/gas/i386/nops-1-i386-i686.d: Likewise.
160         * gas/testsuite/gas/i386/nops-1-i386.d: Likewise.
161         * gas/testsuite/gas/i386/nops-1-i686.d: Likewise.
162         * gas/testsuite/gas/i386/nops-1-k8.d: Likewise.
163         * gas/testsuite/gas/i386/nops-1.d: Likewise.
164         * gas/testsuite/gas/i386/nops-2-core2.d: Likewise.
165         * gas/testsuite/gas/i386/nops-2-i386.d: Likewise.
166         * gas/testsuite/gas/i386/nops-2.d: Likewise.
167         * gas/testsuite/gas/i386/nops-3-i386.d: Likewise.
168         * gas/testsuite/gas/i386/nops-3-i686.d: Likewise.
169         * gas/testsuite/gas/i386/nops-3.d: Likewise.
170         * gas/testsuite/gas/i386/nops-4-i386.d: Likewise.
171         * gas/testsuite/gas/i386/nops-4-i686.d: Likewise.
172         * gas/testsuite/gas/i386/nops-4.d: Likewise.
173         * gas/testsuite/gas/i386/nops-4a-i686.d: Likewise.
174         * gas/testsuite/gas/i386/nops-5-i686.d: Likewise.
175         * gas/testsuite/gas/i386/nops-5.d: Likewise.
176         * gas/testsuite/gas/i386/nops-6.d: Likewise.
177         * gas/testsuite/gas/i386/nops16-1.d: Likewise.
178         * gas/testsuite/gas/i386/x86-64-nop-1.d: Likewise.
179         * gas/testsuite/gas/i386/x86-64-nop-2.d: Likewise.
180         * gas/testsuite/gas/i386/x86-64-nop-5.d: Likewise.
181         * gas/testsuite/gas/i386/x86-64-nops-1-core2.d: Likewise.
182         * gas/testsuite/gas/i386/x86-64-nops-1-g64.d: Likewise.
183         * gas/testsuite/gas/i386/x86-64-nops-1-k8.d: Likewise.
184         * gas/testsuite/gas/i386/x86-64-nops-1-pentium.d: Likewise.
185         * gas/testsuite/gas/i386/x86-64-nops-1.d: Likewise.
186         * gas/testsuite/gas/i386/x86-64-nops-2.d: Likewise.
187         * gas/testsuite/gas/i386/x86-64-nops-3.d: Likewise.
188         * gas/testsuite/gas/i386/x86-64-nops-4-core2.d: Likewise.
189         * gas/testsuite/gas/i386/x86-64-nops-4-k8.d: Likewise.
190         * gas/testsuite/gas/i386/x86-64-nops-4.d: Likewise.
191         * gas/testsuite/gas/i386/x86-64-nops-5-k8.d: Likewise.
192         * gas/testsuite/gas/i386/x86-64-nops-5.d: Likewise.
193         * gas/testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d: Likewise.
194         * gas/testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d: Likewise.
195         * gas/testsuite/gas/i386/ilp32/x86-64-nops-1-pentium.d: Likewise.
196         * gas/testsuite/gas/i386/ilp32/x86-64-nops-1.d: Likewise.
197         * gas/testsuite/gas/i386/ilp32/x86-64-nops-2.d: Likewise.
198         * gas/testsuite/gas/i386/ilp32/x86-64-nops-3.d: Likewise.
199         * gas/testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d: Likewise.
200         * gas/testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d: Likewise.
201         * gas/testsuite/gas/i386/ilp32/x86-64-nops-4.d: Likewise.
202         * gas/testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d: Likewise.
203         * gas/testsuite/gas/i386/ilp32/x86-64-nops-5.d: Likewise.
204         * gas/testsuite/gas/i386/nops-7.d: New file.
205         * gas/testsuite/gas/i386/nops-7.s: Likewise.
206         * gas/testsuite/gas/i386/x86-64-nops-7.d: Likewise.
207
208 2018-03-07  Alan Modra  <amodra@gmail.com>
209
210         * testsuite/gas/ppc/aix.exp: Run for rs6000 too.
211         * testsuite/gas/ppc/ppc.exp: Run more tests for non-ELF targets.
212         * testsuite/gas/ppc/machine.d: Don't run for PE targets.
213
214 2018-03-02  Thomas Preud'homme  <thomas.preudhomme@arm.com>
215
216         * config/tc-arm.c (md_begin): Add NULL pointer check before
217         dereferencing march_ext_opt.
218
219 2018-03-01  Thomas Preud'homme  <thomas.preudhomme@arm.com>
220
221         * config/tc-arm.c (cpu_variant, arm_arch_used, thumb_arch_used,
222         legacy_cpu, legacy_fpu, mcpu_cpu_opt, dyn_mcpu_ext_opt,
223         mcpu_fpu_opt, march_cpu_opt, dyn_march_ext_opt, march_fpu_opt,
224         mfpu_opt, object_arch, selected_cpu): Comment meaning of variables.
225         (dyn_mcpu_ext_opt): Also rename into ...
226         (mcpu_ext_opt): This.
227         (dyn_march_ext_opt): Also rename into ...
228         (march_ext_opt): This.
229         (object_arch): Also rename into ...
230         (selected_object_arch): This and make it a plain arm_feature_set
231         structure.
232         (selected_arch, selected_ext, selected_fpu): New static variables.
233         (mark_feature_used): Fix comments, feature is marked as used iff it is
234         currently allowed.
235         (do_bx): Adapt to change in name and type of object_arch.
236         (md_begin): Set selected_arch rather than mcpu_cpu_opt, selected_ext
237         rather than dyn_mcpu_ext_opt and selected_fpu rather than mfpu_opt.
238         Remove dead code to set default FPU if architecture version is greater
239         than 5.  Set all CPU bits of cpu_variant directly in autodection
240         leaving mcpu_cpu_opt, selected_arch and selected_cpu unset.
241         (arm_parse_extension): Take extension feature set pointer parameter by
242         value rather than by pointer.  Remove allocation code.  Adapt code
243         accordingly.
244         (arm_parse_cpu): Adapt to variable renaming and changes in
245         arm_parse_extension () signature.
246         (arm_parse_arch): Likewise.
247         (aeabi_set_public_attributes): Also set selected_arch and selected_ext
248         in addition to selected_cpu.  Set flags_arch and flags_ext from them
249         instead of selected_cpu.  Adapt to variables renaming and type change.
250         (arm_md_post_relax): Adapt to variable renaming.
251         (s_arm_cpu): Set selcted_cpu_cpu and selected_ext instead of
252         mcpu_cpu_opt and dyn_mcpu_ext_opt.  Set selected_cpu from them and
253         cpu_variant from selected_cpu and selected_fpu.
254         (s_arm_arch): Likewise.
255         (s_arm_object_arch): Adapt to variable renaming.
256         (s_arm_arch_extension): Use ARM_CPU_IS_ANY instead of checking feature
257         set against arm_any.  Check selected_arch rather than *mcpu_cpu_opt.
258         Set selected_ext rather than *dyn_mcpu_ext_opt and remove allocation
259         code.
260         (s_arm_fpu): Set selected_fpu instead of mfpu_opt.  Set all CPU feature
261         bits if in autodetection mode.
262
263 2018-03-01  H.J. Lu  <hongjiu.lu@intel.com>
264
265         * config/tc-i386.c (optimize_encoding): Optimize AVX256 and
266         AVX512 vpsub[bwdq] instructions.
267         * testsuite/gas/i386/optimize-1.s: Add tests for AVX256 and
268         AVX512 vpsub[bwdq] instructions.
269         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
270         * testsuite/gas/i386/optimize-1.d: Updated.
271         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
272
273 2018-03-01  Alan Modra  <amodra@gmail.com>
274
275         * configure.ac (ALL_LINGUAS): Add uk.  Sort.
276         * configure: Regenerate.
277
278 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
279
280         * NEWS: Rename .nop to .nops.
281         * doc/as.texinfo: Likewise.
282         * read.c (potable): Add "nops".  Remove "nop".
283         (s_nop): Renamed to ...
284         (s_nops): This.
285         * read.h (s_nop): Renamed to ...
286         (s_nops): This.
287         * write.c (cvt_frag_to_fill): Rename .nop to .nops.
288         (md_generate_nops): Likewise.
289         (relax_segment): Likewise.
290         * testsuite/gas/i386/nop-1.d: Updated.
291         * testsuite/gas/i386/nop-1.s: Likewise.
292         * testsuite/gas/i386/nop-2.d: Likewise.
293         * testsuite/gas/i386/nop-2.s: Likewise.
294         * testsuite/gas/i386/nop-3.d: Likewise.
295         * testsuite/gas/i386/nop-3.s: Likewise.
296         * testsuite/gas/i386/nop-4.d: Likewise.
297         * testsuite/gas/i386/nop-4.s: Likewise.
298         * testsuite/gas/i386/nop-5.d: Likewise.
299         * testsuite/gas/i386/nop-5.s: Likewise.
300         * testsuite/gas/i386/nop-6.d: Likewise.
301         * testsuite/gas/i386/nop-6.s: Likewise.
302         * testsuite/gas/i386/nop-bad-1.l: Likewise.
303         * testsuite/gas/i386/nop-bad-1.s: Likewise.
304         * testsuite/gas/i386/x86-64-nop-1.d: Likewise.
305         * testsuite/gas/i386/x86-64-nop-2.d: Likewise.
306         * testsuite/gas/i386/x86-64-nop-3.d: Likewise.
307         * testsuite/gas/i386/x86-64-nop-4.d: Likewise.
308         * testsuite/gas/i386/x86-64-nop-5.d: Likewise.
309         * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
310
311 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
312
313         PR gas/22871
314         * NEWS: Mention -O[2|s].
315         * config/tc-i386.c (_i386_insn): Add no_optimize.
316         (optimize): New.
317         (optimize_for_space): Likewise.
318         (fits_in_imm7): New function.
319         (fits_in_imm31): Likewise.
320         (optimize_encoding): Likewise.
321         (md_assemble): Call optimize_encoding to optimize encoding.
322         (parse_insn): Handle {nooptimize}.
323         (md_shortopts): Append "O::".
324         (md_parse_option): Handle -On.
325         * doc/c-i386.texi: Document -O0, -O, -O1, -O2 and -Os as well
326         as {nooptimize}.
327         * testsuite/gas/cfi/cfi-x86_64.d: Pass -O0 to assembler.
328         * testsuite/gas/i386/ilp32/cfi/cfi-x86_64.d: Likewise.
329         * testsuite/gas/i386/i386.exp: Run optimize-1, optimize-2,
330         optimize-3, x86-64-optimize-1, x86-64-optimize-2,
331         x86-64-optimize-3 and x86-64-optimize-4.
332         * testsuite/gas/i386/optimize-1.d: New file.
333         * testsuite/gas/i386/optimize-1.s: Likewise.
334         * testsuite/gas/i386/optimize-2.d: Likewise.
335         * testsuite/gas/i386/optimize-2.s: Likewise.
336         * testsuite/gas/i386/optimize-3.d: Likewise.
337         * testsuite/gas/i386/optimize-3.s: Likewise.
338         * testsuite/gas/i386/x86-64-optimize-1.s: Likewise.
339         * testsuite/gas/i386/x86-64-optimize-1.d: Likewise.
340         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
341         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
342         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
343         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
344         * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
345         * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
346
347 2018-02-27  Nick Clifton  <nickc@redhat.com>
348
349         * po/ru.po: Updated Russian translation.
350
351 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
352
353         * doc/as.texinfo (Pseudo Ops): Clean up `.dc' and `.ds'
354         descriptions.
355
356 2018-02-26  Nick Clifton  <nickc@redhat.com>
357
358         * doc/as.texinfo (Dc): Fix typo.
359
360 2018-02-26  Alan Modra  <amodra@gmail.com>
361
362         * testsuite/gas/mips/reginfo-2.l: Update.
363
364 2018-02-23  Alan Modra  <amodra@gmail.com>
365
366         * testsuite/gas/mips/reginfo-2.l: Update.
367
368 2018-02-23  Nick Clifton  <nickc@redhat.com>
369
370         * doc/as.texinfo (Pseudo Ops): Add nodes for .dc, .dcb and .ds.
371
372 2018-02-23  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
373
374         * config/tc-nds32.c (ict_model): New function. Hook new
375         directive .ict_model.
376         (nds32_insert_relax_entry): Tag the bits of entry relocation
377         for .ict_model.
378
379 2018-02-22  H.J. Lu  <hongjiu.lu@intel.com>
380
381         * config/tc-i386.c (_i386_insn): Add rex_encoding.
382         (md_assemble): When i.rex_encoding is true, generate a REX byte
383         if possible.
384         (parse_insn): Set i.rex_encoding for {rex}.
385         * doc/c-i386.texi: Document {rex}.
386         * testsuite/gas/i386/x86-64-pseudos.s: Add {rex} tests.
387         * testsuite/gas/i386/x86-64-pseudos.d: Updated.
388
389 2018-02-22  A. Wilcox  <awilfox@adelielinux.org>
390
391         PR 22014
392         * config/tc-mips.c (mips_lookup_insn): Use memmove to strip the
393         instruction size suffix.
394
395 2018-02-20  Maciej W. Rozycki  <macro@mips.com>
396
397         * testsuite/gas/mips/mips16-branch-reloc-4.d: New test.
398         * testsuite/gas/mips/mips16-branch-reloc-5.d: New test.
399         * testsuite/gas/mips/mips16-branch-reloc-4.s: New test source.
400         * testsuite/gas/mips/mips16-branch-reloc-5.s: New test source.
401         * testsuite/gas/mips/mips.exp: Run the new tests.
402
403 2018-02-20  Max Filippov  <jcmvbkbc@gmail.com>
404
405         * config/tc-xtensa.c (struct litpool_frag): Add new field
406         literal_count.
407         (MAX_AUTO_POOL_LITERALS, MAX_EXPLICIT_POOL_LITERALS)
408         (MAX_POOL_LITERALS): New macro definitions.
409         (auto_litpool_limit): Initialize to 0.
410         (md_parse_option): Set auto_litpool_limit in the presence of
411         --auto-litpools option.
412         (xtensa_maybe_create_literal_pool_frag): Zero-initialize
413         literal_count field.
414         (xg_find_litpool): New function. Make sure that found literal
415         pool size is within the limit.
416         (xtensa_move_literals): Extract literal pool search code into
417         the new function.
418         * testsuite/gas/xtensa/all.exp: Add auto-litpools-2 test.
419         * testsuite/gas/xtensa/auto-litpools-2.d: New file.
420         * testsuite/gas/xtensa/auto-litpools-2.s: New file.
421         * testsuite/gas/xtensa/auto-litpools.d: Fix up changed
422         addresses.
423         * testsuite/gas/xtensa/auto-litpools.s: Change literal value so
424         that objdump doesn't get out of sync.
425
426 2018-02-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
427
428         * doc/c-arm.texi (.arch_extension): Mention extensions it accepts are
429         also the same as -march.
430
431 2018-02-17  H.J. Lu  <hongjiu.lu@intel.com>
432
433         * NEWS: Mention .nop directive.
434         * as.h (_relax_state): Add rs_space_nop and rs_fill_nop.
435         * read.c (potable): Add .nop.
436         (s_nop): New function.
437         * read.h (s_nop): New prototype.
438         * write.c (cvt_frag_to_fill): Handle rs_space_nop and
439         rs_fill_nop.
440         (md_generate_nops): New function.
441         (relax_segment): Likewise.
442         (write_contents): Use md_generate_nops for rs_fill_nop.
443         * config/tc-i386.c (alt64_11): New.
444         (alt64_patt): Likewise.
445         (md_convert_frag): Handle rs_space_nop.
446         (i386_output_nops): New function.
447         (i386_generate_nops): Likewise.
448         (i386_align_code): Call i386_output_nops.
449         * config/tc-i386.h (i386_generate_nops): New.
450         (md_generate_nops): Likewise.
451         * doc/as.texinfo: Document .nop directive.
452         * testsuite/gas/i386/i386.exp: Run .nop directive tests.
453         * testsuite/gas/i386/nop-1.d: New file.
454         * testsuite/gas/i386/nop-1.s: Likewise.
455         * testsuite/gas/i386/nop-2.d: Likewise.
456         * testsuite/gas/i386/nop-2.s: Likewise.
457         * testsuite/gas/i386/nop-3.d: Likewise.
458         * testsuite/gas/i386/nop-3.s: Likewise.
459         * testsuite/gas/i386/nop-4.d: Likewise.
460         * testsuite/gas/i386/nop-4.s: Likewise.
461         * testsuite/gas/i386/nop-5.d: Likewise.
462         * testsuite/gas/i386/nop-5.s: Likewise.
463         * testsuite/gas/i386/nop-6.d: Likewise.
464         * testsuite/gas/i386/nop-6.s: Likewise.
465         * testsuite/gas/i386/nop-bad-1.l: Likewise.
466         * testsuite/gas/i386/nop-bad-1.s: Likewise.
467         * testsuite/gas/i386/x86-64-nop-1.d: Likewise.
468         * testsuite/gas/i386/x86-64-nop-2.d: Likewise.
469         * testsuite/gas/i386/x86-64-nop-3.d: Likewise.
470         * testsuite/gas/i386/x86-64-nop-4.d: Likewise.
471         * testsuite/gas/i386/x86-64-nop-5.d: Likewise.
472         * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
473
474 2018-02-15  Tamar Christina  <tamar.christina@arm.com>
475
476         * config/tc-arm.c (cpu_arch_ver): Renumber ARM_ARCH_V8_4A.
477         * testsuite/gas/arm/attr-march-armv8_4-a.d: New.
478
479 2018-02-13  Max Filippov  <jcmvbkbc@gmail.com>
480
481         * config/tc-xtensa.c (xg_find_best_trampoline): Skip trampoline
482         frag that contains source address.
483
484 2018-02-13  Nick Clifton  <nickc@redhat.com>
485
486         PR 22773
487         * config/tc-arm.c (md_apply_fix): Test Rn field of Thumb ORR
488         instruction before assuming that it is a MOV instruction.
489         * testsuite/gas/arm/pr22773.s: New test.
490         * testsuite/gas/arm/pr22773.d: New test driver.
491         * testsuite/gas/arm/pr22773.l: New expected output.
492
493 2018-02-13  H.J. Lu  <hongjiu.lu@intel.com>
494
495         PR gas/22791
496         * config/tc-i386.c (need_plt32_p): New function.
497         (output_jump): Generate BFD_RELOC_X86_64_PLT32 if possible.
498         (md_estimate_size_before_relax): Likewise.
499         * testsuite/gas/i386/reloc64.d: Updated.
500         * testsuite/gas/i386/x86-64-jump.d: Likewise.
501         * testsuite/gas/i386/x86-64-mpx-branch-1.d: Likewise.
502         * testsuite/gas/i386/x86-64-mpx-branch-2.d: Likewise.
503         * testsuite/gas/i386/x86-64-relax-2.d: Likewise.
504         * testsuite/gas/i386/x86-64-relax-3.d: Likewise.
505         * testsuite/gas/i386/ilp32/reloc64.d: Likewise.
506         * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise.
507
508 2018-02-13  Maciej W. Rozycki  <macro@mips.com>
509
510         * testsuite/gas/mips/loongson-3a-2.d: Rename test.
511
512 2018-02-13  Nick Clifton  <nickc@redhat.com>
513
514         PR 22823
515         * config/obj-elf.c (elf_pseudo_table): Remove now redundant
516         casts.
517         (obj_elf_vtable_inherit): Rename to obj_elf_get_vtable_inherit.
518         (obj_elf_vtable_inherit): New stub function that calls
519         obj_elf_get_vtable_inherit.
520         (obj_elf_vtable_entry): Rename to obj_elf_get_vtable_entry.
521         (obj_elf_vtable_entry): New stub function that calls
522         obj_elf_get_vtable_entry.
523         * config/obj-elf.h (obj_elf_vtable_inherit): Update prototype.
524         (obj_elf_vtable_entry) Likewise.
525         (obj_elf_get_vtable_inherit) Likewise.
526         (obj_elf_get_vtable_entry) Likewise.
527         * config/tc-arm.c (md_pseudo_table): Remove now redundant cast.
528         * config/tc-i386c (md_pseudo_table): Likewise.
529         * config/tc-hppa.c (pa_vtable_entry): Call
530         obj_elf_get_vtable_entry.
531         (pa_vtable_inherit): Call obj_elf_get_vtable_inherit.
532         * config/tc-mips.c (s_mips_file): Replace call to dwarf2_get_file
533         with call to dwarf2_get_filename.
534         * dwarf2dbg.c (dwarf2_directive_file): Rename to
535         dwarf2_directive_filename.
536         (dwarf2_directive_file): New stub function that calls
537         dwarf2_directive_filename.
538         * dwarf2dbg.h: Prototype dwarf2_directive_filename.
539
540 2018-02-12  Maciej W. Rozycki  <macro@mips.com>
541
542         * testsuite/gas/mips/reginfo-2-n32.d: Add `--no-pad-sections' to
543         `as' flags.
544
545 2018-02-12  Henry Wong <henry@stuffedcow.net>
546
547         * testsuite/gas/mips/r6.d: Update for "sigrie" encoding fix.
548         * testsuite/gas/mips/r6-n32.d: Likewise.
549         * testsuite/gas/mips/r6-n64.d: Likewise.
550
551 2018-02-12  Nick Clifton  <nickc@redhat.com>
552
553         * po/ru.po: Updated Russian translation.
554
555 2018-02-08  Alan Modra  <amodra@gmail.com>
556
557         PR 22819
558         * config/tc-ppc.c (md_assemble): Rewrite insn alignment checking.
559         (ppc_frag_check): Likewise.
560         * testsuite/gas/ppc/misalign.d,
561         * testsuite/gas/ppc/misalign.l,
562         * testsuite/gas/ppc/misalign.s: New test.
563         * testsuite/gas/ppc/misalign2.d,
564         * testsuite/gas/ppc/misalign2.s: New test.
565         * testsuite/gas/ppc/ppc.exp: Run them.
566
567 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
568
569         * config/tc-riscv.c (riscv_handle_implicit_zero_offset): Rename
570         `expr' parameter to `ep'.
571
572 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
573
574         * testsuite/gas/mips/reginfo-2.d: New test.
575         * testsuite/gas/mips/reginfo-2-n32.d: New test.
576         * testsuite/gas/mips/reginfo-2.l: New test stderr output.
577         * testsuite/gas/mips/reginfo-2.s: New test source.
578         * testsuite/gas/mips/mips.exp: Run the new tests.
579
580 2018-02-05  Nick Clifton  <nickc@redhat.com>
581
582         * po/ru.po: Updated Russian translation.
583
584 2018-01-31  Alan Modra  <amodra@gmail.com>
585
586         PR 22714
587         * app.c (last_char): New static var.
588         (struct app_save): Add last_char field.
589         (app_push, app_pop): Handle it.
590         (do_scrub_chars): Use last_char in test for "\@".  Set last_char.
591
592 2018-01-29  Eric Botcazou  <ebotcazou@adacore.com>
593
594         PR gas/22738
595         * config/tc-sparc.h (sparc_mach): Declare.
596         (TARGET_MACH): Define to above.
597         * config/tc-sparc.c (sparc_mach): New function.
598         (sparc_md_end): Minor tweak.
599
600 2018-01-29  Nick Clifton  <nickc@redhat.com>
601
602         * po/ru.po: Updated Russian translation.
603
604 2018-01-26  Maciej W. Rozycki  <macro@mips.com>
605
606         * configure.tgt: Use generic emulation for `mips-*-windiss',
607         overriding the blanket choice made for `*-*-windiss'.
608
609 2018-01-26  Maciej W. Rozycki  <macro@mips.com>
610
611         * configure.tgt: Use `mips-*-sysv4*' rather than
612         `mips-*-sysv4*MP*'.
613
614 2018-01-24  Renlin Li  <renlin.li@arm.com>
615
616         * config/tc-aarch64.c (reloc_table): add entries for
617         BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
618         BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
619         BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
620         BFD_RELOC_AARCH64_MOVW_PREL_G3.
621         (process_movw_reloc_info): Supports newly added MOVW_PREL relocations.
622         (md_apply_fix): Likewise
623         * testsuite/gas/aarch64/prel_g0.s: New.
624         * testsuite/gas/aarch64/prel_g0.d: New.
625         * testsuite/gas/aarch64/prel_g0_nc.s: New.
626         * testsuite/gas/aarch64/prel_g0_nc.d: New.
627         * testsuite/gas/aarch64/prel_g1.s: New.
628         * testsuite/gas/aarch64/prel_g1.d: New.
629         * testsuite/gas/aarch64/prel_g1_nc.s: New.
630         * testsuite/gas/aarch64/prel_g1_nc.d: New.
631         * testsuite/gas/aarch64/prel_g2.s: New.
632         * testsuite/gas/aarch64/prel_g2.d: New.
633         * testsuite/gas/aarch64/prel_g2_nc.s: New.
634         * testsuite/gas/aarch64/prel_g2_nc.d: New.
635         * testsuite/gas/aarch64/prel_g3.s: New.
636         * testsuite/gas/aarch64/prel_g3.d: New.
637
638 2018-01-23  Maciej W. Rozycki  <macro@mips.com>
639
640         * configure.ac: Also set `mips_default_abi' to N32_ABI for
641         `mips64*-ps2-elf*'.
642         * configure: Regenerate.
643
644 2018-01-23  Maciej W. Rozycki  <macro@mips.com>
645
646         * config/tc-mips.c (options): Remove OPTION_COMPAT_ARCH_BASE
647         enum value.
648
649 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
650
651         * config/tc-i386.c (cpu_arch): Add .pconfig.
652         * doc/c-i386.texi: Document .pconfig.
653         * testsuite/gas/i386/i386.exp: Add PCONFIG tests.
654         * testsuite/gas/i386/pconfig-intel.d: New test.
655         * testsuite/gas/i386/pconfig.d: Likewise.
656         * testsuite/gas/i386/pconfig.s: Likewise.
657         * testsuite/gas/i386/x86-64-pconfig-intel.d: Likewise.
658         * testsuite/gas/i386/x86-64-pconfig.d: Likewise.
659         * testsuite/gas/i386/x86-64-pconfig.s: Likewise.
660
661 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
662
663         * config/tc-i386.c (cpu_arch): Add .wbnoinvd.
664         * doc/c-i386.texi: Document .wbnoinvd.
665         * testsuite/gas/i386/i386.exp: Add WBNOINVD tests.
666         * testsuite/gas/i386/wbnoinvd-intel.d: New test.
667         * testsuite/gas/i386/wbnoinvd.d: Likewise.
668         * testsuite/gas/i386/wbnoinvd.s: Likewise.
669         * testsuite/gas/i386/x86-64-wbnoinvd-intel.d: Likewise.
670         * testsuite/gas/i386/x86-64-wbnoinvd.d: Likewise.
671         * testsuite/gas/i386/x86-64-wbnoinvd.s: Likewise.
672
673 2018-01-23  Maciej W. Rozycki  <macro@mips.com>
674
675         * config/tc-mips.c (md_show_usage): Correctly indicate the
676         configuration-specific default ABI.
677
678 2018-01-23  Maciej W. Rozycki  <macro@mips.com>
679
680         * config/tc-mips.c (md_show_usage): Report `-mmips16e2' and
681         `-mno-mips16e2' options.
682
683 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
684
685         * doc/c-mips.texi (MIPS ASE Instruction Generation Overrides):
686         Correct syntax of the `.set nomips16e2' directive description.
687
688 2018-01-22  Oleg Endo  <olegendo@gcc.gnu.org>
689
690         PR 22737
691         * config/tc-rx.c (rx_start_line): Handle escaped double-quote character.
692         * testsuite/gas/rx/pr22737.s: New test.
693         * testsuite/gas/rx/pr22737.d: Likewise.
694         * testsuite/gas/rx/rx.exp: Run the new test.
695
696 2018-01-19  Thomas Preud'homme  <thomas.preudhomme@arm.com>
697
698         * config/tc-arm.c (ToC macro): Remove spurious comment.
699         (ToU macro): Likewise.
700
701 2018-01-17  Jim Wilson  <jimw@sifive.com>
702
703         * config/tc-riscv.c (validate_riscv_insn) <'z'>: New.
704         (riscv_ip) <'z'>: New.
705
706 2018-01-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
707
708         * config/tc-i386.c (cpu_arch): Delete .cet. Add .ibt, .shstk.
709         (cpu_noarch): Add noibt, noshstk.
710         (parse_insn): Change cpucet to cpuibt.
711         * doc/c-i386.texi: Delete .cet. Add .ibt, .shstk.
712         * testsuite/gas/i386/cet-ibt-inval.l: New test.
713         * testsuite/gas/i386/cet-ibt-inval.s: Likewise.
714         * testsuite/gas/i386/cet-shstk-inval.l: Likewise.
715         * testsuite/gas/i386/cet-shstk-inval.s: Likewise.
716         * testsuite/gas/i386/x86-64-cet-ibt-inval.l: Likewise.
717         * testsuite/gas/i386/x86-64-cet-ibt-inval.s: Likewise.
718         * testsuite/gas/i386/x86-64-cet-shstk-inval.l: Likewise.
719         * testsuite/gas/i386/x86-64-cet-shstk-inval.s: Likewise.
720
721 2018-01-16  Nick Clifton  <nickc@redhat.com>
722
723         * po/fr.po: Updated French translation.
724
725 2018-01-15  Jim Wilson  <jimw@sifive.com>
726
727         * testsuite/gas/riscv/c-zero-imm.s: Test addi that compresses to c.nop.
728         * testsuite/gas/riscv/c-zero-imm.d: Likewise.
729
730 2018-01-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
731
732         * config/tc-arm.c (ToC): Define macro.
733         (ToU): Likewise.
734         (insns): Make use of above macros for new instructions introduced in
735         Armv8-M.
736
737 2018-01-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
738
739         * config/tc-arm.c (insns): Make blxns, bxns, tt, ttt, tta, ttat, vlldm
740         and vlstm conditionally executable and reindent parameters.
741         * testsuite/gas/arm/archv8m-cmse-main.s: Add conditional version of
742         aforementionned instructions.
743
744 2018-01-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
745
746         * config/tc-arm.c (it_fsm_post_encode): Do not warn if targeting M
747         profile architecture or if in autodetection mode.  Clarify that
748         deprecation is for performance reason and concerns Armv8-A and Armv8-R.
749         * testsuite/gas/arm/armv8-ar-bad.l: Adapt to new IT deprecation warning
750         message.
751         * testsuite/gas/arm/armv8-ar-it-bad.l: Likewise.
752         * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.l: Likewise.
753         * testsuite/gas/arm/udf.l: Likewise.
754         * testsuite/gas/arm/udf.d: Assemble for Armv8-A explicitely.
755
756 2018-01-15  Nick Clifton  <nickc@redhat.com>
757
758         * po/uk.po: Updated Ukranian translation.
759
760 2018-01-13  Nick Clifton  <nickc@redhat.com>
761
762         * po/gas.pot: Regenerated.
763
764 2018-01-13  Nick Clifton  <nickc@redhat.com>
765
766         * configure: Regenerate.
767
768 2018-01-13  Nick Clifton  <nickc@redhat.com>
769
770         2.30 branch created.
771         * NEWS: Add marker for 2.30.
772
773 2018-01-12  Gunther Nikl  <gnikl@users.sourceforge.net>
774
775         * gas/config/aout_gnu.h (USE_EXTENDED_RELOC): Explicitly
776         define to 0 and 1. Remove a dangling reference to "AMD 29000"
777         in a comment.
778
779 2018-01-11  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
780
781         * testsuite/i386/avx512_4fmaps_vl-warn.l: Likewise.
782         * testsuite/i386/avx512_4fmaps_vl-warn.s: Likewise.
783         * testsuite/i386/avx512_4fmaps_vl.d: Likewise.
784         * testsuite/i386/avx512_4fmaps_vl.s: Likewise.
785         * testsuite/i386/avx512_4vnniw_vl-intel.d: Likewise.
786         * testsuite/i386/avx512_4vnniw_vl.d: Likewise.
787         * testsuite/i386/avx512_4vnniw_vl.s: Likewise.
788         * testsuite/i386/i386.exp: Removed _vl tests for 4fmaps an 4vnniw
789         tests.
790         * testsuite/i386/x86-64-avx512_4fmaps_vl-intel.d: Removed.
791         * testsuite/i386/x86-64-avx512_4fmaps_vl-warn.l: Likewise.
792         * testsuite/i386/x86-64-avx512_4fmaps_vl-warn.s: Likewise.
793         * testsuite/i386/x86-64-avx512_4fmaps_vl.d: Likewise.
794         * testsuite/i386/x86-64-avx512_4fmaps_vl.s: Likewise.
795         * testsuite/i386/x86-64-avx512_4vnniw_vl-intel.d: Likewise.
796         * testsuite/i386/x86-64-avx512_4vnniw_vl.d: Likewise.
797         * testsuite/i386/x86-64-avx512_4vnniw_vl.s: Likewise.
798
799 2018-01-11  Alan Modra  <amodra@gmail.com>
800
801         * config/tc-arm.c (aeabi_set_public_attributes): Avoid false
802         positive "‘profile’ may be used uninitialized".
803
804 2018-01-10  Jan Beulich  <jbeulich@suse.com>
805
806         * testsuite/gas/i386/avx512_4fmaps.s,
807         testsuite/gas/i386/avx512_4fmaps_vl.s,
808         testsuite/gas/i386/x86-64-avx512_4fmaps.s,
809         testsuite/gas/i386/x86-64-avx512_4fmaps_vl.s: Actually test
810         Disp8 forms (and the transition happening at the right
811         boundary).
812         * testsuite/gas/i386/avx512_4fmaps.d,
813         testsuite/gas/i386/avx512_4fmaps-intel.d,
814         testsuite/gas/i386/avx512_4fmaps_vl.d,
815         testsuite/gas/i386/avx512_4fmaps_vl-intel.d,
816         testsuite/gas/i386/x86-64-avx512_4fmaps.d,
817         testsuite/gas/i386/x86-64-avx512_4fmaps-intel.d,
818         testsuite/gas/i386/x86-64-avx512_4fmaps_vl.d,
819         testsuite/gas/i386/x86-64-avx512_4fmaps_vl-intel.d: Adjust
820         expectations.
821
822 2018-01-10  Jan Beulich  <jbeulich@suse.com>
823
824         * testsuite/gas/i386/avx512bw.s,
825         testsuite/gas/i386/avx512bw_vl.s: Add VPCMP* tests with memory
826         operands.
827         * testsuite/gas/i386/avx512bw-intel.d,
828         testsuite/gas/i386/avx512bw.d,
829         testsuite/gas/i386/avx512bw_vl-intel.d.
830         testsuite/gas/i386/avx512bw_vl.d: Adjust expectations.
831
832 2018-01-09  Jim Wilson  <jimw@sifive.com>
833
834         * testsuite/gas/riscv/auipc-x0.d: New.
835         * testsuite/gas/riscv/auipc-x0.s: New.
836
837 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
838
839         * config/tc-arm.c (insns): Add csdb, enable for Armv3 and above
840         in Arm execution state, and Armv6T2 and above in Thumb execution
841         state.
842         * testsuite/gas/arm/csdb.s: New.
843         * testsuite/gas/arm/csdb.d: New.
844         * testsuite/gas/arm/thumb2_it_bad.l: Add csdb.
845         * testsuite/gas/arm/thumb2_it_bad.s: Add csdb.
846
847 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
848
849         * testsuite/gas/aarch64/system.d: Update expected results to expect
850         CSDB for hint 0x14.
851
852 2018-01-08  H.J. Lu  <hongjiu.lu@intel.com>
853
854         PR gas/22681
855         * testsuite/gas/i386/i386.exp: Run x86-64-movd and
856         x86-64-movd-intel.
857         * testsuite/gas/i386/x86-64-movd-intel.d: New file.
858         * testsuite/gas/i386/x86-64-movd.d: Likewise.
859         * testsuite/gas/i386/x86-64-movd.s: Likewise.
860
861 2018-01-08  Nick Clifton  <nickc@redhat.com>
862
863         PR 22553
864         * doc/c-i386.texi (i386-Directives): Document the .largecomm
865         directive.
866
867 2018-01-04  Jim Wilson  <jimw@sifive.com>
868
869         * testsuite/gas/riscv/priv-reg.s: Add missing stval and mtval.
870         * testsuite/gas/riscv/priv-reg.d: Likewise.
871
872 2018-01-03  Alan Modra  <amodra@gmail.com>
873
874         Update year range in copyright notice of all files.
875
876 2018-01-02  Nick Clifton  <nickc@redhat.com>
877
878         PR 18119
879         * config/tc-arm.c (do_mrs): Fix test of bits 16-19 in non-banked
880         version of ARM MRS instruction.
881
882 For older changes see ChangeLog-2017
883 \f
884 Copyright (C) 2018 Free Software Foundation, Inc.
885
886 Copying and distribution of this file, with or without modification,
887 are permitted in any medium without royalty provided the copyright
888 notice and this notice are preserved.
889
890 Local Variables:
891 mode: change-log
892 left-margin: 8
893 fill-column: 74
894 version-control: never
895 End: