llvm-project/llvm/test/MC/Mips
Simon Atanasyan b524459288 [mips] Replace custom parsing logic for data directives by the `addAliasForDirective`
The target independent AsmParser doesn't recognise .hword, .word, .dword
which are required for Mips. Currently MipsAsmParser recognises these
through dispatch to MipsAsmParser::parseDataDirective. This contains
equivalent logic to AsmParser::parseDirectiveValue. This patch allows
reuse of AsmParser::parseDirectiveValue by making use of
addAliasForDirective to support .hword, .word and .dword.

Original patch provided by Alex Bradbury at D47001 was modified to fix
handling of microMIPS symbols. The `AsmParser::parseDirectiveValue`
calls either `EmitIntValue` or `EmitValue`. In this patch we override
`EmitIntValue` in the `MipsELFStreamer` to clear a pending set of
microMIPS symbols.

Differential revision: https://reviews.llvm.org/D49539

llvm-svn: 337893
2018-07-25 07:07:43 +00:00
..
cnmips [mips] Correct the predicates of the load/store (double)word for coprocessor 3. 2018-04-12 14:41:38 +00:00
crc [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
dsp [mips][dsp] Modify repl.ph to accept signed immediate values 2017-06-07 14:48:46 +00:00
dspr2
eva [mips] Show an error if register number is out of range 2018-04-24 16:14:00 +00:00
ginv [mips] Add support for Global INValidate ASE 2018-05-17 16:30:32 +00:00
micromips [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
micromips-dsp [AArch64][SVE] Re-submit patch series for ZIP1/ZIP2 2017-12-20 11:02:42 +00:00
micromips-dspr2 [mips][microMIPS][DSP] Implement BALIGN, BITREV, BPOSGE32, CMP*, CMPGDU*, CMPGU* and CMPU* instructions 2016-05-17 09:32:58 +00:00
micromips-dspr3 [mips][microMIPS] Implement APPEND, BPOSGE32C, MODSUB, MULSA.W.PH and MULSAQ_S.W.PH instructions 2016-05-13 11:32:53 +00:00
micromips32r6 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips1 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips2 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips3 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips4 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips5 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips16 [mips] Guard 'nop' properly and add mips16's nop instruction 2018-06-01 10:46:00 +00:00
mips32 [mips] Correct predicates for loads, bit manipulation instructions and some pseudos 2018-06-20 19:59:58 +00:00
mips32r2 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips32r3 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips32r5 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips32r6 [mips] Correct the predicates of the cache and pref instructions 2018-05-22 10:55:05 +00:00
mips64 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips64r2 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips64r3 [mips] Fix the predicates of round, ceiling, floor and trunc. 2018-05-14 16:26:50 +00:00
mips64r5 [mips] Support 64-bit offsets for lb/sb/ld/sd/lld ... instructions 2018-06-01 16:37:53 +00:00
mips64r6 [mips] Support 64-bit offsets for lb/sb/ld/sd/lld ... instructions 2018-06-01 16:37:53 +00:00
msa [AArch64][SVE] Re-submit patch series for ZIP1/ZIP2 2017-12-20 11:02:42 +00:00
mt [mips][mt] Add missing test cases from r318207 2017-11-16 10:50:44 +00:00
virt [mips] Add support for Virtualization ASE 2018-04-27 09:12:08 +00:00
addend.s Add a test for relocation addend on mips. 2017-07-05 19:31:07 +00:00
asciiz-directive-bad.s
asciiz-directive.s
bopt-directive.s [mips] Parse the 'bopt' and 'nobopt' directives in IAS. 2017-02-01 18:50:24 +00:00
branch-pseudos-bad.s [mips] Expansion of BEQL and BNEL with immediate operands 2017-02-02 16:13:49 +00:00
branch-pseudos.s
cfi-advance-loc.s
cfi.s
cpload-bad.s
cpload.s [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +00:00
cprestore-bad.s Don't pass relocation-model= to tests that don't need it. 2016-05-18 00:27:17 +00:00
cprestore-noreorder-noat.s [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +00:00
cprestore-noreorder.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
cprestore-reorder.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
cprestore-warning-unused.s Don't pass a Reloc::Model to MC. 2016-05-18 11:58:50 +00:00
cpsetup-bad.s [MC] Fix Error Location for ParseIdentifier 2016-10-12 13:58:07 +00:00
cpsetup.s Use .set instead of = when printing assignment in assembly output 2018-03-27 16:44:41 +00:00
directive-ent.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
do_switch1.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
do_switch2.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
do_switch3.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
double-expand.s [mips][ias] Move createCpRestoreMemOp to MipsTargetStreamer. NFC. 2016-04-29 16:16:49 +00:00
eh-frame.s [mips] Use llvm-dwarfdump to simplify the test. NFC 2017-09-26 17:02:35 +00:00
elf-N32.s [mips] Implement generation of relocations "chains" used by N32 ABI 2017-09-21 14:04:53 +00:00
elf-N64.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
elf-bigendian.ll
elf-debug-section.s [llvm-readobj] Support SHT_MIPS_DWARF section type flag 2017-03-10 08:22:25 +00:00
elf-gprel-32-64.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
elf-relsym.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
elf-tls.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
elf_basic.s
elf_eflags.s [mips] Recommit: "N64 static relocation model support" 2017-01-27 11:36:52 +00:00
elf_eflags_abicalls.s
elf_eflags_micromips.s [mips][ias] EF_MIPS_MICROMIPS should iff microMIPS code was emitted. 2016-05-16 09:10:13 +00:00
elf_eflags_micromips2.s [mips][ias] EF_MIPS_MICROMIPS should iff microMIPS code was emitted. 2016-05-16 09:10:13 +00:00
elf_eflags_mips16.s
elf_eflags_nan2008.s
elf_eflags_nanlegacy.s
elf_eflags_noreorder.s
elf_eflags_pic0.s
elf_eflags_pic2.s
elf_header.s [mips] Fix relocation record format and ELF header for N32 ABI 2017-09-21 10:44:26 +00:00
elf_reginfo.s
elf_st_other.s
end-directive.s [mips] Remove absolute size assertion for end directive 2017-02-03 15:48:53 +00:00
expansion-j-sym-pic.s [mips] Mark microMIPS64 as being unsupported. 2018-06-19 16:05:44 +00:00
expansion-jal-sym-pic.s [mips] Mark microMIPS64 as being unsupported. 2018-06-19 16:05:44 +00:00
expr1.s Re-commit r277988: [mips][ias] Fix all the hacks related to MIPS-specific unary operators (%hi/%lo/%gp_rel/etc.). 2016-08-08 11:50:25 +00:00
got-rel-expr.s [mips][ias] R_MIPS_(GOT|HI|LO|PC)16 and R_MIPS_GPREL32 do not need symbols. 2016-05-09 10:21:14 +00:00
hex-immediates.s
higher-highest-addressing.s [mips] Remove CPU-only triples from llvm-objdump commands. 2016-06-03 10:22:22 +00:00
hilo-addressing.s
init-order-bug.ll Don't pass a Reloc::Model to MC. 2016-05-18 11:58:50 +00:00
insn-directive.s
instalias-imm-expanding.s [mips] Guard some macro expansions properly 2018-04-19 09:45:04 +00:00
instr-analysis.s
j-macro-insn.s [mips] Correct microMIP's jump and add unconditional branch pseudo 2017-11-09 16:02:18 +00:00
lit.local.cfg
llvm-mc-fixup-endianness.s
macro-abs.s
macro-aliases-invalid-wrong-error.s [mips] Partially fix PR34391 2017-10-10 13:34:45 +00:00
macro-aliases.s [mips] Partially fix PR34391 2017-10-10 13:34:45 +00:00
macro-bcc-imm-bad.s
macro-bcc-imm.s [mips] Expansion of BEQL and BNEL with immediate operands 2017-02-02 16:13:49 +00:00
macro-ddiv-bad.s [mips] Addition of a third operand to the instructions [d]div, [d]divu 2016-05-16 08:57:59 +00:00
macro-ddiv.s [mips] Addition of the [d]rem and [d]remu instructions 2018-07-09 13:06:44 +00:00
macro-ddivu-bad.s [mips] Addition of a third operand to the instructions [d]div, [d]divu 2016-05-16 08:57:59 +00:00
macro-ddivu.s [mips] divide macro instruction cleanup. 2017-02-13 16:06:48 +00:00
macro-div-bad.s [mips] divide macro instruction cleanup. 2017-02-13 16:06:48 +00:00
macro-div.s [mips] divide macro instruction cleanup. 2017-02-13 16:06:48 +00:00
macro-divu-bad.s [mips] divide macro instruction cleanup. 2017-02-13 16:06:48 +00:00
macro-divu.s [mips] divide macro instruction cleanup. 2017-02-13 16:06:48 +00:00
macro-dla-32bit.s
macro-dla-bad.s [MIPS] Handle PIC load address macro instructions in N64. 2017-06-30 15:44:27 +00:00
macro-dla-pic.s [MIPS] Handle PIC load address macro instructions in N64. 2017-06-30 15:44:27 +00:00
macro-dla.s [mips] dla expansion without the at register 2017-02-06 12:43:46 +00:00
macro-dli.s
macro-drem.s [mips] Addition of the [d]rem and [d]remu instructions 2018-07-09 13:06:44 +00:00
macro-dremu.s [mips] Addition of the [d]rem and [d]remu instructions 2018-07-09 13:06:44 +00:00
macro-la-bad.s
macro-la-pic.s [mips] Implement 'la' macro in PIC mode for O32. 2016-06-03 09:53:06 +00:00
macro-la.s [mips] Correct label prefixes for N32 and N64. 2016-07-19 10:49:03 +00:00
macro-ld-sd.s llvm/test/MC/Mips/macro-ld-sd.s: Sweep a spurious character \xA0 in the test file. 2016-10-19 13:41:12 +00:00
macro-li-bad.s [mips][ias] fix li macro when values are negated with ~ 2016-10-05 18:26:19 +00:00
macro-li.d.s [mips] Expansion of LI.S and LI.D 2017-05-30 09:33:43 +00:00
macro-li.s Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
macro-li.s.s [mips] Expansion of LI.S and LI.D 2017-05-30 09:33:43 +00:00
macro-rem.s [mips] Addition of the [d]rem and [d]remu instructions 2018-07-09 13:06:44 +00:00
macro-remu.s [mips] Addition of the [d]rem and [d]remu instructions 2018-07-09 13:06:44 +00:00
macro-seq.s [mips] seq macro support 2016-11-21 20:30:41 +00:00
memory-offsets.s [mips][ias] Handle more complicated expressions for memory operands 2016-10-18 15:17:17 +00:00
micromips-16-bit-instructions.s [mips] Correct the predicates for a number of instructions. 2018-05-29 09:56:19 +00:00
micromips-alias.s
micromips-alu-instructions.s [mips][microMIPS] Add CodeGen support for AND*, OR16, OR*, XOR*, NOT16 and NOR instructions 2016-06-15 07:46:24 +00:00
micromips-ase-directive.s [mips] Set microMIPS ASE flag 2017-11-24 14:00:47 +00:00
micromips-bad-branches.s
micromips-branch-fixup.s
micromips-branch-instructions.s
micromips-control-instructions.s [mips] Correct the definitions of some control instructions 2018-04-26 16:06:34 +00:00
micromips-diagnostic-fixup.s
micromips-el-fixup-data.s [mips][microMIPS] Implement BLTZC, BLEZC, BGEZC and BGTZC instructions, fix disassembly and add operand checking to existing B<cond>C implementations 2016-08-22 12:17:59 +00:00
micromips-eva.s [mips] Fix the definitions of the EVA instructions 2018-03-13 14:39:44 +00:00
micromips-expansions.s [mips] Accept 32-bit offsets for lh and lhu commands 2018-05-10 16:01:18 +00:00
micromips-fpu-instructions.s [mips] Add disassembly support for comparison instructions 2018-05-15 11:18:24 +00:00
micromips-fpu64-instructions.s [mips] Add missing test case from r332227 2018-05-14 13:18:51 +00:00
micromips-func-addr.s [LLVM] Remove unwanted --check-prefix=CHECK from unit tests. NFC. 2016-04-19 23:51:52 +00:00
micromips-invalid.s [mips] Show an error if register number is out of range 2018-04-24 16:14:00 +00:00
micromips-jump-instructions.s
micromips-jump26.s
micromips-label-test-sections.s
micromips-label-test.s [mips] Replace custom parsing logic for data directives by the `addAliasForDirective` 2018-07-25 07:07:43 +00:00
micromips-loadstore-instructions.s [mips] Mark various memory instructions as being in microMIPS (NFC) 2018-05-08 10:16:21 +00:00
micromips-loadstore-unaligned.s
micromips-movcond-instructions.s [mips] Mark select instructions correctly 2018-05-15 16:05:04 +00:00
micromips-multiply-instructions.s
micromips-neg-offset.s [mips] Guard all short instructions correctly. 2018-05-31 12:47:01 +00:00
micromips-pc16-fixup.s
micromips-relocations.s [mips] Use MipsMCExpr instead of MCSymbolRefExpr for all relocations. 2016-05-03 13:35:44 +00:00
micromips-shift-instructions.s [mips][microMIPS] Add CodeGen support for SLL16, SRL16, SLL, SLLV, SRA, SRAV, SRL and SRLV instructions 2016-04-27 11:02:23 +00:00
micromips-tailr.s
micromips-trap-instructions.s
micromips32r6-eva.s [mips] Fix the definitions of the EVA instructions 2018-03-13 14:39:44 +00:00
micromips64-unsupported.s [mips] Mark microMIPS64 as being unsupported. 2018-06-19 16:05:44 +00:00
micromips64r6-unsupported.s [mips] Removal of microMIPS64R6 2017-12-11 11:21:40 +00:00
mips-abi-bad.s
mips-alu-instructions.s
mips-bad-branches.s
mips-control-instructions.s [mips] Correct the definitions of some control instructions 2018-04-26 16:06:34 +00:00
mips-cop0-reginfo.s [LLVM] Remove unwanted --check-prefix=CHECK from unit tests. NFC. 2016-04-19 23:51:52 +00:00
mips-coprocessor-encodings.s
mips-data-directives.s
mips-diagnostic-fixup.s
mips-expansions-bad.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
mips-expansions.s [mips] Accept 32-bit offsets for lh and lhu commands 2018-05-10 16:01:18 +00:00
mips-fpu-instructions.s [mips] Correct the definition of cvt.d.w 2018-02-20 15:55:17 +00:00
mips-hwr-register-names.s
mips-jump-delay-slots.s [mips] Remove codegen support for branch likely instructions. 2017-09-28 15:24:07 +00:00
mips-jump-instructions.s
mips-memory-instructions.s
mips-noat.s
mips-pc16-fixup.s
mips-pdr-bad.s
mips-pdr.s
mips-rdata.s [mips] Implement the ".rdata" MIPS assembly directive. 2017-06-22 10:41:51 +00:00
mips-reginfo-fp32.s
mips-reginfo-fp64.s
mips-register-names-invalid.s [mips] Show an error if register number is out of range 2018-04-24 16:14:00 +00:00
mips-register-names-o32.s [mips] Allow $AT to be used as a register name 2017-06-22 15:24:16 +00:00
mips64-alu-instructions.s
mips64-expansions.s [mips] Support 64-bit offsets for lb/sb/ld/sd/lld ... instructions 2018-06-01 16:37:53 +00:00
mips64-instalias-imm-expanding.s [mips] Fix 64bit slt/sltu/nor with immediates 2017-02-28 15:55:23 +00:00
mips64-instructions.s
mips64-register-names-n32-n64.s [mips] Allow $AT to be used as a register name 2017-06-22 15:24:16 +00:00
mips64-register-names-o32.s [mips] Allow $AT to be used as a register name 2017-06-22 15:24:16 +00:00
mips64eb-fixups.s
mips64extins.s [mips] Removal of microMIPS64R6 2017-12-11 11:21:40 +00:00
mips64shift.ll [mips] Remove CPU-only triples from llvm-objdump commands. 2016-06-03 10:22:22 +00:00
mips_abi_flags_xx.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
mips_abi_flags_xx_set.s
mips_directives.s [mips] Process numeric register name in the .set assignment directive 2018-05-29 15:58:06 +00:00
mips_directives_bad.s [mips] Stop parsing a .set assignment if the first argument is not an identifier 2018-05-29 09:51:22 +00:00
mips_gprel16.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
module-directive-bad.s [mips] implement .set dspr2 directive 2017-10-05 17:40:32 +00:00
module-hardfloat.s
module-softfloat.s
mul-macro-variants.s [mips] Add test for mul macro variants 2017-02-20 10:53:03 +00:00
multi-64bit-func.ll
nabi-regs.s
nacl-mask.s [mips] Remove CPU-only triples from llvm-objdump commands. 2016-06-03 10:22:22 +00:00
nooddspreg-cmdarg.s [mips] Don't derive the default ABI from the CPU in the backend. 2016-06-23 12:42:53 +00:00
nooddspreg-error.s
nooddspreg.s [mips] Don't derive the default ABI from the CPU in the backend. 2016-06-23 12:42:53 +00:00
octeon-instructions.s
oddspreg.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
pr11877.s
r-mips-got-disp.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
reloc-directive-bad.s
reloc-directive-negative.s
reloc-directive.s [mips] Extend list of relocations supported by the `.reloc` directive 2018-06-01 16:37:42 +00:00
relocation-n64.s [mips] Emit R_MICROMIPS_GPREL16/R_MICROMIPS_SUB/R_MICROMIPS_LO16 / HI16 relocations 2018-05-29 11:33:54 +00:00
relocation-xfail.s [mips][ias] Work around yet another incorrect microMIPS relocation evaluation exposed by r268900. 2016-05-13 12:07:14 +00:00
relocation.s [mips] Emit R_MICROMIPS_HIGHER / R_MICROMIPS_HIGHEST relocations 2018-05-29 10:27:44 +00:00
rotations32-bad.s
rotations32.s
rotations64.s
section-size.s [mips][ias] Only round section sizes when explicitly requested. 2016-05-04 13:21:06 +00:00
set-arch.s [mips] add assembler support for .set arch=octeon 2016-04-12 15:28:16 +00:00
set-at-directive-explicit-at.s
set-at-directive.s
set-at-noat-bad-syntax.s
set-defined-symbol.s [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +00:00
set-mips-directives-bad.s
set-mips-directives.s
set-mips0-directive.s
set-mips16-directive.s
set-nodsp.s [mips] implement .set dspr2 directive 2017-10-05 17:40:32 +00:00
set-nomacro-micromips.s
set-nomacro.s [mips] Expansion of BEQL and BNEL with immediate operands 2017-02-02 16:13:49 +00:00
set-oddspreg-nooddspreg-error.s
set-oddspreg-nooddspreg.s
set-push-pop-directives-bad.s Fix Mips Parser error reporting 2016-05-05 14:15:46 +00:00
set-push-pop-directives.s
set-softfloat-hardfloat-bad.s
set-softfloat-hardfloat.s
sext_64_32.ll [Mips] Add support to match more patterns for DEXT and CINS 2017-03-15 13:10:08 +00:00
sort-relocation-table.s [mips][ias] R_MIPS_(GOT|HI|LO|PC)16 and R_MIPS_GPREL32 do not need symbols. 2016-05-09 10:21:14 +00:00
sym-expr.s
sym-offset.ll
target-soft-float.s [AArch64][SVE] Re-submit patch series for ZIP1/ZIP2 2017-12-20 11:02:42 +00:00
tls-symbols.s [mips] Fix PR35140 2017-11-06 10:50:04 +00:00
unaligned-nops.s
unsupported-relocation.s [Mips] Handle one byte unsupported relocations 2018-01-11 10:07:47 +00:00
update-module-level-options.s
user-macro-argument-separation.s
xgot.s [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00