llvm-project/llvm/test/MC/Mips
Simon Dardis 509da1a46d [mips] divide macro instruction cleanup.
Clean up the implementation of divide macro expansion by getting rid of a
FIXME regarding magic numbers and branch instructions. Match GAS' behaviour
for expansion of ddiv / div in the two and three operand cases. Add the two
operand alias for MIPSR6. Finally, optimize macro expansion cases where the
divisior is the $zero register.

Reviewers: slthakur

Differential Revision: https://reviews.llvm.org/D29887

llvm-svn: 294960
2017-02-13 16:06:48 +00:00
..
cnmips [mips] Range check simm10 2016-03-24 13:26:59 +00:00
dsp [mips] Range check uimm16 and fix several bugs this revealed. 2016-02-01 15:13:31 +00:00
dspr2 [mips][microMIPS][DSP] Implement PACKRL.PH, PICK.PH, PICK.QB, SHILO, SHILOV and WRDSP instructions 2015-12-18 08:59:37 +00:00
eva [mips][microMIPS] Fix offsets for LLE, LWE, SBE, SCE and SHE instructions 2016-04-29 08:36:54 +00:00
micromips [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
micromips-dsp [mips][microMIPS][DSP] Implement BALIGN, BITREV, BPOSGE32, CMP*, CMPGDU*, CMPGU* and CMPU* instructions 2016-05-17 09:32:58 +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 Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
micromips64r6 Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
mips1 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips2 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips3 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips4 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips5 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips32 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips32r2 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips32r3 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips32r5 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips32r6 [mips] seb, seh instruction aliases 2016-11-22 19:17:23 +00:00
mips64 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips64r2 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips64r3 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips64r5 [mips] Correct c.cond.fmt instruction definition. 2017-01-16 13:55:58 +00:00
mips64r6 [mips] seb, seh instruction aliases 2016-11-22 19:17:23 +00:00
msa [mips] Split mem_msa into range checked mem_simm10 and mem_simm10_lsl[123] 2016-03-31 14:12:01 +00:00
asciiz-directive-bad.s [mips] [IAS] Implement the .asciiz directive. 2015-04-21 11:50:52 +00:00
asciiz-directive.s [mips] [IAS] Implement the .asciiz directive. 2015-04-21 11:50:52 +00:00
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 [mips] Add support for branch-likely pseudo-instructions 2015-09-15 15:06:26 +00:00
cfi-advance-loc.s [MC/Dwarf] Encode DW_CFA_advance_loc in target endianess. 2015-06-17 15:14:35 +00:00
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 [mips] Make the test case more specific and provide OS component of a triple. NFC 2016-12-08 22:10:52 +00:00
directive-ent.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
do_switch1.s Don't pass relocation-model= to tests that don't need it. 2016-05-18 00:27:17 +00:00
do_switch2.s Don't pass relocation-model= to tests that don't need it. 2016-05-18 00:27:17 +00:00
do_switch3.s Don't pass relocation-model= to tests that don't need it. 2016-05-18 00:27:17 +00:00
double-expand.s [mips][ias] Move createCpRestoreMemOp to MipsTargetStreamer. NFC. 2016-04-29 16:16:49 +00:00
eh-frame.s Use CIE version 1 for .eh_frame. 2015-04-27 22:04:24 +00:00
elf-N64.s
elf-bigendian.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
elf-gprel-32-64.s
elf-relsym.s Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00
elf-tls.s Update tests to not be as dependent on section numbers. 2015-04-15 15:59:37 +00:00
elf_basic.s Use ELFOSABI_NONE instead of ELFOSABI_LINUX. 2015-09-24 20:57:24 +00:00
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_reginfo.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
elf_st_other.s [llvm-readobj] Decode st_other symbol's flags 2016-03-24 16:10:37 +00:00
end-directive.s [mips] Remove absolute size assertion for end directive 2017-02-03 15:48:53 +00:00
expansion-j-sym-pic.s Change how we handle section symbols on ELF. 2017-02-02 21:26:06 +00:00
expansion-jal-sym-pic.s Change how we handle section symbols on ELF. 2017-02-02 21:26:06 +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 Revert r265817 2016-04-08 18:15:37 +00:00
higher-highest-addressing.s [mips] Remove CPU-only triples from llvm-objdump commands. 2016-06-03 10:22:22 +00:00
hilo-addressing.s Revert r265817 2016-04-08 18:15:37 +00:00
init-order-bug.ll Don't pass a Reloc::Model to MC. 2016-05-18 11:58:50 +00:00
insn-directive.s [llvm-readobj] Decode st_other symbol's flags 2016-03-24 16:10:37 +00:00
instalias-imm-expanding.s [mips] Range check simm32 and fold MIPS16's imm32 into simm32. 2016-04-04 15:32:49 +00:00
instr-analysis.s Revert r265817 2016-04-08 18:15:37 +00:00
lit.local.cfg
llvm-mc-fixup-endianness.s
macro-abs.s [mips] Absolute value macro expansion 2016-01-29 16:18:34 +00:00
macro-bcc-imm-bad.s [mips][ias] Implement macro expansion when bcc has an immediate where a register belongs. 2015-10-12 14:24:05 +00:00
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] divide macro instruction cleanup. 2017-02-13 16:06:48 +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 [mips] Allowed dla instructions on 32-bit architectures. 2016-01-21 15:11:01 +00:00
macro-dla.s [mips] dla expansion without the at register 2017-02-06 12:43:46 +00:00
macro-dli.s [mips] [IAS] Add support for the DLA pseudo-instruction and fix problems with DLI 2015-08-17 10:11:55 +00:00
macro-la-bad.s [mips] [IAS] Add support for the DLA pseudo-instruction and fix problems with DLI 2015-08-17 10:11:55 +00:00
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.s Fix some broken CHECK lines. 2017-01-22 20:28:56 +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][microMIPS] Implement movep instruction 2015-02-10 16:36:20 +00:00
micromips-alias.s [llvm-readobj] Decode st_other symbol's flags 2016-03-24 16:10:37 +00:00
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-bad-branches.s [mips][microMIPS] Implement BEQZ16 and BNEZ16 instructions 2015-01-12 12:03:34 +00:00
micromips-branch-fixup.s [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
micromips-branch-instructions.s [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
micromips-control-instructions.s [mips][microMIPS] Implement PAUSE, RDHWR, RDPGPR, SDBBP, SSNOP, SYNC, SYNCI and WAIT instructions 2015-10-28 11:04:29 +00:00
micromips-diagnostic-fixup.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
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-expansions.s [mips] Use MipsMCExpr instead of MCSymbolRefExpr for all relocations. 2016-05-03 13:35:44 +00:00
micromips-fpu-instructions.s
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][micromips] Implement LD, LLD, LWU, SD, DSRL, DSRL32 and DSRLV instructions 2016-06-27 08:23:28 +00:00
micromips-jump-instructions.s [mips][microMIPS] Implement JALX instruction 2015-02-18 17:15:48 +00:00
micromips-jump26.s
micromips-label-test-sections.s [llvm-readobj] Decode st_other symbol's flags 2016-03-24 16:10:37 +00:00
micromips-label-test.s [llvm-readobj] Decode st_other symbol's flags 2016-03-24 16:10:37 +00:00
micromips-loadstore-instructions.s [mips][microMIPS] Implement PREFX, LHUE, LBE, LBUE, LHE, LWE, SBE, SHE and SWE instructions 2015-09-16 09:14:35 +00:00
micromips-loadstore-unaligned.s
micromips-movcond-instructions.s
micromips-multiply-instructions.s
micromips-pc16-fixup.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
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
mips-abi-bad.s [mips] [IAS] Add missing constraints and improve testing for the .module directive. 2015-03-06 12:15:12 +00:00
mips-alu-instructions.s [mips] Remap move as or. 2015-08-11 08:56:25 +00:00
mips-bad-branches.s
mips-control-instructions.s [mips] Range check uimm20 and fixed a bug this revealed. 2016-02-29 16:06:38 +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] Implemented the .hword directive. 2016-02-15 16:11:51 +00:00
mips-diagnostic-fixup.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
mips-expansions-bad.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
mips-expansions.s [mips] Add support for unaligned load/store macros. 2016-11-22 16:43:49 +00:00
mips-fpu-instructions.s [mips64] Emit correct addend for some PC-relative relocations 2015-06-23 13:54:42 +00:00
mips-hwr-register-names.s
mips-jump-delay-slots.s [mips] [IAS] Add support for the BNEZL and BEQZL pseudo-instructions. 2015-04-08 12:15:05 +00:00
mips-jump-instructions.s
mips-memory-instructions.s
mips-noat.s [mips] Improve support for the .set at/noat assembler directives. 2015-02-13 10:30:57 +00:00
mips-pc16-fixup.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
mips-pdr-bad.s
mips-pdr.s [mips] Removed the SHF_ALLOC flag and the SHT_REL flag from the .pdr section. 2016-02-17 11:15:16 +00:00
mips-reginfo-fp32.s
mips-reginfo-fp64.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
mips-register-names-invalid.s
mips-register-names-o32.s
mips64-alu-instructions.s [mips][ias] Range check uimm5 operands and fix several bugs this revealed. 2015-11-26 16:35:41 +00:00
mips64-expansions.s [mips] Make symbols an acceptable branch target when expanding compare-to-immediate-and-branch macros. 2016-02-29 11:24:49 +00:00
mips64-instructions.s
mips64-register-names-n32-n64.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
mips64-register-names-o32.s [mips] Change instruction s/daddiu/addiu/ since O32 prohibits the use of 64-bit GPRs. NFC 2016-12-08 22:10:48 +00:00
mips64eb-fixups.s
mips64extins.s [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +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] llvm-readobj can parse .MIPS.abiflags. No need to check the bytes. 2015-06-23 10:11:36 +00:00
mips_directives.s [mips] Use MipsMCExpr instead of MCSymbolRefExpr for all relocations. 2016-05-03 13:35:44 +00:00
mips_directives_bad.s
mips_gprel16.s [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +00:00
module-directive-bad.s [mips] [IAS] Emit .set macro/nomacro. 2015-05-14 13:42:10 +00:00
module-hardfloat.s [mips] [IAS] Add support for the .module softfloat/hardfloat directives. 2015-06-30 13:46:03 +00:00
module-softfloat.s [mips] [IAS] Add support for the .module softfloat/hardfloat directives. 2015-06-30 13:46:03 +00:00
multi-64bit-func.ll
nabi-regs.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
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 [mips] Add new format for dmtc2/dmfc2 for Octeon CPUs. 2015-05-28 16:23:16 +00:00
oddspreg.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +00:00
pr11877.s
r-mips-got-disp.s
reloc-directive-bad.s Implement .reloc (constant offset only) with support for R_MIPS_NONE and R_MIPS_32. 2015-11-12 13:33:00 +00:00
reloc-directive-negative.s [MC, COFF] Add .reloc support for WinCOFF 2016-01-19 23:05:27 +00:00
reloc-directive.s [mips][ias] N32/N64 must not sort the relocation table. 2016-12-05 12:55:19 +00:00
relocation-n64.s [mips] Use --check-prefixes where appropriate. NFC. 2016-06-24 12:23:17 +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][ias] Support .dtprel[d]word and .tprel[d]word directives 2016-08-22 16:18:42 +00:00
rotations32-bad.s [mips] Add tests for ROL and ROR macros expansion 2015-11-19 15:04:31 +00:00
rotations32.s [mips] Add tests for ROL and ROR macros expansion 2015-11-19 15:04:31 +00:00
rotations64.s [mips] Add tests for ROL and ROR macros expansion 2015-11-19 15:04:31 +00:00
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 [mips] [IAS] Improve warning for using AT with .set noat. 2015-04-27 14:05:04 +00:00
set-at-directive.s [mips] Improve support for the .set at/noat assembler directives. 2015-02-13 10:30:57 +00:00
set-at-noat-bad-syntax.s [mips] Improve support for the .set at/noat assembler directives. 2015-02-13 10:30:57 +00:00
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 [mips] Add backend support for Mips32r[35] and Mips64r[35]. 2015-02-18 16:24:50 +00:00
set-mips-directives.s [mips] Add backend support for Mips32r[35] and Mips64r[35]. 2015-02-18 16:24:50 +00:00
set-mips0-directive.s
set-mips16-directive.s
set-nodsp.s
set-nomacro-micromips.s [mips] [IAS] Enforce .set nomacro. 2015-05-14 14:51:32 +00:00
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 [mips] [IAS] Add support for the .set oddspreg/nooddspreg directives. 2015-06-30 09:36:50 +00:00
set-oddspreg-nooddspreg.s [mips] [IAS] Add support for the .set oddspreg/nooddspreg directives. 2015-06-30 09:36:50 +00:00
set-push-pop-directives-bad.s Fix Mips Parser error reporting 2016-05-05 14:15:46 +00:00
set-push-pop-directives.s Recommit "[mips] [IAS] Restore STI.FeatureBits in .set pop." (r239144). 2015-06-09 13:33:26 +00:00
set-softfloat-hardfloat-bad.s [mips] [IAS] Add support for the .set softfloat/hardfloat directives. 2015-06-02 09:48:04 +00:00
set-softfloat-hardfloat.s [mips] [IAS] Add support for the .set softfloat/hardfloat directives. 2015-06-02 09:48:04 +00:00
sext_64_32.ll [mips] Remove CPU-only triples from llvm-objdump commands. 2016-06-03 10:22:22 +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 [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
target-soft-float.s [mips][microMIPS] Implement LDC1, SDC1, LDC2, SDC2, LWC1, SWC1, LWC2 and SWC2 instructions and add CodeGen support 2016-07-11 07:41:56 +00:00
unaligned-nops.s
update-module-level-options.s [mips] [IAS] Make .module directives change AssemblerOptions->front(). 2015-06-30 12:41:33 +00:00
user-macro-argument-separation.s [MC] Fixed parsing of macro arguments where expressions with spaces are present. 2016-02-11 13:48:49 +00:00
xgot.s Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00