Commit Graph

8618 Commits

Author SHA1 Message Date
Jim Wilson
4e2b18982a RISC-V: bge[u] should get higher priority than ble[u].
2018-09-17  Kito Cheng  <kito@andestech.com>
gas/
	* testsuite/gas/riscv/bge.d: New.
	* testsuite/gas/riscv/bge.s: Likewise.
opcodes/
	* riscv-opc.c (riscv_opcodes): Adjust the order of ble and
	  bleu.
2018-09-17 11:43:08 -07:00
H.J. Lu
04e2a1829e x86: Set EVex=2 on EVEX.128 only vmovd and vmovq
EVEX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64",
"VMOVD r64/m64, xmm2", "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2"
can only be encoded with EVEX.128.  Set EVex=2 on EVEX.128 only vmovd and
vmovq.

gas/

	PR gas/23670
	* testsuite/gas/i386/evex-lig-2.d: New file.
	* testsuite/gas/i386/evex-lig-2.s: Likewise.
	* testsuite/gas/i386/x86-64-evex-lig-2.d: Likewise.
	* testsuite/gas/i386/x86-64-evex-lig-2.s: Likewise.
	* testsuite/gas/i386/i386.exp: Run evex-lig-2 and
	x86-64-evex-lig-2.

opcodes/

	PR gas/23670
	* i386-dis-evex.h (evex_table): Use EVEX_LEN_0F6E_P_2,
	EVEX_LEN_0F7E_P_1, EVEX_LEN_0F7E_P_2 and EVEX_LEN_0FD6_P_2.
	(EVEX_LEN_0F6E_P_2): New EVEX_LEN_TABLE entry.
	(EVEX_LEN_0F7E_P_1): Likewise.
	(EVEX_LEN_0F7E_P_2): Likewise.
	(EVEX_LEN_0FD6_P_2): Likewise.
	* i386-dis.c (USE_EVEX_LEN_TABLE): New.
	(EVEX_LEN_TABLE): Likewise.
	(EVEX_LEN_0F6E_P_2): New enum.
	(EVEX_LEN_0F7E_P_1): Likewise.
	(EVEX_LEN_0F7E_P_2): Likewise.
	(EVEX_LEN_0FD6_P_2): Likewise.
	(evex_len_table): New.
	(get_valid_dis386): Handle USE_EVEX_LEN_TABLE.
	* i386-opc.tbl: Set EVex=2 on EVEX.128 only vmovd and vmovq.
	* i386-tbl.h: Regenerated.
2018-09-17 09:33:35 -07:00
H.J. Lu
d5f787c2bc x86: Set Vex=1 on VEX.128 only vmovd and vmovq
AVX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64"
and "VMOVD r64/m64, xmm2" can only be encoded with VEX.128.  Set Vex=1
on VEX.128 only vmovd and vmovq.

gas/

	PR gas/23665
	* testsuite/gas/i386/avx-scalar.s: Remove vmovq and vmovd tests.
	* testsuite/gas/i386/x86-64-avx-scalar.s: Likewise.
	* testsuite/gas/i386/avx-scalar-intel.d: Updated.
	* testsuite/gas/i386/avx-scalar.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar.d: Likewise.
	* testsuite/gas/i386/i386.exp: Run avx-scalar2 and
	x86-64-avx-scalar2.
	* testsuite/gas/i386/avx-scalar-2.d: New file.
	* testsuite/gas/i386/avx-scalar-2.s: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar-2.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar-2.s: Likewise.

opcodes/

	PR gas/23665
	* i386-dis.c (vex_len_table): Update VEX_LEN_0F6E_P_2 and
	VEX_LEN_0F7E_P_2 entries.
	* i386-opc.tbl: Set Vex=1 on VEX.128 only vmovd and vmovq.
	* i386-tbl.h: Regenerated.
2018-09-17 09:31:17 -07:00
H.J. Lu
0375113302 x86: Add -mvexwig=[0|1] option to assembler
Add -mvexwig=[0|1] option to x86 assembler to control how the assembler
should encode the VEX.W bit in WIG VEX instructions.

	* gas/NEWS: Mention -mvexwig=[0|1] option.
	* config/tc-i386.c (vexwig): New.
	(build_vex_prefix): Set the VEX.W bit for -mvexwig=1 for WIG
	VEX instructions.
	(OPTION_MVEXWIG): New.
	(md_longopts): Add -mvexwig=.
	(md_parse_option): Handle OPTION_MVEXWIG.
	(md_show_usage): Show -mvexwig=[0|1].
	* doc/c-i386.texi: Document -mvexwig=[0|1].
	* testsuite/gas/i386/avx-wig.d: New file.
	* testsuite/gas/i386/avx-wig.s: Likewise.
	* testsuite/gas/i386/avx2-wig.d: Likewise.
	* testsuite/gas/i386/avx2-wig.s: Likewise.
	* testsuite/gas/i386/x86-64-avx-wig.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-wig.s: Likewise.
	* testsuite/gas/i386/x86-64-avx2-wig.d: Likewise.
	* testsuite/gas/i386/x86-64-avx2-wig.s: Likewise.
	* testsuite/gas/i386/i386.exp: Run avx-wig, avx2-wig,
	x86-64-avx-wig and x86-64-avx2-wig.
2018-09-17 09:26:29 -07:00
Alan Modra
a4b9568c7e Remove bogus notarget in gas teststuite
* testsuite/gas/arm/arch7.d: Delete notarget.
	* testsuite/gas/arm/arch7a-mp.d: Likewise.
	* testsuite/gas/arm/arch7em.d: Likewise.
	* testsuite/gas/arm/archv8m-main-dsp-5.d: Likewise.
	* testsuite/gas/arm/barrier.d: Likewise.
	* testsuite/gas/arm/bignum1.d: Likewise.
	* testsuite/gas/arm/thumb32.d: Likewise.
	* testsuite/gas/elf/dwarf2-1.d: Likewise.
	* testsuite/gas/elf/dwarf2-2.d: Likewise.
	* testsuite/gas/elf/dwarf2-4.d: Likewise.
	* testsuite/gas/elf/group2.d: Likewise.
	* testsuite/gas/arm/mapshort-elf.d: Only notarget pe and wince.
	* testsuite/gas/elf/dwarf2-3.d: Delete notarget, xfail ft32 and h8300.
	* testsuite/gas/elf/dwarf2-6.d: Delete notarget, xfail a few.
2018-09-17 23:22:30 +09:30
Alan Modra
0b1352e04c A few hppa testcase tidies
binutils/
	* testsuite/lib/binutils-common.exp (is_som_format): New proc.
	(run_dump_test): Correct target test for alternate .comm syntax.
	(get_standard_section_names): Handle som format.
	* testsuite/lib/utils-lib.exp (default_binutils_assemble_flags):
	Correct target test for alternate .comm syntax.
gas/
	* testsuite/gas/all/gas.exp (redef3): Don't xfail for hppa.
	(octa): Run for hppa.
	* testsuite/gas/elf/elf.exp (common1, common2): Likewise.
	* testsuite/gas/elf/symver.d: Delete notarget.
ld/
	* testsuite/ld-elf/comm-data5.d: Remove notarget for hppa.
	* testsuite/ld-scripts/defined6.d: Likewise.
2018-09-17 23:17:14 +09:30
Nick Clifton
a0a8a9340d Ensure that binutils test names are unique.
binutils* testsuite/binutils-all/compress.exp: Rename second "objcopy
	zlib-gnu compress debug sections 3" test to "objcopy zlib-gabi
	compress debug sections 3" and use gabi object files instead
	of gnu object files.
	* testsuite/binutils-all/objcopy.exp: Add suffix to the names
	of the "ELF group" tests.
	* testsuite/binutils-all/readelf.exp (proc readelf_find_size):
	Add an iteration parameter and include it in the name of the
	test.  Update callers to include an iteration count.

gas	* testuite/gas/elf/group0a.d: Add extra details to the test
	name.
	* testuite/gas/elf/group0b.d: Likewise.
	* testuite/gas/elf/group1a.d: Likewise.
	* testuite/gas/elf/group1b.d: Likewise.
	* testuite/gas/elf/group0b.d: Likewise.
	* testuite/gas/elf/section9.d: Likewise.
	* testuite/gas/i386/ilp32/lns/lns-common-1.d: Likewise.
	* testuite/gas/i386/ilp32/lns/lns-duplicate-1.d: Likewise.

ld	* testuite/ld/ld-elf/audit.exp: Differentiate the names of the
	two "Run with shared with --audit" tests.
	* testuite/ld/ld-elf/compress.exp: Differentiate the zlib
	compressed debug output test names.
	* testuite/ld/ld-i386/tlspie1.d: Add extra details to the test
	name.
	* testuite/ld/ld-i386/tlspie2.d: Likewise.
	* testuite/ld/ld-size/size.exp: Add missing escapes to the end
	of lines in the size-3e test.
	* testuite/ld/ld-unique/unique.exp: Differentiate the names of
	the two "Checking unique PIC object" tests.
	* testuite/ld/ld-x86-64/tlspie1.d: Add extra details to the test
	name.
2018-09-17 10:10:47 +01:00
H.J. Lu
3c3741435f x86: Set Vex=1 on VEX.128 only vmovq
AVX "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2" can only be
encoded with VEX.128.  Set Vex=1 on VEX.128 only vmovq and update
assembler tests.

gas/

	PR gas/23665
	* testsuite/gas/i386/avx-scalar-intel.d: Updated.
	* testsuite/gas/i386/avx-scalar.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise.
	* testsuite/gas/i386/x86-64-avx-scalar.d: Likewise.

opcodes/

	PR gas/23665
	* i386-dis.c (vex_len_table): Update VEX_LEN_0F7E_P_1 and
	VEX_LEN_0FD6_P_2 entries.
	* i386-opc.tbl: Set Vex=1 on VEX.128 only vmovq.
	* i386-tbl.h: Regenerated.
2018-09-15 14:50:40 -07:00
Alan Modra
8ffb70eb57 Consolidate run_dump_test
This merges the three versions of run_dump_test.  Improved warning
handling versus the old gas version shows up a number of tests that
need their disassembly updating:
arm-linuxeabi  +FAIL: ARM v1 instructions
arm-linuxeabi  +FAIL: Accepted v8-a with ARMv8.1 AdvSIMD.
arm-linuxeabi  +FAIL: bl local instructions for v4t.
arm-linuxeabi  +FAIL: UDF
and some that now fail due to detecting assembly warnings:
h8300-elf  +FAIL: binutils-all/strip-13
h8300-elf  +FAIL: binutils-all/strip-14
h8300-elf  +FAIL: binutils-all/strip-15

I've generally kept the union of all run_dump_test features, except
that the ld target aliases "cfi" and "shared" have disappeared, as has
the binutils substitution of $srcdir as $scrdir/$subdir.

binutils/
	* testsuite/binutils-all/add-symbol.d: Add "section_subst: no".
	* testsuite/binutils-all/elfedit.exp: Don't set tempfile or copyfile.
	* testsuite/binutils-all/symbols-1.d,
	* testsuite/binutils-all/symbols-2.d,
	* testsuite/binutils-all/symbols-3.d,
	* testsuite/binutils-all/symbols-4.d: Quote '*' and '!'.
	* testsuite/binutils-all/add-empty-section.d,
	* testsuite/binutils-all/add-section.d,
	* testsuite/binutils-all/elfedit.exp,
	* testsuite/binutils-all/note-1.d,
	* testsuite/binutils-all/pr23633.d: Add $subdir after $srcdir.
	* testsuite/config/default.exp (AS, ASFLAGS): Define.
	* testsuite/config/hppa.sed: Handle all common symbols.
	* testsuite/lib/binutils-common.exp (run_dump_test): New proc,
	merged from three other versions.
	(slurp_options, file_contents, set_file_contents): Likewise.
	(big_or_little_endian, get_standard_section_names): Likewise.
	* testsuite/lib/utils-lib.exp (run_dump_test): Delete.
	(slurp_options, proc file_contents): Delete.
	(get_standard_section_names): Delete.
gas/
	* testsuite/config/default.exp: Make tmpdir.
	* testsuite/lib/gas-defs.exp (run_dump_test): Delete.
	(get_standard_section_names, slurp_options): Delete.
ld/
	* testsuite/ld-d10v/reloc-007.d,
	* testsuite/ld-d10v/reloc-008.d,
	* testsuite/ld-d10v/reloc-015.d,
	* testsuite/ld-d10v/reloc-016.d: Remove "error:".
	* testsuite/ld-elf/eh-frame-hdr.d,
	* testsuite/ld-elf/eh5.d,
	* testsuite/ld-gc/personality.d: Replace "cfi" and "shared" in
	target list with appropriate proc.
	* testsuite/ld-elf/frame.exp: Use check_shared_lib_support rather
	than "istarget shared".
	* testsuite/lib/ld-lib.exp (proc big_or_little_endian): Delete.
	(run_dump_test, slurp_options, file_contents): Delete.
	(set_file_contents, istarget): Delete.
2018-09-15 16:56:55 +09:30
Alan Modra
99bcaeaf0f run_dump_test replace PROG with DUMPPROG in gas and ld
To be compatible with the binutils version, that uses PROG for the
tool under test and DUMPPROG for the dump tool.

gas/
	* testsuite/gas/mips/aent-2.d,
	* testsuite/gas/mips/aent-mdebug-2.d,
	* testsuite/gas/mips/attr-gnu-4-0.d,
	* testsuite/gas/mips/attr-gnu-4-1.d,
	* testsuite/gas/mips/attr-gnu-4-2.d,
	* testsuite/gas/mips/attr-gnu-4-3.d,
	* testsuite/gas/mips/attr-gnu-4-5.d,
	* testsuite/gas/mips/attr-gnu-4-6.d,
	* testsuite/gas/mips/attr-gnu-4-7.d,
	* testsuite/gas/mips/attr-none-double.d,
	* testsuite/gas/mips/attr-none-o32-fp64-nooddspreg.d,
	* testsuite/gas/mips/attr-none-o32-fp64.d,
	* testsuite/gas/mips/attr-none-o32-fpxx.d,
	* testsuite/gas/mips/attr-none-single-float.d,
	* testsuite/gas/mips/attr-none-soft-float.d,
	* testsuite/gas/mips/elf-rel27.d,
	* testsuite/gas/mips/loc-swap-2.d,
	* testsuite/gas/mips/loc-swap-3.d,
	* testsuite/gas/mips/loc-swap.d,
	* testsuite/gas/mips/micromips@loc-swap-2.d,
	* testsuite/gas/mips/micromips@loc-swap.d,
	* testsuite/gas/mips/micromips@stabs-symbol-type.d,
	* testsuite/gas/mips/mips16-intermix.d,
	* testsuite/gas/mips/mips16@loc-swap-2.d,
	* testsuite/gas/mips/mips16@loc-swap.d,
	* testsuite/gas/mips/mips16@stabs-symbol-type.d,
	* testsuite/gas/mips/mips16e@loc-swap.d,
	* testsuite/gas/mips/no-odd-spreg.d,
	* testsuite/gas/mips/odd-spreg.d,
	* testsuite/gas/mips/r6-attr-none-double.d,
	* testsuite/gas/mips/stabs-symbol-type.d,
	* testsuite/lib/gas-defs.exp (run_dump_test): Replace PROG
	with DUMPPROG.
ld/
	* testsuite/lib/ld-lib.exp (run_dump_test): Replace PROG
	with DUMPPROG.
2018-09-15 16:24:18 +09:30
Alan Modra
4abd8e8de7 gas testuite fixes: don't match dump.o
The consolidated run_dump_test will use object file names based on the
source file name, like the current ld version.

	* testsuite/gas/elf/symver.d,
	* testsuite/gas/ft32/insn.d,
	* testsuite/gas/ft32/insnsc.d,
	* testsuite/gas/i386/ilp32/elf/symver.d,
	* testsuite/gas/lm32/csr.d,
	* testsuite/gas/lm32/insn.d,
	* testsuite/gas/m68hc11/9s12x-exg-sex-tfr.d,
	* testsuite/gas/m68hc11/9s12x-mov.d,
	* testsuite/gas/m68hc11/hexprefix.d,
	* testsuite/gas/m68hc11/insns9s12x.d,
	* testsuite/gas/m68hc11/insns9s12xg.d,
	* testsuite/gas/mep/dj1.be.d,
	* testsuite/gas/mep/dj1.le.d,
	* testsuite/gas/mips/set-arch.d,
	* testsuite/gas/mips/tls-o32.d,
	* testsuite/gas/nios2/branch-r2.d,
	* testsuite/gas/nios2/branch.d,
	* testsuite/gas/pdp11/absreloc.d,
	* testsuite/gas/pdp11/opcode.d,
	* testsuite/gas/pdp11/pr14480.d,
	* testsuite/gas/pdp11/pr23481.d,
	* testsuite/gas/ppc/xcoff-dwsect-1-32.d,
	* testsuite/gas/ppc/xcoff-dwsect-1-64.d,
	* testsuite/gas/rx/abs.d,
	* testsuite/gas/rx/adc.d,
	* testsuite/gas/rx/add.d,
	* testsuite/gas/rx/and.d,
	* testsuite/gas/rx/bclr.d,
	* testsuite/gas/rx/bcnd.d,
	* testsuite/gas/rx/bmcnd.d,
	* testsuite/gas/rx/bnot.d,
	* testsuite/gas/rx/bra.d,
	* testsuite/gas/rx/brk.d,
	* testsuite/gas/rx/bset.d,
	* testsuite/gas/rx/bsr.d,
	* testsuite/gas/rx/btst.d,
	* testsuite/gas/rx/clrpsw.d,
	* testsuite/gas/rx/cmp.d,
	* testsuite/gas/rx/dbt.d,
	* testsuite/gas/rx/div.d,
	* testsuite/gas/rx/divu.d,
	* testsuite/gas/rx/emaca.d,
	* testsuite/gas/rx/emsba.d,
	* testsuite/gas/rx/emul.d,
	* testsuite/gas/rx/emula.d,
	* testsuite/gas/rx/emulu.d,
	* testsuite/gas/rx/fadd.d,
	* testsuite/gas/rx/fcmp.d,
	* testsuite/gas/rx/fdiv.d,
	* testsuite/gas/rx/fmul.d,
	* testsuite/gas/rx/fsqrt.d,
	* testsuite/gas/rx/fsub.d,
	* testsuite/gas/rx/ftoi.d,
	* testsuite/gas/rx/ftou.d,
	* testsuite/gas/rx/gprel.d,
	* testsuite/gas/rx/int.d,
	* testsuite/gas/rx/itof.d,
	* testsuite/gas/rx/jmp.d,
	* testsuite/gas/rx/jsr.d,
	* testsuite/gas/rx/machi.d,
	* testsuite/gas/rx/maclh.d,
	* testsuite/gas/rx/maclo.d,
	* testsuite/gas/rx/max.d,
	* testsuite/gas/rx/min.d,
	* testsuite/gas/rx/mov.d,
	* testsuite/gas/rx/movco.d,
	* testsuite/gas/rx/movli.d,
	* testsuite/gas/rx/movu.d,
	* testsuite/gas/rx/msbhi.d,
	* testsuite/gas/rx/msblh.d,
	* testsuite/gas/rx/msblo.d,
	* testsuite/gas/rx/mul.d,
	* testsuite/gas/rx/mulhi.d,
	* testsuite/gas/rx/mullh.d,
	* testsuite/gas/rx/mullo.d,
	* testsuite/gas/rx/mvfacgu.d,
	* testsuite/gas/rx/mvfachi.d,
	* testsuite/gas/rx/mvfaclo.d,
	* testsuite/gas/rx/mvfacmi.d,
	* testsuite/gas/rx/mvfc.d,
	* testsuite/gas/rx/mvfcp.d,
	* testsuite/gas/rx/mvtacgu.d,
	* testsuite/gas/rx/mvtachi.d,
	* testsuite/gas/rx/mvtaclo.d,
	* testsuite/gas/rx/mvtc.d,
	* testsuite/gas/rx/mvtcp.d,
	* testsuite/gas/rx/neg.d,
	* testsuite/gas/rx/nop.d,
	* testsuite/gas/rx/not.d,
	* testsuite/gas/rx/opecp.d,
	* testsuite/gas/rx/or.d,
	* testsuite/gas/rx/pop.d,
	* testsuite/gas/rx/popc.d,
	* testsuite/gas/rx/popm.d,
	* testsuite/gas/rx/pr19665.d,
	* testsuite/gas/rx/pr22737.d,
	* testsuite/gas/rx/push.d,
	* testsuite/gas/rx/pushc.d,
	* testsuite/gas/rx/pushm.d,
	* testsuite/gas/rx/r-bcc.d,
	* testsuite/gas/rx/r-bra.d,
	* testsuite/gas/rx/racl.d,
	* testsuite/gas/rx/racw.d,
	* testsuite/gas/rx/rdacl.d,
	* testsuite/gas/rx/rdacw.d,
	* testsuite/gas/rx/revl.d,
	* testsuite/gas/rx/revw.d,
	* testsuite/gas/rx/rmpa.d,
	* testsuite/gas/rx/rolc.d,
	* testsuite/gas/rx/rorc.d,
	* testsuite/gas/rx/rotl.d,
	* testsuite/gas/rx/rotr.d,
	* testsuite/gas/rx/round.d,
	* testsuite/gas/rx/rte.d,
	* testsuite/gas/rx/rtfi.d,
	* testsuite/gas/rx/rts.d,
	* testsuite/gas/rx/rtsd.d,
	* testsuite/gas/rx/sat.d,
	* testsuite/gas/rx/satr.d,
	* testsuite/gas/rx/sbb.d,
	* testsuite/gas/rx/sccnd.d,
	* testsuite/gas/rx/scmpu.d,
	* testsuite/gas/rx/setpsw.d,
	* testsuite/gas/rx/shar.d,
	* testsuite/gas/rx/shll.d,
	* testsuite/gas/rx/shlr.d,
	* testsuite/gas/rx/smovb.d,
	* testsuite/gas/rx/smovf.d,
	* testsuite/gas/rx/smovu.d,
	* testsuite/gas/rx/sstr.d,
	* testsuite/gas/rx/stnz.d,
	* testsuite/gas/rx/stz.d,
	* testsuite/gas/rx/sub.d,
	* testsuite/gas/rx/suntil.d,
	* testsuite/gas/rx/swhile.d,
	* testsuite/gas/rx/tst.d,
	* testsuite/gas/rx/utof.d,
	* testsuite/gas/rx/wait.d,
	* testsuite/gas/rx/xchg.d,
	* testsuite/gas/rx/xor.d,
	* testsuite/gas/s12z/abs.d,
	* testsuite/gas/s12z/adc-imm.d,
	* testsuite/gas/s12z/adc-opr.d,
	* testsuite/gas/s12z/add-imm.d,
	* testsuite/gas/s12z/add-opr.d,
	* testsuite/gas/s12z/and-imm.d,
	* testsuite/gas/s12z/and-opr.d,
	* testsuite/gas/s12z/and-or-cc.d,
	* testsuite/gas/s12z/bfext-special.d,
	* testsuite/gas/s12z/bfext.d,
	* testsuite/gas/s12z/bit-manip.d,
	* testsuite/gas/s12z/bit.d,
	* testsuite/gas/s12z/bra-expression-defined.d,
	* testsuite/gas/s12z/bra-expression-undef.d,
	* testsuite/gas/s12z/bra.d,
	* testsuite/gas/s12z/brclr-symbols.d,
	* testsuite/gas/s12z/brset-clr-opr-imm-rel.d,
	* testsuite/gas/s12z/brset-clr-opr-reg-rel.d,
	* testsuite/gas/s12z/brset-clr-reg-imm-rel.d,
	* testsuite/gas/s12z/brset-clr-reg-reg-rel.d,
	* testsuite/gas/s12z/clb.d,
	* testsuite/gas/s12z/clr-opr.d,
	* testsuite/gas/s12z/clr.d,
	* testsuite/gas/s12z/cmp-imm.d,
	* testsuite/gas/s12z/cmp-opr-inc.d,
	* testsuite/gas/s12z/cmp-opr-rdirect.d,
	* testsuite/gas/s12z/cmp-opr-reg.d,
	* testsuite/gas/s12z/cmp-opr-rindirect.d,
	* testsuite/gas/s12z/cmp-opr-sxe4.d,
	* testsuite/gas/s12z/cmp-opr-xys.d,
	* testsuite/gas/s12z/cmp-s-imm.d,
	* testsuite/gas/s12z/cmp-s-opr.d,
	* testsuite/gas/s12z/cmp-xy.d,
	* testsuite/gas/s12z/com-opr.d,
	* testsuite/gas/s12z/complex-shifts.d,
	* testsuite/gas/s12z/db-tb-cc-opr.d,
	* testsuite/gas/s12z/db-tb-cc-reg.d,
	* testsuite/gas/s12z/dbCC.d,
	* testsuite/gas/s12z/dec-opr.d,
	* testsuite/gas/s12z/dec.d,
	* testsuite/gas/s12z/div.d,
	* testsuite/gas/s12z/eor.d,
	* testsuite/gas/s12z/exg.d,
	* testsuite/gas/s12z/ext24-ld-xy.d,
	* testsuite/gas/s12z/inc-opr.d,
	* testsuite/gas/s12z/inc.d,
	* testsuite/gas/s12z/inh.d,
	* testsuite/gas/s12z/jmp.d,
	* testsuite/gas/s12z/jsr.d,
	* testsuite/gas/s12z/ld-imm-page2.d,
	* testsuite/gas/s12z/ld-imm.d,
	* testsuite/gas/s12z/ld-immu18.d,
	* testsuite/gas/s12z/ld-large-direct.d,
	* testsuite/gas/s12z/ld-opr.d,
	* testsuite/gas/s12z/ld-s-opr.d,
	* testsuite/gas/s12z/ld-small-direct.d,
	* testsuite/gas/s12z/lea-immu18.d,
	* testsuite/gas/s12z/lea.d,
	* testsuite/gas/s12z/mac.d,
	* testsuite/gas/s12z/min-max.d,
	* testsuite/gas/s12z/mod.d,
	* testsuite/gas/s12z/mov.d,
	* testsuite/gas/s12z/mul-imm.d,
	* testsuite/gas/s12z/mul-opr-opr.d,
	* testsuite/gas/s12z/mul-opr.d,
	* testsuite/gas/s12z/mul-reg.d,
	* testsuite/gas/s12z/mul.d,
	* testsuite/gas/s12z/neg-opr.d,
	* testsuite/gas/s12z/not-so-simple-shifts.d,
	* testsuite/gas/s12z/opr-18u.d,
	* testsuite/gas/s12z/opr-expr.d,
	* testsuite/gas/s12z/opr-ext-18.d,
	* testsuite/gas/s12z/opr-idx-24-reg.d,
	* testsuite/gas/s12z/opr-idx3-reg.d,
	* testsuite/gas/s12z/opr-idx3-xysp-24.d,
	* testsuite/gas/s12z/opr-indirect-expr.d,
	* testsuite/gas/s12z/opr-symbol.d,
	* testsuite/gas/s12z/or-imm.d,
	* testsuite/gas/s12z/or-opr.d,
	* testsuite/gas/s12z/p2-mul.d,
	* testsuite/gas/s12z/page2-inh.d,
	* testsuite/gas/s12z/psh-pul.d,
	* testsuite/gas/s12z/qmul.d,
	* testsuite/gas/s12z/rotate.d,
	* testsuite/gas/s12z/sat.d,
	* testsuite/gas/s12z/sbc-imm.d,
	* testsuite/gas/s12z/sbc-opr.d,
	* testsuite/gas/s12z/shift.d,
	* testsuite/gas/s12z/simple-shift.d,
	* testsuite/gas/s12z/single-ops.d,
	* testsuite/gas/s12z/specd6.d,
	* testsuite/gas/s12z/st-large-direct.d,
	* testsuite/gas/s12z/st-opr.d,
	* testsuite/gas/s12z/st-s-opr.d,
	* testsuite/gas/s12z/st-small-direct.d,
	* testsuite/gas/s12z/st-xy.d,
	* testsuite/gas/s12z/sub-imm.d,
	* testsuite/gas/s12z/sub-opr.d,
	* testsuite/gas/s12z/tfr.d,
	* testsuite/gas/s12z/trap.d,
	* testsuite/gas/sh/fdpic.d,
	* testsuite/gas/sh/sh2a-pic.d,
	* testsuite/gas/sh/sh2a.d: Don't match object file name.
	* testsuite/gas/wasm32/disass-2.d,
	* testsuite/gas/wasm32/disass.d: Likewise, and tidy regexps.
2018-09-15 16:24:18 +09:30
Alan Modra
e643ed088a gas run_dump_test rename stderr and error-output
Use warning_output and error_output, like the ld version of
run_dump_test.  Note that some tests used the wrong option, and this
went undetected since the gas version of run_dump_test doesn't
properly check tool error status.  This patch corrects wrong options,
in preparation for a later patch that will check error status.

	* testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d,
	* testsuite/gas/aarch64/armv8_2-a-illegal.d,
	* testsuite/gas/aarch64/armv8_4-a-illegal.d,
	* testsuite/gas/aarch64/armv8_4-a-registers-illegal.d,
	* testsuite/gas/aarch64/deprecated.d,
	* testsuite/gas/aarch64/diagnostic.d,
	* testsuite/gas/aarch64/illegal-2.d,
	* testsuite/gas/aarch64/illegal-by-element.d,
	* testsuite/gas/aarch64/illegal-crypto-nofp.d,
	* testsuite/gas/aarch64/illegal-fcmla.d,
	* testsuite/gas/aarch64/illegal-fjcvtzs.d,
	* testsuite/gas/aarch64/illegal-fp16-nofp.d,
	* testsuite/gas/aarch64/illegal-ldapr.d,
	* testsuite/gas/aarch64/illegal-ldraa.d,
	* testsuite/gas/aarch64/illegal-lse.d,
	* testsuite/gas/aarch64/illegal-nofp-armv8_3.d,
	* testsuite/gas/aarch64/illegal-nofp16.d,
	* testsuite/gas/aarch64/illegal-ras-1.d,
	* testsuite/gas/aarch64/illegal-sysreg-2.d,
	* testsuite/gas/aarch64/illegal-sysreg-3.d,
	* testsuite/gas/aarch64/illegal.d,
	* testsuite/gas/aarch64/legacy_reg_names.d,
	* testsuite/gas/aarch64/pan-illegal.d,
	* testsuite/gas/aarch64/pr22529.d,
	* testsuite/gas/aarch64/rm-simd-ext.d,
	* testsuite/gas/aarch64/sve-invalid.d,
	* testsuite/gas/aarch64/sve-reg-diagnostic.d,
	* testsuite/gas/aarch64/sve-sysreg-invalid.d,
	* testsuite/gas/aarch64/sysreg-diagnostic.d,
	* testsuite/gas/aarch64/verbose-error.d,
	* testsuite/gas/all/byte.d,
	* testsuite/gas/all/org-1.d,
	* testsuite/gas/all/org-2.d,
	* testsuite/gas/all/org-3.d,
	* testsuite/gas/all/sleb128-9.d,
	* testsuite/gas/arc/asm-errors-2.d,
	* testsuite/gas/arc/asm-errors-3.d,
	* testsuite/gas/arc/asm-errors.d,
	* testsuite/gas/arc/attr-rf16.d,
	* testsuite/gas/arc/relocs-errors.d,
	* testsuite/gas/arc/textinsn-errors.d,
	* testsuite/gas/arm/addsw-bad.d,
	* testsuite/gas/arm/addthumb2err.d,
	* testsuite/gas/arm/adr-invalid.d,
	* testsuite/gas/arm/arch7em-bad-1.d,
	* testsuite/gas/arm/arch7em-bad-2.d,
	* testsuite/gas/arm/arch7em-bad-3.d,
	* testsuite/gas/arm/arch7m-bad.d,
	* testsuite/gas/arm/archv6s-m-bad.d,
	* testsuite/gas/arm/archv6t2-bad.d,
	* testsuite/gas/arm/arm-idiv-bad.d,
	* testsuite/gas/arm/arm-it-bad-2.d,
	* testsuite/gas/arm/arm-it-bad-3.d,
	* testsuite/gas/arm/arm-it-bad.d,
	* testsuite/gas/arm/arm3-bad.d,
	* testsuite/gas/arm/arm7-bad.d,
	* testsuite/gas/arm/armv1-bad.d,
	* testsuite/gas/arm/armv1.d,
	* testsuite/gas/arm/armv2-mp-bad.d,
	* testsuite/gas/arm/armv8-2-fp16-scalar-bad.d,
	* testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb.d,
	* testsuite/gas/arm/armv8-2-fp16-simd-warning.d,
	* testsuite/gas/arm/armv8-a+rdma-warning.d,
	* testsuite/gas/arm/armv8-a-bad.d,
	* testsuite/gas/arm/armv8-a-it-bad.d,
	* testsuite/gas/arm/armv8-r-bad.d,
	* testsuite/gas/arm/armv8-r-it-bad.d,
	* testsuite/gas/arm/armv8_2-a-fp16-illegal.d,
	* testsuite/gas/arm/armv8_3-a-fp-bad.d,
	* testsuite/gas/arm/armv8_3-a-simd-bad.d,
	* testsuite/gas/arm/barrier-bad-thumb.d,
	* testsuite/gas/arm/barrier-bad.d,
	* testsuite/gas/arm/bl-local-v4t.d,
	* testsuite/gas/arm/blx-bl-convert.d,
	* testsuite/gas/arm/blx-local.d,
	* testsuite/gas/arm/branch-reloc.d,
	* testsuite/gas/arm/copro-arm_v2plus-arm_v1.d,
	* testsuite/gas/arm/copro-arm_v5plus-arm_v4.d,
	* testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d,
	* testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d,
	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d,
	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d,
	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d,
	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d,
	* testsuite/gas/arm/crc32-armv8-a-bad.d,
	* testsuite/gas/arm/crc32-armv8-r-bad.d,
	* testsuite/gas/arm/depr-swp.d,
	* testsuite/gas/arm/dest-unpredictable.d,
	* testsuite/gas/arm/dotprod-illegal.d,
	* testsuite/gas/arm/dotprod-legacy-arch.d,
	* testsuite/gas/arm/forbid-armv7-idiv-ext.d,
	* testsuite/gas/arm/group-reloc-alu-encoding-bad.d,
	* testsuite/gas/arm/group-reloc-alu-parsing-bad.d,
	* testsuite/gas/arm/group-reloc-ldc-encoding-bad.d,
	* testsuite/gas/arm/group-reloc-ldc-parsing-bad.d,
	* testsuite/gas/arm/group-reloc-ldr-encoding-bad.d,
	* testsuite/gas/arm/group-reloc-ldr-parsing-bad.d,
	* testsuite/gas/arm/group-reloc-ldrs-encoding-bad.d,
	* testsuite/gas/arm/group-reloc-ldrs-parsing-bad.d,
	* testsuite/gas/arm/insn-error-a.d,
	* testsuite/gas/arm/insn-error-t.d,
	* testsuite/gas/arm/inst-po-2.d,
	* testsuite/gas/arm/iwmmxt-bad.d,
	* testsuite/gas/arm/iwmmxt-bad2.d,
	* testsuite/gas/arm/ld-sp-warn-cortex-m3.d,
	* testsuite/gas/arm/ld-sp-warn-cortex-m4.d,
	* testsuite/gas/arm/ld-sp-warn-v7.d,
	* testsuite/gas/arm/ld-sp-warn-v7a.d,
	* testsuite/gas/arm/ld-sp-warn-v7em.d,
	* testsuite/gas/arm/ld-sp-warn-v7m.d,
	* testsuite/gas/arm/ld-sp-warn-v7r.d,
	* testsuite/gas/arm/ld-sp-warn.d,
	* testsuite/gas/arm/ldgesb-bad.d,
	* testsuite/gas/arm/ldgesh-bad.d,
	* testsuite/gas/arm/ldr-bad.d,
	* testsuite/gas/arm/ldr-t-bad.d,
	* testsuite/gas/arm/ldrd-unpredictable.d,
	* testsuite/gas/arm/ldsgeb.d,
	* testsuite/gas/arm/ldsgeh.d,
	* testsuite/gas/arm/missing.d,
	* testsuite/gas/arm/mrs-msr-arm-v7-a-bad.d,
	* testsuite/gas/arm/mrs-msr-thumb-v7-m-bad.d,
	* testsuite/gas/arm/msr-imm-bad.d,
	* testsuite/gas/arm/msr-reg-bad.d,
	* testsuite/gas/arm/mul-overlap.d,
	* testsuite/gas/arm/neon-addressing-bad.d,
	* testsuite/gas/arm/neon-cond-bad.d,
	* testsuite/gas/arm/neon-ldst-align-bad.d,
	* testsuite/gas/arm/neon-ldst-es-bad.d,
	* testsuite/gas/arm/neon-suffix-bad.d,
	* testsuite/gas/arm/neon-vmov-bad.d,
	* testsuite/gas/arm/noarm.d,
	* testsuite/gas/arm/pr18256.d,
	* testsuite/gas/arm/pr18347.d,
	* testsuite/gas/arm/pr20429.d,
	* testsuite/gas/arm/pr22773.d,
	* testsuite/gas/arm/r15-bad.d,
	* testsuite/gas/arm/reloc-bad.d,
	* testsuite/gas/arm/req.d,
	* testsuite/gas/arm/shift-bad-pc.d,
	* testsuite/gas/arm/shift-bad.d,
	* testsuite/gas/arm/simd_by_scalar_low_regbank.d,
	* testsuite/gas/arm/simd_by_scalar_low_regbank_thumb.d,
	* testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d,
	* testsuite/gas/arm/sp-pc-validations-bad-t.d,
	* testsuite/gas/arm/sp-pc-validations-bad.d,
	* testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d,
	* testsuite/gas/arm/srs-arm.d,
	* testsuite/gas/arm/srs-t2.d,
	* testsuite/gas/arm/strex-bad-t.d,
	* testsuite/gas/arm/t16-bad.d,
	* testsuite/gas/arm/thumb-b-bad.d,
	* testsuite/gas/arm/thumb-w-bad.d,
	* testsuite/gas/arm/thumb2_bad_reg.d,
	* testsuite/gas/arm/thumb2_it_bad.d,
	* testsuite/gas/arm/thumb2_it_bad_auto.d,
	* testsuite/gas/arm/thumb2_ldmstm_bad.d,
	* testsuite/gas/arm/thumb2_ldstd_unpredictable.d,
	* testsuite/gas/arm/thumb2_mul-bad.d,
	* testsuite/gas/arm/thumb2_str-bad.d,
	* testsuite/gas/arm/thumb32.d,
	* testsuite/gas/arm/udf-bad.d,
	* testsuite/gas/arm/udf.d,
	* testsuite/gas/arm/undefined.d,
	* testsuite/gas/arm/undefined_coff.d,
	* testsuite/gas/arm/vcmp-zero-bad.d,
	* testsuite/gas/arm/vcvt-bad.d,
	* testsuite/gas/arm/vfp-bad.d,
	* testsuite/gas/arm/vfp-bad_t2.d,
	* testsuite/gas/arm/vfpv3-d16-bad.d,
	* testsuite/gas/arm/vldm-thumb-bad.d,
	* testsuite/gas/arm/vldmw-arm-bad.d,
	* testsuite/gas/arm/vldmw-thumb-bad.d,
	* testsuite/gas/arm/vstr-arm-bad.d,
	* testsuite/gas/arm/vstr-thumb-bad.d,
	* testsuite/gas/arm/weakdef-2.d,
	* testsuite/gas/avr/pr21621.d,
	* testsuite/gas/elf/bad-bss.d,
	* testsuite/gas/elf/bad-group.d,
	* testsuite/gas/elf/bad-group.err,
	* testsuite/gas/elf/bad-section-flag.d,
	* testsuite/gas/elf/bad-section-flag.err,
	* testsuite/gas/elf/bad-size.d,
	* testsuite/gas/elf/bad-size.err,
	* testsuite/gas/elf/common1.d,
	* testsuite/gas/elf/common2.d,
	* testsuite/gas/elf/common5a.d,
	* testsuite/gas/elf/common5b.d,
	* testsuite/gas/elf/common5c.d,
	* testsuite/gas/elf/common5d.d,
	* testsuite/gas/elf/dwarf2-10.d,
	* testsuite/gas/elf/dwarf2-8.d,
	* testsuite/gas/elf/dwarf2-9.d,
	* testsuite/gas/elf/pr21661.d,
	* testsuite/gas/elf/pseudo.d,
	* testsuite/gas/elf/section13.d,
	* testsuite/gas/i386/bad-size.d,
	* testsuite/gas/i386/bundle-bad.d,
	* testsuite/gas/i386/ilp32/x86-64-sse-check-warn.d,
	* testsuite/gas/i386/intel-intel.d,
	* testsuite/gas/i386/intel.d,
	* testsuite/gas/i386/intelok.d,
	* testsuite/gas/i386/mpx-add-bnd-prefix.d,
	* testsuite/gas/i386/sse-check-warn.d,
	* testsuite/gas/i386/string-ok.d,
	* testsuite/gas/i386/vgather-check-warn.d,
	* testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
	* testsuite/gas/i386/x86-64-sse-check-warn.d,
	* testsuite/gas/i386/x86-64-vgather-check-warn.d,
	* testsuite/gas/mips/addiu-error.d,
	* testsuite/gas/mips/branch-extern-3.d,
	* testsuite/gas/mips/branch-extern-4.d,
	* testsuite/gas/mips/branch-local-2.d,
	* testsuite/gas/mips/branch-local-3.d,
	* testsuite/gas/mips/branch-local-5.d,
	* testsuite/gas/mips/branch-local-6.d,
	* testsuite/gas/mips/branch-local-n32-2.d,
	* testsuite/gas/mips/branch-local-n32-3.d,
	* testsuite/gas/mips/branch-local-n32-5.d,
	* testsuite/gas/mips/branch-local-n32-6.d,
	* testsuite/gas/mips/branch-local-n64-2.d,
	* testsuite/gas/mips/branch-local-n64-3.d,
	* testsuite/gas/mips/branch-local-n64-5.d,
	* testsuite/gas/mips/branch-local-n64-6.d,
	* testsuite/gas/mips/branch-section-3.d,
	* testsuite/gas/mips/branch-section-4.d,
	* testsuite/gas/mips/branch-weak-3.d,
	* testsuite/gas/mips/branch-weak-4.d,
	* testsuite/gas/mips/break-error.d,
	* testsuite/gas/mips/crc-err.d,
	* testsuite/gas/mips/crc64-err.d,
	* testsuite/gas/mips/ginv-err.d,
	* testsuite/gas/mips/interaptiv-mr2@isa-override-1.d,
	* testsuite/gas/mips/interaptiv-mr2@isa-override-2.d,
	* testsuite/gas/mips/isa-override-2.d,
	* testsuite/gas/mips/lui-1.d,
	* testsuite/gas/mips/lui-2.d,
	* testsuite/gas/mips/macro-warn-1-n32.d,
	* testsuite/gas/mips/macro-warn-1.d,
	* testsuite/gas/mips/macro-warn-2.d,
	* testsuite/gas/mips/macro-warn-3.d,
	* testsuite/gas/mips/macro-warn-4.d,
	* testsuite/gas/mips/micromips-branch-delay.d,
	* testsuite/gas/mips/micromips-branch-relax-insn32-pic.d,
	* testsuite/gas/mips/micromips-branch-relax-insn32.d,
	* testsuite/gas/mips/micromips-branch-relax-pic.d,
	* testsuite/gas/mips/micromips-branch-relax.d,
	* testsuite/gas/mips/micromips-compact.d,
	* testsuite/gas/mips/micromips-insn32.d,
	* testsuite/gas/mips/micromips-noinsn32.d,
	* testsuite/gas/mips/micromips-size-1.d,
	* testsuite/gas/mips/micromips-trap.d,
	* testsuite/gas/mips/micromips-warn-branch-delay.d,
	* testsuite/gas/mips/micromips.d,
	* testsuite/gas/mips/micromips@addiu-error.d,
	* testsuite/gas/mips/micromips@mips5-fp.d,
	* testsuite/gas/mips/micromips@msa-relax.d,
	* testsuite/gas/mips/micromips@relax-at.d,
	* testsuite/gas/mips/micromips@relax-offset.d,
	* testsuite/gas/mips/micromips@relax.d,
	* testsuite/gas/mips/mips-gp32-fp64-pic.d,
	* testsuite/gas/mips/mips-gp32-fp64.d,
	* testsuite/gas/mips/mips-gp64-fp32-pic.d,
	* testsuite/gas/mips/mips-gp64-fp32.d,
	* testsuite/gas/mips/mips-gp64-fp64.d,
	* testsuite/gas/mips/mips16-32@mips16-insn-e.d,
	* testsuite/gas/mips/mips16-32@mips16-insn-t.d,
	* testsuite/gas/mips/mips16-32@mips16-macro-e.d,
	* testsuite/gas/mips/mips16-32@mips16-macro-t.d,
	* testsuite/gas/mips/mips16-32@mips16-macro.d,
	* testsuite/gas/mips/mips16-64@mips16-insn-e.d,
	* testsuite/gas/mips/mips16-64@mips16-insn-t.d,
	* testsuite/gas/mips/mips16-absolute-reloc-2.d,
	* testsuite/gas/mips/mips16-absolute-reloc-3.d,
	* testsuite/gas/mips/mips16-branch-addend-5.d,
	* testsuite/gas/mips/mips16-branch-unextended-1.d,
	* testsuite/gas/mips/mips16-branch-unextended-2.d,
	* testsuite/gas/mips/mips16-insn-e.d,
	* testsuite/gas/mips/mips16-insn-t.d,
	* testsuite/gas/mips/mips16-jal-t.d,
	* testsuite/gas/mips/mips16-macro-e.d,
	* testsuite/gas/mips/mips16-macro-t.d,
	* testsuite/gas/mips/mips16-pcrel-2.d,
	* testsuite/gas/mips/mips16-pcrel-3.d,
	* testsuite/gas/mips/mips16-pcrel-4.d,
	* testsuite/gas/mips/mips16-pcrel-5.d,
	* testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d,
	* testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d,
	* testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d,
	* testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d,
	* testsuite/gas/mips/mips16-pcrel-addend-n64-8.d,
	* testsuite/gas/mips/mips16-pcrel-addend-n64-9.d,
	* testsuite/gas/mips/mips16-pcrel-addend-pic-8.d,
	* testsuite/gas/mips/mips16-pcrel-addend-pic-9.d,
	* testsuite/gas/mips/mips16-pcrel-delay-0.d,
	* testsuite/gas/mips/mips16-pcrel-delay-1.d,
	* testsuite/gas/mips/mips16-pcrel-n64-0.d,
	* testsuite/gas/mips/mips16-pcrel-n64-1.d,
	* testsuite/gas/mips/mips16-pcrel-pic-0.d,
	* testsuite/gas/mips/mips16-pcrel-pic-1.d,
	* testsuite/gas/mips/mips16-reg-error.d,
	* testsuite/gas/mips/mips16-relax-unextended-1.d,
	* testsuite/gas/mips/mips16-relax-unextended-2.d,
	* testsuite/gas/mips/mips16-reloc-error.d,
	* testsuite/gas/mips/mips16-sdrasp.d,
	* testsuite/gas/mips/mips16@addiu-error.d,
	* testsuite/gas/mips/mips16e-32@mips16-insn-e.d,
	* testsuite/gas/mips/mips16e-32@mips16-insn-t.d,
	* testsuite/gas/mips/mips16e-32@mips16-macro-e.d,
	* testsuite/gas/mips/mips16e-32@mips16-macro-t.d,
	* testsuite/gas/mips/mips16e-32@mips16-macro.d,
	* testsuite/gas/mips/mips16e-32@mips16e-64.d,
	* testsuite/gas/mips/mips16e2-32@mips16-insn-e.d,
	* testsuite/gas/mips/mips16e2-32@mips16-insn-t.d,
	* testsuite/gas/mips/mips16e2-32@mips16-macro-e.d,
	* testsuite/gas/mips/mips16e2-32@mips16-macro-t.d,
	* testsuite/gas/mips/mips16e2-32@mips16-macro.d,
	* testsuite/gas/mips/mips16e2-32@mips16e-64.d,
	* testsuite/gas/mips/mips16e2-copy-err.d,
	* testsuite/gas/mips/mips16e2-imm-error.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d,
	* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d,
	* testsuite/gas/mips/mips16e2-mt-err.d,
	* testsuite/gas/mips/mips16e2-reloc-error.d,
	* testsuite/gas/mips/mips16e2@lui-2.d,
	* testsuite/gas/mips/mips16e2@mips16-pcrel-2.d,
	* testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d,
	* testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d,
	* testsuite/gas/mips/mips1@isa-override-2.d,
	* testsuite/gas/mips/mips1@relax-offset.d,
	* testsuite/gas/mips/mips2@isa-override-2.d,
	* testsuite/gas/mips/mips32-mt.d,
	* testsuite/gas/mips/mips32@isa-override-2.d,
	* testsuite/gas/mips/mips32r2@isa-override-2.d,
	* testsuite/gas/mips/mips32r3@isa-override-2.d,
	* testsuite/gas/mips/mips32r5@isa-override-2.d,
	* testsuite/gas/mips/mips32r6@isa-override-2.d,
	* testsuite/gas/mips/mips5-fp.d,
	* testsuite/gas/mips/mips64-mips3d-incl.d,
	* testsuite/gas/mips/mips64-mips3d.d,
	* testsuite/gas/mips/mipsr6@mips5-fp.d,
	* testsuite/gas/mips/msa-relax.d,
	* testsuite/gas/mips/octeon3@isa-override-1.d,
	* testsuite/gas/mips/octeon3@isa-override-2.d,
	* testsuite/gas/mips/option-pic-relax-2.d,
	* testsuite/gas/mips/option-pic-relax-3.d,
	* testsuite/gas/mips/option-pic-relax-4.d,
	* testsuite/gas/mips/option-pic-relax-5.d,
	* testsuite/gas/mips/org-1.d,
	* testsuite/gas/mips/org-10.d,
	* testsuite/gas/mips/org-4.d,
	* testsuite/gas/mips/org-5.d,
	* testsuite/gas/mips/org-6.d,
	* testsuite/gas/mips/r3000@isa-override-2.d,
	* testsuite/gas/mips/r3000@relax-offset.d,
	* testsuite/gas/mips/r3900@isa-override-2.d,
	* testsuite/gas/mips/r3900@relax-offset.d,
	* testsuite/gas/mips/reginfo-2-n32.d,
	* testsuite/gas/mips/reginfo-2.d,
	* testsuite/gas/mips/relax-at.d,
	* testsuite/gas/mips/relax-offset.d,
	* testsuite/gas/mips/relax-swap1-mips1.d,
	* testsuite/gas/mips/relax-swap1-mips2.d,
	* testsuite/gas/mips/relax-swap2.d,
	* testsuite/gas/mips/relax.d,
	* testsuite/gas/mips/save-err.d,
	* testsuite/gas/mips/set-arch.d,
	* testsuite/gas/mips/xpa-err.d,
	* testsuite/gas/mips/xpa-virt-err.d,
	* testsuite/gas/msp430/bad.d,
	* testsuite/gas/msp430/errata_warns.d,
	* testsuite/gas/msp430/pr22133.d,
	* testsuite/gas/ppc/lsp-checks.d,
	* testsuite/gas/ppc/misalign.d,
	* testsuite/gas/ppc/spe2-checks.d,
	* testsuite/gas/riscv/bad-csr.d,
	* testsuite/gas/riscv/c-addi16sp-fail.d,
	* testsuite/gas/riscv/c-addi4spn-fail.d,
	* testsuite/gas/riscv/c-fld-fsd-fail.d,
	* testsuite/gas/riscv/c-lui-fail.d,
	* testsuite/gas/riscv/c-nonzero-imm.d,
	* testsuite/gas/riscv/c-nonzero-reg.d,
	* testsuite/gas/riscv/fence-fail.d,
	* testsuite/gas/riscv/lla64-fail.d,
	* testsuite/gas/riscv/rouding-fail.d,
	* testsuite/gas/sh/pcrel-hms.d,
	* testsuite/gas/sh/pcrel.d,
	* testsuite/gas/sparc/dcti-couples-v8.d,
	* testsuite/gas/sparc/dcti-couples-v9c.d,
	* testsuite/gas/tic6x/arch-invalid-1.d,
	* testsuite/gas/tic6x/arch-invalid-2.d,
	* testsuite/gas/tic6x/dir-junk.d,
	* testsuite/gas/tic6x/insns-bad-1.d,
	* testsuite/gas/tic6x/insns-bad-2.d,
	* testsuite/gas/tic6x/parallel-bad-1.d,
	* testsuite/gas/tic6x/parallel-bad-2.d,
	* testsuite/gas/tic6x/parallel-bad-3.d,
	* testsuite/gas/tic6x/parallel-bad-4.d,
	* testsuite/gas/tic6x/predicate-bad-1.d,
	* testsuite/gas/tic6x/predicate-bad-2.d,
	* testsuite/gas/tic6x/predicate-bad-3.d,
	* testsuite/gas/tic6x/reloc-bad-1.d,
	* testsuite/gas/tic6x/reloc-bad-2.d,
	* testsuite/gas/tic6x/reloc-bad-3.d,
	* testsuite/gas/tic6x/reloc-bad-4.d,
	* testsuite/gas/tic6x/reloc-bad-5.d,
	* testsuite/gas/tic6x/reloc-bad-6.d,
	* testsuite/gas/tic6x/resource-func-unit-1.d,
	* testsuite/gas/tic6x/resource-func-unit-2.d,
	* testsuite/gas/tic6x/sploop-bad-1.d,
	* testsuite/gas/tic6x/sploop-bad-2.d,
	* testsuite/gas/tic6x/sploop-bad-3.d,
	* testsuite/gas/tic6x/sploop-bad-4.d,
	* testsuite/gas/tic6x/sploop-bad-5.d,
	* testsuite/gas/tic6x/sploop-bad-6.d,
	* testsuite/gas/tic6x/sploop-bad-7.d,
	* testsuite/gas/tic6x/unwind-bad-1.d,
	* testsuite/gas/tic6x/unwind-bad-2.d,
	* testsuite/lib/gas-defs.exp (run_dump_tests): Replace stderr
	and error-output with warning_output and error_output.
	(slurp_options): Accept underscore rather than dash.
2018-09-15 16:24:18 +09:30
Alan Modra
b47b60aad8 gas run_dump_test rename not-target and not-skip
Use notarget and noskip, like the ld testsuite.

	* testsuite/gas/aarch64/codealign.d,
	* testsuite/gas/aarch64/litpool.d,
	* testsuite/gas/aarch64/mapmisc.d,
	* testsuite/gas/aarch64/mapping.d,
	* testsuite/gas/aarch64/mapping2.d,
	* testsuite/gas/aarch64/mapping3.d,
	* testsuite/gas/aarch64/mapping4.d,
	* testsuite/gas/all/align.d,
	* testsuite/gas/all/fill-1.d,
	* testsuite/gas/all/incbin.d,
	* testsuite/gas/all/redef2.d,
	* testsuite/gas/all/redef3.d,
	* testsuite/gas/all/relax.d,
	* testsuite/gas/all/sleb128-2.d,
	* testsuite/gas/all/sleb128-4.d,
	* testsuite/gas/all/sleb128-5.d,
	* testsuite/gas/all/sleb128-7.d,
	* testsuite/gas/all/sleb128-9.d,
	* testsuite/gas/all/weakref1.d,
	* testsuite/gas/all/weakref1g.d,
	* testsuite/gas/all/weakref1l.d,
	* testsuite/gas/all/weakref1u.d,
	* testsuite/gas/all/weakref1w.d,
	* testsuite/gas/arm/abs12.d,
	* testsuite/gas/arm/arch4t.d,
	* testsuite/gas/arm/arch7.d,
	* testsuite/gas/arm/arch7a-mp.d,
	* testsuite/gas/arm/arch7em.d,
	* testsuite/gas/arm/archv8m-main-dsp-5.d,
	* testsuite/gas/arm/armv8a-automatic-hlt.d,
	* testsuite/gas/arm/armv8a-automatic-lda.d,
	* testsuite/gas/arm/attr-syntax.d,
	* testsuite/gas/arm/automatic-bw.d,
	* testsuite/gas/arm/automatic-cbz.d,
	* testsuite/gas/arm/automatic-clrex.d,
	* testsuite/gas/arm/automatic-lda.d,
	* testsuite/gas/arm/automatic-ldaex.d,
	* testsuite/gas/arm/automatic-ldaexb.d,
	* testsuite/gas/arm/automatic-ldrex.d,
	* testsuite/gas/arm/automatic-ldrexd.d,
	* testsuite/gas/arm/automatic-movw.d,
	* testsuite/gas/arm/automatic-sdiv.d,
	* testsuite/gas/arm/automatic-strexb.d,
	* testsuite/gas/arm/barrier-thumb.d,
	* testsuite/gas/arm/barrier.d,
	* testsuite/gas/arm/bignum1.d,
	* testsuite/gas/arm/blx-bad.d,
	* testsuite/gas/arm/blx-local.s,
	* testsuite/gas/arm/crc32-armv8-a-bad.d,
	* testsuite/gas/arm/crc32-armv8-a.d,
	* testsuite/gas/arm/crc32-armv8-r-bad.d,
	* testsuite/gas/arm/crc32-armv8-r.d,
	* testsuite/gas/arm/eabi_attr_1.d,
	* testsuite/gas/arm/fp-save.d,
	* testsuite/gas/arm/local_function.d,
	* testsuite/gas/arm/local_label_coff.d,
	* testsuite/gas/arm/local_label_wince.d,
	* testsuite/gas/arm/mapping.d,
	* testsuite/gas/arm/mapping2.d,
	* testsuite/gas/arm/mapping3.d,
	* testsuite/gas/arm/mapping4.d,
	* testsuite/gas/arm/mapshort-elf.d,
	* testsuite/gas/arm/mask_1-armv8-a.d,
	* testsuite/gas/arm/mask_1-armv8-r.d,
	* testsuite/gas/arm/mrs-msr-thumb-v6t2.d,
	* testsuite/gas/arm/mrs-msr-thumb-v7-m.d,
	* testsuite/gas/arm/mrs-msr-thumb-v7e-m.d,
	* testsuite/gas/arm/nomapping.d,
	* testsuite/gas/arm/pic.d,
	* testsuite/gas/arm/pic_vxworks.d,
	* testsuite/gas/arm/plt-1.d,
	* testsuite/gas/arm/reloc-bad.d,
	* testsuite/gas/arm/reloc-fdpic.d,
	* testsuite/gas/arm/t2-branch-global.d,
	* testsuite/gas/arm/thumb.d,
	* testsuite/gas/arm/thumb2_ldr_immediate_armv6.d,
	* testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d,
	* testsuite/gas/arm/thumb2_pool.d,
	* testsuite/gas/arm/thumb2_vpool.d,
	* testsuite/gas/arm/thumb2_vpool_be.d,
	* testsuite/gas/arm/thumb32.d,
	* testsuite/gas/arm/thumbver.d,
	* testsuite/gas/arm/tls.d,
	* testsuite/gas/arm/tls_vxworks.d,
	* testsuite/gas/arm/undefined_coff.d,
	* testsuite/gas/arm/unwind.d,
	* testsuite/gas/arm/unwind_vxworks.d,
	* testsuite/gas/arm/v4bx.d,
	* testsuite/gas/arm/vfma1.d,
	* testsuite/gas/arm/vldm-arm.d,
	* testsuite/gas/arm/weakdef-1.d,
	* testsuite/gas/arm/weakdef-2.d,
	* testsuite/gas/arm/wince.d,
	* testsuite/gas/arm/wince_inst.d,
	* testsuite/gas/elf/bignums.d,
	* testsuite/gas/elf/common5a.d,
	* testsuite/gas/elf/common5b.d,
	* testsuite/gas/elf/common5c.d,
	* testsuite/gas/elf/common5d.d,
	* testsuite/gas/elf/dwarf2-1.d,
	* testsuite/gas/elf/dwarf2-10.d,
	* testsuite/gas/elf/dwarf2-11.d,
	* testsuite/gas/elf/dwarf2-12.d,
	* testsuite/gas/elf/dwarf2-13.d,
	* testsuite/gas/elf/dwarf2-14.d,
	* testsuite/gas/elf/dwarf2-15.d,
	* testsuite/gas/elf/dwarf2-16.d,
	* testsuite/gas/elf/dwarf2-17.d,
	* testsuite/gas/elf/dwarf2-18.d,
	* testsuite/gas/elf/dwarf2-2.d,
	* testsuite/gas/elf/dwarf2-3.d,
	* testsuite/gas/elf/dwarf2-4.d,
	* testsuite/gas/elf/dwarf2-5.d,
	* testsuite/gas/elf/dwarf2-6.d,
	* testsuite/gas/elf/dwarf2-7.d,
	* testsuite/gas/elf/dwarf2-8.d,
	* testsuite/gas/elf/dwarf2-9.d,
	* testsuite/gas/elf/group0c.d,
	* testsuite/gas/elf/group1a.d,
	* testsuite/gas/elf/group2.d,
	* testsuite/gas/elf/groupautoa.d,
	* testsuite/gas/elf/ifunc-1.d,
	* testsuite/gas/elf/section11.d,
	* testsuite/gas/elf/section4.d,
	* testsuite/gas/elf/section7.d,
	* testsuite/gas/elf/syms.d,
	* testsuite/gas/elf/symver.d,
	* testsuite/gas/i386/iamcu-1.d,
	* testsuite/gas/i386/iamcu-2.d,
	* testsuite/gas/i386/iamcu-3.d,
	* testsuite/gas/i386/iamcu-4.d,
	* testsuite/gas/i386/iamcu-5.d,
	* testsuite/gas/i386/ilp32/rex.d,
	* testsuite/gas/i386/k1om.d,
	* testsuite/gas/i386/l1om.d,
	* testsuite/gas/i386/rex.d,
	* testsuite/gas/mach-o/sections-3.d,
	* testsuite/gas/macros/irp.d,
	* testsuite/gas/macros/repeat.d,
	* testsuite/gas/macros/rept.d,
	* testsuite/gas/macros/semi.d,
	* testsuite/gas/macros/test2.d,
	* testsuite/gas/macros/test3.d,
	* testsuite/gas/macros/vararg.d,
	* testsuite/gas/mips/jal-svr4pic-local.d,
	* testsuite/gas/mips/micromips@jal-svr4pic-local.d,
	* testsuite/gas/mips/mips1@jal-svr4pic-local.d,
	* testsuite/gas/mips/r3000@jal-svr4pic-local.d,
	* testsuite/gas/ppc/machine.d,
	* testsuite/lib/gas-defs.exp (run_dump_test): Replace not-target
	and not-skip with notarget and noskip.
2018-09-15 16:24:18 +09:30
Alan Modra
04ade4bc66 Remove run_dump_test support for objcopy as a dump program
We have three copies of run_dump_test in the testsuite.  This is a first
step towards consolidating them.

A few tests use objcopy to convert to verilog or srec output, then
check that output is as expected.  Those tests can just as easily use
objdump, keeping the set of dump programs (addr2line, nm, objdump,
readelf, size) separate from utilities under test.  That in turn makes
auto-detecting the dump program possible in more places.

binutils/
	* testsuite/binutils-all/group-7a.d,
	* testsuite/binutils-all/group-7b.d,
	* testsuite/binutils-all/group-7c.d,
	* testsuite/binutils-all/symbols-1.d,
	* testsuite/binutils-all/symbols-2.d,
	* testsuite/binutils-all/symbols-3.d,
	* testsuite/binutils-all/symbols-4.d: Remove DUMPPROG.
gas/
	* testsuite/gas/mri/char.d: Don't objcopy to srec, objdump instead.
	* testsuite/gas/mri/float.d: Likewise.
	* testsuite/lib/gas-defs.exp (run_dump_test): Remove support
	for objcopy as a dump tool.
ld/
	* testsuite/ld-elf/interleave-0.d,
	* testsuite/ld-elf/interleave-4.d: Don't objcopy to srec,
	objdump instead.
	* testsuite/ld-gc/all-debug-sections.d,
	* testsuite/ld-scripts/provide-4.d,
	* testsuite/ld-scripts/provide-5.d,
	* testsuite/ld-scripts/provide-6.d,
	* testsuite/ld-scripts/provide-7.d,
	* testsuite/ld-scripts/provide-8.d,
	* testsuite/ld-scripts/segment-start.d: Remove PROG, specify
	nm instead.
	* testsuite/lib/ld-lib.exp (run_dump_test): Remove support
	for objcopy as a dump tool.
2018-09-15 16:24:18 +09:30
H.J. Lu
606cc04085 x86: Check non-WIG EVEX instruction encoding with -mevexwig=1
Verify that -mevexwig=1 has no impact on non-WIG EVEX instruction encoding.

	PR gas/23642
	* testsuite/gas/i386/evex-wig2.d: New file.
	* testsuite/gas/i386/evex-wig2.s: Likewise.
	* testsuite/gas/i386/x86-64-evex-wig2.d: Likewise.
	* testsuite/gas/i386/x86-64-evex-wig2.s: Likewise.
	* testsuite/gas/i386/i386.exp: Run evex-wig2 and
	x86-64-evex-wig2.
2018-09-14 12:21:19 -07:00
H.J. Lu
6865c0435a x86: Support VEX/EVEX WIG encoding
Add VEXWIG, defined as 3, to indicate that the VEX.W/EVEX.W bit is
ignored by such VEX/EVEX instructions, aka WIG instructions.  Set
VexW=3 on VEX/EVEX WIG instructions.  Update assembler to check
VEXWIG when setting the VEX.W bit.

gas/

	PR gas/23642
	* config/tc-i386.c (build_vex_prefix): Check VEXWIG when setting
	the VEX.W bit.
	(build_evex_prefix): Check VEXWIG when setting the EVEX.W bit.

opcodes/

	PR gas/23642
	* i386-opc.h (VEXWIG): New.
	* i386-opc.tbl: Set VexW=3 on VEX/EVEX WIG instructions.
	* i386-tbl.h: Regenerated.
2018-09-14 12:20:10 -07:00
H.J. Lu
70df6fc9bc x86: Handle unsupported static rounding in vcvt[u]si2sd in 32-bit mode
Update x86 disassembler to handle the unsupported static rounding in
vcvt[u]si2sd in 32-bit mode.

gas/

	PR binutils/23655
	* testsuite/gas/i386/evex.d: Updated.

opcodes/

	PR binutils/23655
	* i386-dis-evex.h: Replace EXxEVexR with EXxEVexR64 for
	vcvtsi2sd%LQ and vcvtusi2sd%LQ.
	* i386-dis.c (EXxEVexR64): New.
	(evex_rounding_64_mode): Likewise.
	(OP_Rounding): Handle evex_rounding_64_mode.
2018-09-14 11:25:13 -07:00
H.J. Lu
d20dee9efa x86: Properly decode EVEX.W in vcvt[u]si2s[sd] in 32-bit mode
Update x86 disassembler to ignore the EVEX.W bit in EVEX vcvt[u]si2s[sd]
instructions in 32-bit mode.

gas/

	PR binutils/23655
	* testsuite/gas/i386/evex.d: New file.
	* testsuite/gas/i386/evex.s: Likewise.
	* testsuite/gas/i386/i386.exp: Run evex.

opcodes/

	PR binutils/23655
	* i386-dis-evex.h (evex_table): Replace Eq with Edqa for
	vcvtsi2ss%LQ, vcvtsi2sd%LQ, vcvtusi2ss%LQ and vcvtusi2sd%LQ.
	* i386-dis.c (Edqa): New.
	(dqa_mode): Likewise.
	(intel_operand_size): Handle dqa_mode as m_mode.
	(OP_E_register): Handle dqa_mode as dq_mode.
	(OP_E_memory): Set shift for dqa_mode based on address_mode.
2018-09-14 10:49:53 -07:00
Lifang Xia
fe75f42ee1 csky: Support PC relative diff relocation
Define DIFF_EXPR_OK to Support PC relative diff relocation,
and add CKCORE_PCREL32 relocation process

bfd/
        * elf32-csky.c (csky_elf_howto_table): Fill special_function of
        R_CKCORE_PCREL32.
        (csky_elf_relocate_section): Add R_CKCORE_PCREL32 process.
gas/
        * config/tc-csky.c (md_apply_fix): Transmit
        BFD_RELOC_32_PCREL to BFD_RELOC_CKCORE_PCREL32.
        (tc_gen_reloc): Trasmit BFD_RELOC_CKCORE_ADDR32 to
        BFD_RELOC_CKCORE_PCREL32 while pc-relative.
        * config/tc-csky.h (DIFF_EXPR_OK): Define to enable PC relative
        diff relocs.
2018-09-14 21:04:47 +08:00
Jan Beulich
556059dd13 x86: fold CRC32 templates
Just like other insns having byte and word forms, these can also make
use of the W modifier, which at the same time allows simplifying some
other code a little bit.
2018-09-14 11:21:15 +02:00
H.J. Lu
79f0fa25b9 x86: Swap destination/source to encode VEX only if possible
When encoding VEX, we can swap destination and source only if there are
more than 1 register operand.

	* config/tc-i386.c (build_vex_prefix): Swap destination and
	source only if there are more than 1 register operand.
2018-09-13 06:12:31 -07:00
Jan Beulich
f5eb1d70fb x86: also allow D on 3-operand insns
For now this is just for VMOVS{D,S}.
2018-09-13 11:07:55 +02:00
Jan Beulich
dbbc8b7e62 x86: use D attribute also for SIMD templates
Various moves come in load and store forms, and just like on the GPR
and FPU sides there would better be only one pattern. In some cases this
is not feasible because the opcodes are too different, but quite a few
cases follow a similar standard scheme. Introduce Opcode_SIMD_FloatD and
Opcode_SIMD_IntD, generalize handling in operand_size_match() (reverse
operand handling there simply needs to match "straight" operand one),
and fix a long standing, but so far only latent bug with when to zap
found_reverse_match.

Also once again drop IgnoreSize where pointlessly applied to templates
touched anyway as well as *word when redundant with Reg*.
2018-09-13 11:07:07 +02:00
Jan Beulich
efb192033a x86: fold ILP32 output of "opts" tests
The output is identical to that of the LP64 tests. No need to fully
spell this out twice.
2018-09-13 11:06:07 +02:00
Jan Beulich
64c49ab3fb x86: improve operand reversal
In quite a few cases the .s suffix or {load} / {store} prefixes did not
work as intended, or produced errors when they're supposed to be ignored
when it is not possible to carry out the request.

The change here re-purposes(?) the .s suffix to no longer mean "store"
(if that's what 's' did stand for), since the forms used in the base
templates are not consistently loads (and we unlikely want to change
that). The pseudo prefixes will now fulfill what their names say, i.e.
{load} now only ever produces a load form encoding (if available) while
{store} only ever produces a store form one (again if available). This
requires minimal test suite adjustments, while the majority of the
changes there are simply additions.
2018-09-13 11:05:27 +02:00
Jan Beulich
07d5e9534b x86: add code comment on deprecated status of pseudo-suffixes 2018-09-13 11:04:38 +02:00
Jan Beulich
d276ec695e x86-64: bndmk, bndldx, and bndstx don't allow RIP-relative addressing 2018-09-13 11:03:35 +02:00
Nick Clifton
031e33500e Fix the use by the RL78 assembler of an uninitialised field in the expresion structure.
* dwarf2dbg.c (generic_dwarf2_emit_offset): Use memset to
	initialise expression structure.
	(set_or_check_view): Likewise.
	(out_set_addr): Likewise.
	(emit_fixed_inc_line_addr): Likewise.
	(relax_inc_line_addr): Likewise.
	(out_debug_line): Likewise.
	(out_debug_ranges): Likewise.
	(out_debug_aranges): Likewise.
	(out_debug_info): Likewise.
2018-09-13 09:34:53 +01:00
Alan Modra
deee88e981 PR23570, AVR .noinit section defaults to PROGBITS
Revert commit 8744470dea and instead use the standard special_sections
support.

	PR 23570
bfd/
	* elf32-avr.c (elf_avr_special_sections): New.
	(elf_backend_special_sections): Define.
gas/
	* config/tc-avr.c: Revert 2018-09-03 change.
2018-09-06 14:13:00 +09:30
Daniel Cederman
618a8fdba6 gas, sparc: Allow non-fpop2 instructions before floating point branches
Sparc V8 does not allow fpop2 instructions (floating point
comparisons) immediately before floating point branches.  From the
SPARC Architecture Manual Version 8, section B.22 "Branch on
Floating-point Condition Codes Instructions":

"If the instruction executed immediately before an FBfcc is an FPop2
instruction, the result of the FBfcc is undefined.  Therefore, at
least one non FPop2 instruction should be executed between the FPop2
instruction and the FBfcc instruction."

The existing check in GAS, however, does not allow any kind of
floating point instruction before the branch.  This patch adds an
extra condition to only disallow fpop2 instructions.

gas/ChangeLog:

2018-09-04  Daniel Cederman  <cederman@gaisler.com>

	* config/tc-sparc.c (md_assemble): Allow non-fpop2 instructions
            before floating point branches for Sparc V8 and earlier.
	* testsuite/gas/sparc/sparc.exp: Execute the new test.
	* testsuite/gas/sparc/v8branch.d: New test.
	* testsuite/gas/sparc/v8branch.s: New test.
2018-09-04 06:25:52 -07:00
Nick Clifton
8744470dea Change the .section directive for the AVR assembler so that the .noinit section is always given the ELF NOBITS section type.
PR gas/23570
	* config/tc-avr.c (md_pseudo_table): Add entry for "secction".
	(avr_set_section): New function.  Ensures that the .noinit section
	gets the NOBITS ELF section type.
2018-09-03 17:06:45 +01:00
Jim Wilson
be192bc284 RISC-V: Correct the requirement of compressed floating point instructions
2018-08-31  Kito Cheng  <kito@andestech.com>
gas/
	* testsuite/gas/riscv/c-fld-fsd-fail.d: New.
	* testsuite/gas/riscv/c-fld-fsd-fail.l: Likewise.
	* testsuite/gas/riscv/c-fld-fsd-fail.s: Likewise.
opcodes/
	* riscv-opc.c (riscv_opcodes): Fix incorrect subset info for
	compressed floating point instructions.
2018-08-31 12:23:05 -07:00
H.J. Lu
6e1453f681 gas/elf/section14.d: Change skip to xfail
We will get an XPASS when h8300 port peculiarities are fixed, and will
fix the testsuite too.

	* testsuite/gas/elf/section14.d: Change skip to xfail.
	* testsuite/lib/gas-defs.exp (run_dump_test): Add xfail support.
2018-08-31 09:40:54 -07:00
Alan Modra
4a9699735b PowerPC64 higher REL16 relocations
There are occasions where someone might want to build a 64-bit
pc-relative offset from 16-bit pieces.  This adds the necessary REL16
relocs corresponding to existing ADDR16 relocs that can be used to
build 64-bit absolute values.

include/
	* elf/ppc64.h (R_PPC64_REL16_HIGH, R_PPC64_REL16_HIGHA),
	(R_PPC64_REL16_HIGHER, R_PPC64_REL16_HIGHERA),
	(R_PPC64_REL16_HIGHEST, R_PPC64_REL16_HIGHESTA): Define.
	(R_PPC64_LO_DS_OPT, R_PPC64_16DX_HA): Bump value.
bfd/
	* reloc.c (BFD_RELOC_PPC64_REL16_HIGH, BFD_RELOC_PPC64_REL16_HIGHA),
	(BFD_RELOC_PPC64_REL16_HIGHER, BFD_RELOC_PPC64_REL16_HIGHERA),
	(BFD_RELOC_PPC64_REL16_HIGHEST, BFD_RELOC_PPC64_REL16_HIGHESTA):
	Define.
	* elf64-ppc.c (ppc64_elf_howto_raw): Add new REL16 howtos.
	(ppc64_elf_reloc_type_lookup): Translate new REL16 relocs.
	(ppc64_elf_check_relocs, ppc64_elf_relocate_section): Handle them.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
gas/
	* config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Allow ADDR16
	HIGH, HIGHA, HIGHER, HIGHERA, HIGHEST, and HIGHESTA relocs.
	Group 16-bit relocs.
	* config/tc-ppc.c (md_apply_fix): Translate those ADDR16 relocs
	to REL16 when pcrel.  Sort relocs.
2018-08-31 22:15:05 +09:30
H.J. Lu
5e8a54c6c4 gas: Pass -mx86-used-note=no to assembler
Since x86 assembler may generate .note.gnu.property section, pass
-mx86-used-note=no to assembler for section2 test on ELF/x86 targets
to avoid .note.gnu.property section.

	* testsuite/gas/elf/elf.exp: Pass -mx86-used-note=no to
	assembler for section2 test on ELF/x86 targets.
2018-08-31 04:43:06 -07:00
H.J. Lu
2550e95256 x86: pass -mx86-used-note=no to assembler
Since cfi/cfi-label.d is ELF/x86 specific, we can pass -mx86-used-note=no
to assembler.

	* testsuite/gas/cfi/cfi-label.d: Pass -mx86-used-note=no to
	assembler.
2018-08-31 04:39:33 -07:00
H.J. Lu
6c0d3bdec7 x86: Add explicit -mx86-used-note=[yes|no] to tests
Pass explicit -mx86-used-note=[yes|no] to x86 assembler and update
expected outputs from "readelf -n" if needed.

binutils/

	* testsuite/binutils-all/i386/compressed-1b.d: Pass
	-mx86-used-note=no to assembler.
	* testsuite/binutils-all/i386/compressed-1c.d: Likewise.
	* testsuite/binutils-all/x86-64/compressed-1b.d: Likewise.
	* testsuite/binutils-all/x86-64/compressed-1c.d: Likewise.
	* testsuite/binutils-all/i386/empty.d: Pass -mx86-used-note=yes
	to assembler and update expected output from "readelf -n".
	* testsuite/binutils-all/i386/ibt.d: Likewise.
	* testsuite/binutils-all/i386/pr21231a.d: Likewise.
	* testsuite/binutils-all/i386/pr21231b.d: Likewise.
	* testsuite/binutils-all/i386/shstk.d: Likewise.
	* testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/empty.d: Likewise.
	* testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/ibt.d: Likewise.
	* testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494b.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
	* testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
	* testsuite/binutils-all/x86-64/shstk.d: Likewise.

gas/

	* testsuite/gas/i386/bss.d: Pass -mx86-used-note=no to assembler.
	* testsuite/gas/i386/ilp32/quad.d: Likewise.
	* testsuite/gas/i386/ilp32/reloc64.d: Likewise.
	* testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
	* testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
	* testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
	* testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
	* testsuite/gas/i386/property-1.d: Likewise.
	* testsuite/gas/i386/relax.d: Likewise.
	* testsuite/gas/i386/reloc64.d: Likewise.
	* testsuite/gas/i386/size-1.d: Likewise.
	* testsuite/gas/i386/size-3.d: Likewise.
	* testsuite/gas/i386/x86-64-property-1.d: Likewise.
	* testsuite/gas/i386/x86-64-size-1.d: Likewise.
	* testsuite/gas/i386/x86-64-size-3.d: Likewise.
	* testsuite/gas/i386/x86-64-size-5.d: Likewise.
	* testsuite/gas/i386/x86-64-unwind.d: Likewise.
	* testsuite/gas/i386/divide.d: Append "#pass".

ld/

	* testsuite/ld-i386/i386.exp: (ASFLAGS): Save, append
	-mx86-used-note=no and restore.  Pass -mx86-used-note=yes and
	-mx86-used-note=no to assembler.
	* testsuite/ld-x86-64/x86-64.exp: Likewise.
	* testsuite/ld-i386/no-plt.exp: Pass -mx86-used-note=yes to
	assembler.
	* testsuite/ld-i386/tls.exp: Likewise.
	* testsuite/ld-x86-64/no-plt.exp: Likewise.
	* testsuite/ld-x86-64/tls.exp: Likewise.
	* testsuite/ld-i386/pr23486a.d: Pass -mx86-used-note=no to
	assembler.
	* testsuite/ld-i386/pr23486b.d: Likewise.
	* testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise.
	* testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
	* testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
	* testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
	* testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
	* testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
	* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
	* testsuite/ld-x86-64/pr23486a.d: Likewise.
	* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
	* testsuite/ld-x86-64/pr23486b.d: Likewise.
	* testsuite/ld-i386/property-x86-3.d: Pass -mx86-used-note=yes
	to assembler and update expected output from "readelf -n".
	* testsuite/ld-i386/property-x86-4a.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt1a.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt1b.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt2.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt4.d: Likewise.
	* testsuite/ld-i386/property-x86-ibt5.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk1a.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk1b.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk2.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk4.d: Likewise.
	* testsuite/ld-i386/property-x86-shstk5.d: Likewise.
	* testsuite/ld-x86-64/property-x86-3-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-3.d: Likewise.
	* testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-4a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt2.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt4.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-ibt5.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk2.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk4.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-shstk5.d: Likewise.
	* testsuite/ld-i386/property-1a.r: New file.
	* testsuite/ld-i386/property-2a.r: Likewise.
	* testsuite/ld-i386/property-3a.r: Likewise.
	* testsuite/ld-i386/property-4a.r: Likewise.
	* testsuite/ld-i386/property-5a.r: Likewise.
	* testsuite/ld-i386/property-7a.r: Likewise.
	* testsuite/ld-x86-64/property-1a.r: Likewise.
	* testsuite/ld-x86-64/property-2a.r: Likewise.
	* testsuite/ld-x86-64/property-3a.r: Likewise.
	* testsuite/ld-x86-64/property-4a.r: Likewise.
	* testsuite/ld-x86-64/property-5a.r: Likewise.
	* testsuite/ld-x86-64/property-7a.r: Likewise.
	* testsuite/ld-x86-64/mpx.exp: Pass -mx86-used-note=no to
	assembler.
2018-08-31 04:35:57 -07:00
H.J. Lu
b4a3a7b44c x86: Extend assembler to generate GNU property notes
Add -mx86-used-note=[yes|no] option to generate (or not) GNU property
notes with GNU_PROPERTY_X86_FEATURE_2_USED and GNU_PROPERTY_X86_ISA_1_USED
properties.  If the assembly input contains no instructions, set the
GNU_PROPERTY_X86_UINT32_VALID bit in GNU_PROPERTY_X86_FEATURE_2_USED
property.  Add a --enable-x86-used-note configure time option to set the
default behavior.  Set the default if the configure option is not used
to "no".

	* NEWS: Mention -mx86-used-note=[no|yes].
	* configure.ac: Add --enable-x86-used-note.  Define
	DEFAULT_X86_USED_NOTE.
	* config.in: Regenerated.
	* configure: Likewise.
	* config/tc-i386.c (x86_isa_1_used): New.
	(x86_feature_2_used): Likewise.
	(x86_used_note): Likewise.
	(_i386_insn): Add has_regmmx, has_regxmm, has_regymm and
	has_regzmm.
	(build_modrm_byte): Set i.has_regmmx, i.has_regzmm.
	i.has_regymm and i.has_regxmm.
	(x86_cleanup): New function.
	(output_insn): Update x86_isa_1_used and x86_feature_2_used.
	(OPTION_X86_USED_NOTE): New.
	(md_longopts): Add -mx86-used-note=.
	(md_parse_option): Handle OPTION_X86_USED_NOTE.
	(md_show_usage): Display -mx86-used-note=.
	* config/tc-i386.h (x86_cleanup): New prototype.
	(md_cleanup): New.
	* doc/c-i386.texi: Document -mx86-used-note=.
2018-08-31 04:31:20 -07:00
Jose E. Marchesi
40bac49b63 sparc: gas: leon.d: disassemble assuming v8 also in sparc64 targets.
gas/ChangeLog:

2018-08-30  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* testsuite/gas/sparc/leon.d: Disassemble v8 code also in sparc64
	targets.
2018-08-30 23:37:45 +02:00
Jim Wilson
43135d3b15 RISC-V: Allow instruction require more than one extension
2018-08-29  Kito Cheng  <kito@andestech.com>

gas/
	* config/tc-riscv.c (riscv_subset_supports): New argument:
	xlen_required.
	(riscv_multi_subset_supports): New function, able to check more
	than one extension.
	(riscv_ip): Use riscv_multi_subset_supports instead of
	riscv_subset_supports.
	(riscv_set_arch): Update call-site for riscv_subset_supports.
	(riscv_after_parse_args): Likewise.

include/
	*opcode/riscv.h (MAX_SUBSET_NUM): New.
	(riscv_opcode): Add xlen_requirement field and change type of
	subset.

opcodes/
	* riscv-dis.c (riscv_disassemble_insn): Check XLEN by
	riscv_opcode.xlen_requirement.
	* riscv-opc.c (riscv_opcodes): Update for struct change.
2018-08-30 13:23:12 -07:00
H.J. Lu
a869991180 Skip elf/section14 test for h8300 targets
Skip elf/section14 test for h8300 targets since the h8300 port issues a
warning message for new sections created without atrributes.

	* testsuite/gas/elf/section14.d: Skip h8300 targets.
2018-08-30 11:06:16 -07:00
H.J. Lu
385e5b9039 Treat SHT_FINI_ARRAY and SHT_PREINIT_ARRAY as relocatable sections
Since SHT_FINI_ARRAY and SHT_PREINIT_ARRAY sections are relocatable,
this patch fixes readelf and adds a testcase.

binutils/

	* readelf.c (process_section_headers): Treat SHT_FINI_ARRAY and
	SHT_PREINIT_ARRAY as relocatable sections.

gas/

	* testsuite/gas/elf/elf.exp: Run section14.
	* testsuite/gas/elf/section14.d: New file.
	* testsuite/gas/elf/section14.s: Likewise.
2018-08-30 08:03:34 -07:00
Martin Aberg
df28970fcc sparc/leon: add support for partial write psr instruction
Partial write %PSR (PWRPSR) is a SPARC V8e option that allows the WRPSR
instruction to only affect the %PSR.ET field. When available it is enabled
by setting the rd field of the WRPSR instruction to a value other than 0.
For Leon processors with support for partial write %PSR (currently GR740
and GR716) the rd value must be 1.

opcodes/ChangeLog:

2018-08-29  Martin Aberg  <maberg@gaisler.com>

        * sparc-opc.c (sparc_opcodes): Add Leon specific partial write
        psr (PWRPSR) instruction.

gas/ChangeLog:

2018-08-29  Daniel Cederman  <cederman@gaisler.com>

        * testsuite/gas/sparc/leon.d: New test.
        * testsuite/gas/sparc/leon.s: New test.
        * testsuite/gas/sparc/sparc.exp: Execute the pwrpsr test.
2018-08-29 20:52:28 +02:00
Chenghua Xu
9108bc33b1 [MIPS] Add Loongson 2K1000 proccessor support.
bfd/
	* archures.c (bfd_architecture): New machine
	bfd_mach_mips_gs264e.
	* bfd-in2.h (bfd_architecture): Likewise.
	* cpu-mips.c (enum I_xxx): Likewise.
	(arch_info_struct): Likewise.
	* elfxx-mips.c (_bfd_elf_mips_mach): Handle
	E_MIPS_MACH_GS264E.
	(mips_set_isa_flags): Likewise.
	(mips_mach_extensions): Map bfd_mach_mips_gs264e to
	bfd_mach_mips_gs464e extension.

binutils/
	* NEWS: Mention Loongson 2K1000 proccessor support.
	* readelf.c (get_machine_flags): Handle gs264e.

elfcpp/
	* mips.c (EF_MIPS_MACH): New E_MIPS_MACH_GS264E.

gas/
	* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Exclude CPU_GS264E.
	(mips_cpu_info_table): Add gs264e descriptors.
	* doc/as.texi (march table): Add gs264e.

include/
	* elf/mips.h (E_MIPS_MACH_XXX): New E_MIPS_MACH_GS264E.
	* opcode/mips.h (CPU_XXX): New CPU_GS264E.

ld/
	* testsuite/ld-mips-elf/mips-elf-flags.exp: Run good_combination
	gs264e and gs464e.

opcodes/
	* mips-dis.c (mips_arch_choices): Add gs264e descriptors.
2018-08-29 20:55:25 +08:00
Chenghua Xu
bd782c07b9 [MIPS] Add Loongson 3A2000/3A3000 proccessor support.
bfd/
	* archures.c (bfd_architecture): New machine
	bfd_mach_mips_gs464e.
	* bfd-in2.h (bfd_architecture): Likewise.
	* cpu-mips.c (enum I_xxx): Likewise.
	(arch_info_struct): Likewise.
	* elfxx-mips.c (_bfd_elf_mips_mach): Handle
	E_MIPS_MACH_GS464E.
	(mips_set_isa_flags): Likewise.
	(mips_mach_extensions): Map bfd_mach_mips_gs464e to
	bfd_mach_mips_gs464 extension.

binutils/
	* NEWS: Mention Loongson 3A2000/3A3000 proccessor support.
	* readelf.c (get_machine_flags): Handle gs464e.

elfcpp/
	* mips.c (EF_MIPS_MACH): New E_MIPS_MACH_GS464E.

gas/
	* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Exclude CPU_GS464E.
	(mips_cpu_info_table): Add gs464e descriptors.
	* doc/as.texi (march table): Add gs464e.

include/
	* elf/mips.h (E_MIPS_MACH_XXX): New E_MIPS_MACH_GS464E.
	* opcode/mips.h (CPU_XXX): New CPU_GS464E.

ld/
	* testsuite/ld-mips-elf/mips-elf-flags.exp: Run good_combination
	gs464e and gs464.

opcodes/
	* mips-dis.c (mips_arch_choices): Add gs464e descriptors.
2018-08-29 20:43:19 +08:00
Chenghua Xu
ac8cb70f36 [MIPS] Add Loongson 3A1000 proccessor support.
bfd/
	* archures.c (bfd_architecture): Rename
	bfd_mach_mips_loongson_3a to bfd_mach_mips_gs464.
	* bfd-in2.h (bfd_architecture): Likewise.
	* cpu-mips.c (enum I_xxx): Likewise.
	(arch_info_struct): Likewise.
	* elfxx-mips.c (_bfd_elf_mips_mach): Likewise.
	(mips_set_isa_flags): Likewise.
	(mips_mach_extensions): Likewise.
	(bfd_mips_isa_ext_mach): Likewise.
	(bfd_mips_isa_ext): Likewise.
	(print_mips_isa_ext): Delete AFL_EXT_LOONGSON_3A.

binutils/
	* NEWS: Mention Loongson 3A1000 proccessor support.
	* readelf.c (get_machine_flags): Rename loongson-3a to gs464.
	(print_mips_isa_ext): Delete AFL_EXT_LOONGSON_3A.

elfcpp/
	* mips.c (EF_MIPS_MACH): Rename E_MIPS_MACH_LS3A to
	E_MIPS_MACH_GS464.

gas/
	* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Rename
	CPU_LOONGSON_3A to CPU_GS464.
	(mips_cpu_info_table): Add gs464 descriptors, Keep
	loongson3a as an alias of gs464 for compatibility.
	* doc/as.texi (march table): Rename loongson3a to gs464.
	* testsuite/gas/mips/loongson-3a-mmi.d: Set "ISA Extension"
	flag to None.

gold/
	* mips.cc (Mips_mach, add_machine_extensions, elf_mips_mach):
	Rename loongson3a to gs464.
	(mips_isa_ext_mach, mips_isa_ext): Delete loongson3a.
	(infer_abiflags): Use ases instead of isa_ext for infer ABI
flags.
	(elf_mips_mach_name): Rename loongson3a to gs464.

include/
	* elf/mips.h (E_MIPS_MACH_XXX): Rename E_MIPS_MACH_LS3A to
	E_MIPS_MACH_GS464.
	(AFL_EXT_XXX): Delete AFL_EXT_LOONGSON_3A.
	* opcode/mips.h (INSN_XXX): Delete INSN_LOONGSON_3A.
	(CPU_XXX): Rename CPU_LOONGSON_3A to CPU_GS464.
	* opcode/mips.h (mips_isa_table): Delete CPU_LOONGSON_3A case.

ld/
	* testsuite/ld-mips-elf/mips-elf-flags.exp: Rename loongson3a
	to gs464.

opcodes/
	* mips-dis.c (mips_arch_choices): Add gs464 descriptors, Keep
	loongson3a as an alias of gs464 for compatibility.
	* mips-opc.c (mips_opcodes): Change Comments.
2018-08-29 20:32:30 +08:00
Chenghua Xu
a693765e23 [MIPS/GAS] Add Loongson EXT2 Instructions support.
bfd/
	* elfxx-mips.c (print_mips_ases): Add Loongson EXT2 extension.

binutils/
	* readelf.c (print_mips_ases): Add Loongson EXT2 extension.

gas/
	* NEWS: Mention Loongson EXTensions R2 (EXT2) support.
	* config/tc-mips.c (options): Add OPTION_LOONGSON_EXT2 and
	OPTION_NO_LOONGSON_EXT2.
	(md_longopts): Likewise.
	(mips_ases): Define availability for EXT.
	(mips_convert_ase_flags): Map ASE_LOONGSON_EXT2 to
	AFL_ASE_LOONGSON_EXT2.
	(md_show_usage): Add help for -mloongson-ext2 and
	-mno-loongson-ext2.
	* doc/as.texi: Document -mloongson-ext2, -mno-loongson-ext2.
	* doc/c-mips.texi: Document -mloongson-ext2, -mno-loongson-ext2,
	.set loongson-ext2 and .set noloongson-ext2.
	* testsuite/gas/mips/loongson-ext2.d: New test.
	* testsuite/gas/mips/loongson-ext2.s: New test.
	* testsuite/gas/mips/mips.exp: Run loongson-ext2 test.

include/
	* elf/mips.h (AFL_ASE_LOONGSON_EXT2): New macro.
	(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_EXT2.
	* opcode/mips.h (ASE_LOONGSON_EXT2): New macro.

opcodes/
	* mips-dis.c (parse_mips_ase_option): Handle -M loongson-ext
	option.
	(print_mips_disassembler_options): Document -M loongson-ext.
	* mips-opc.c (LEXT2): New macro.
	(mips_opcodes): Add cto, ctz, dcto, dctz instructions.
2018-08-29 20:08:58 +08:00
Chenghua Xu
bdc6c06e3b [MIPS/GAS] Split Loongson EXT Instructions from loongson3a.
bfd/
	 * elfxx-mips.c (infer_mips_abiflags): Use ases instead of
	 isa_ext for infer ABI flags.
	 (print_mips_ases): Add Loongson EXT extension.

binutils/
	 * readelf.c (print_mips_ases): Add Loongson EXT extension.

elfcpp/
	 * mips.h (AFL_ASE_LOONGSON_EXT): New enum.

gas/
	 * NEWS: Mention Loongson EXTensions (EXT) support.
	 * config/tc-mips.c (options): Add OPTION_LOONGSON_EXT and
	 OPTION_NO_LOONGSON_EXT.
	 (md_longopts): Likewise.
	 (mips_ases): Define availability for EXT.
	 (mips_convert_ase_flags): Map ASE_LOONGSON_EXT to
	 AFL_ASE_LOONGSON_EXT.
	 (mips_cpu_info_table): Add ASE_LOONGSON_EXT for loongson3a.
	 (md_show_usage): Add help for -mloongson-ext and
	 -mno-loongson-ext.
	 * doc/as.texi: Document -mloongson-ext, -mno-loongson-ext.
	 * doc/c-mips.texi: Document -mloongson-ext, -mno-loongson-ext,
	 .set loongson-ext and .set noloongson-ext.
	 * testsuite/gas/mips/loongson-mmi.d: Add ASE flag.

include/
	 * elf/mips.h (AFL_ASE_LOONGSON_EXT): New macro.
	 (AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_EXT.
	 * opcode/mips.h (ASE_LOONGSON_EXT): New macro.

opcodes/
	 * mips-dis.c (mips_arch_choices): Add EXT to loongson3a
	 descriptors.
	 (parse_mips_ase_option): Handle -M loongson-ext option.
	 (print_mips_disassembler_options): Document -M loongson-ext.
	 * mips-opc.c (IL3A): Delete.
	 * mips-opc.c (LEXT): New macro.
	 (mips_opcodes): Replace IL2F|IL3A marking with LEXT for EXT
	 instructions.
2018-08-29 19:57:39 +08:00
Chenghua Xu
716c08de28 [MIPS/GAS] Split Loongson CAM Instructions from loongson3a
bfd/
	* elfxx-mips.c (print_mips_ases): Add CAM extension.

binutils/
	* readelf.c (print_mips_ases): Add CAM extension.

gas/
	* NEWS: Mention Loongson Content Address Memory (CAM)
	support.
	* config/tc-mips.c (options): Add OPTION_LOONGSON_CAM and
	OPTION_NO_LOONGSON_CAM.
	(md_longopts): Likewise.
	(mips_ases): Define availability for CAM.
	(mips_convert_ase_flags): Map ASE_LOONGSON_CAM to
	AFL_ASE_LOONGSON_CAM.
	(mips_cpu_info_table): Add ASE_LOONGSON_CAM for loongson3a.
	(md_show_usage): Add help for -mloongson-cam and
	-mno-loongson-cam.
	* doc/as.texi: Document -mloongson-cam, -mno-loongson-cam.
	* doc/c-mips.texi: Document -mloongson-cam, -mno-loongson-cam,
	.set loongson-cam and .set noloongson-cam.
	* testsuite/gas/mips/loongson-3a-2.d: Move cam test to ...
	* testsuite/gas/mips/loongson-cam.d: Here.  Add ISA/ASE
	flag verification.
	* testsuite/gas/mips/loongson-3a-2.s: Move cam test to ...
	* testsuite/gas/mips/loongson-cam.s: Here.
	* testsuite/gas/mips/loongson-3a-mmi.d: Add ASE flag.
	* testsuite/gas/mips/mips.exp: Run loongson-cam test.

include/
	* elf/mips.h (AFL_ASE_LOONGSON_CAM): New macro.
	(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_CAM.
	* opcode/mips.h (ASE_LOONGSON_CAM): New macro.

opcodes/
	* mips-dis.c (mips_arch_choices): Add CAM to loongson3a
	descriptors.
	(parse_mips_ase_option): Handle -M loongson-cam option.
	(print_mips_disassembler_options): Document -M loongson-cam.
	* mips-opc.c (LCAM): New macro.
	(mips_opcodes): Replace IL2F|IL3A marking with LCAM for CAM
	instructions.
2018-08-29 19:33:09 +08:00
H.J. Lu
90c745dc54 x86: Don't mask out the GNU_PROPERTY_X86_UINT32_VALID bit
Since only the GNU_PROPERTY_X86_UINT32_VALID bit may be set in data-only
relocatable objects which don't contain any instructions, linker
shouldn't mask out the GNU_PROPERTY_X86_UINT32_VALID bit when merging
GNU_PROPERTY_X86_XXX bits.  Otherwise, linker output doesn't contain
GNU_PROPERTY_X86_XXX property with any data-only relocatable inputs.
This patch keeps the GNU_PROPERTY_X86_UINT32_VALID bit and updates
readelf to print "<None>" if GNU_PROPERTY_X86_XXX property only has
the GNU_PROPERTY_X86_UINT32_VALID bit.

bfd/

	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Don't mask
	out the GNU_PROPERTY_X86_UINT32_VALID bit.

binutils/

	* readelf.c (decode_x86_isa): Print <None> if bitmask only
	contains the GNU_PROPERTY_X86_UINT32_VALID bit.
	(decode_x86_feature_1): Likewise.
	(decode_x86_feature_2): Likewise.
	(print_gnu_property_note): Don't mask out the
	GNU_PROPERTY_X86_UINT32_VALID bit.
	* testsuite/binutils-all/i386/pr21231b.d: Updated.
	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.

gas/

	* testsuite/gas/i386/i386.exp: Run property-1 and
	x86-64-property-1.
	* testsuite/gas/i386/property-1.d: New file.
	* testsuite/gas/i386/property-1.s: Likewise.
	* testsuite/gas/i386/x86-64-property-1.d: Likewise.

ld/

	* testsuite/ld-i386/i386.exp: Run property-x86-5.
	* testsuite/ld-i386/property-x86-5.d: New file.
	* testsuite/ld-x86-64/property-x86-5-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-5.d: Likewise.
	* testsuite/ld-x86-64/property-x86-5a.s: Likewise.
	* testsuite/ld-x86-64/property-x86-5b.s: Likewise.
	* testsuite/ld-x86-64/x86-64.exp: Run property-x86-5 and
	property-x86-5-x32.
2018-08-27 15:42:14 -07:00