llvm-6502/test/MC/Mips
Toma Tabacu 71dc8ece4f [mips] Manually replace JAL pseudo-instructions with their JALR equivalent, instead of using InstAlias.
Summary:
This is needed by the .cprestore assembler directive.

This directive needs to be able to insert an LW instruction after every JALR replacement of a JAL pseudo-instruction
(and never after a JALR which has NOT been a result of a pseudo-instruction replacement).

The problem with using InstAlias for these is that after it replaces the pseudo-instruction, we can't find out if the resulting JALR instruction
was generated by an InstAlias or not, so we don't know whether or not to insert our LW instruction.

By replacing it manually, we know when the pseudo-instruction replacement happens and we can insert the LW instruction correctly.

Reviewers: dsanders

Reviewed By: dsanders

Subscribers: emaste, llvm-commits

Differential Revision: http://reviews.llvm.org/D5601

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227568 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-30 11:18:50 +00:00
..
mips1 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips2 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips3 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips4 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips5 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips32 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips32r2 [mips] Add synci instruction. 2014-11-27 17:28:10 +00:00
mips32r6 Recommit "[mips] Add names and tests for the hardware registers" 2014-11-11 10:31:31 +00:00
mips64 [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips64r2 [mips] Add synci instruction. 2014-11-27 17:28:10 +00:00
mips64r6 Recommit "[mips] Add names and tests for the hardware registers" 2014-11-11 10:31:31 +00:00
msa [mips] Add assembler support for .set msa/nomsa directive. 2014-08-07 12:03:36 +00:00
cfi.s [mips] Rewrite MipsAsmParser and MipsOperand. 2014-04-01 10:35:28 +00:00
cpload-bad.s [mips] Improve error/warning messages and testing for the .cpload assembler directive. 2014-11-06 10:02:45 +00:00
cpload.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
cpsetup-bad.s [mips] Remove the last usage of parseRegister from MipsAsmParser. 2014-06-18 13:08:59 +00:00
cpsetup.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
do_switch1.s Convert "llc -filetype=obj" test into llvm-mc tests. 2014-03-28 18:30:07 +00:00
do_switch2.s Convert "llc -filetype=obj" test into llvm-mc tests. 2014-03-28 18:30:07 +00:00
do_switch3.s Parse .gpdword and convert another llc -filetype=obj test. 2014-03-28 18:50:26 +00:00
eh-frame.s Emit DWARF3 call frame information when DWARF3+ debug info is requested 2014-06-19 15:39:33 +00:00
elf_basic.s
elf_eflags_abicalls.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_micromips.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_mips16.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_nan2008.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_nanlegacy.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_noreorder.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_pic0.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags_pic2.s [mips] Fix ELF e_flags related to -mabicalls and -mplt. 2014-07-17 09:52:56 +00:00
elf_eflags.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
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 Only mark functions as micromips. 2014-01-15 03:07:12 +00:00
elf-bigendian.ll
elf-gprel-32-64.s [mips] Emit all three relocation operations for each relocation entry on Mips64 big-endian systems. 2014-04-30 11:21:10 +00:00
elf-N64.s [mips] Emit all three relocation operations for each relocation entry on Mips64 big-endian systems. 2014-04-30 11:21:10 +00:00
elf-relsym.s Map ELf flags back to more specific section kinds. 2014-03-28 19:14:08 +00:00
elf-tls.s Convert another llc -filetype=obj test. 2014-03-28 19:19:28 +00:00
expr1.s
higher-highest-addressing.s [mips] Extend MipsMCExpr class to handle %higher(sym1 - sym2 + const) and 2014-04-03 10:37:45 +00:00
hilo-addressing.s Changed comment. 2014-02-07 11:16:02 +00:00
lit.local.cfg Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
llvm-mc-fixup-endianness.s [mips] Work around inconsistency in llvm-mc's placement of fixup markers 2014-05-23 13:35:24 +00:00
micromips-16-bit-instructions.s [mips][microMIPS] Implement LWGP instruction 2015-01-28 17:27:26 +00:00
micromips-alias.s Mark alias symbols as microMIPS if necessary. Differential Revision: http://llvm-reviews.chandlerc.com/D3080 2014-03-20 09:44:49 +00:00
micromips-alu-instructions.s [mips][microMIPS] Implement ADDIUPC instruction 2015-01-21 12:10:11 +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 CACHE, PREF, SSNOP, EHB and PAUSE instructions 2014-12-23 19:55:34 +00:00
micromips-diagnostic-fixup.s [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
micromips-el-fixup-data.s Fix some doc and comment typos 2014-04-09 14:47:27 +00:00
micromips-expansions.s
micromips-expressions.s
micromips-fpu-instructions.s [mips][microMIPS] Fix opcodes of MFHC1 and MTHC1 instructions. 2014-11-19 13:37:51 +00:00
micromips-func-addr.s [mips][microMIPS] Relocate with symbol for micromips symbols 2014-12-30 22:04:16 +00:00
micromips-invalid.s [mips][microMIPS] Implement ADDIUPC instruction 2015-01-21 12:10:11 +00:00
micromips-jump26.s
micromips-jump-instructions.s [mips] Manually replace JAL pseudo-instructions with their JALR equivalent, instead of using InstAlias. 2015-01-30 11:18:50 +00:00
micromips-label-test-sections.s [mips][microMIPS] Mark symbols as microMIPS if necessary 2014-11-05 16:35:20 +00:00
micromips-label-test.s [mips][microMIPS] Mark symbols as microMIPS if necessary 2014-11-05 16:35:20 +00:00
micromips-loadstore-instructions.s [mips][microMIPS] Implement SWM and LWM aliases 2015-01-28 21:52:27 +00:00
micromips-loadstore-unaligned.s
micromips-movcond-instructions.s
micromips-multiply-instructions.s
micromips-pc16-fixup.s [mips] Fix off by one issue when applying a fixup. 2013-12-17 17:10:00 +00:00
micromips-relocations.s Support for microMIPS TLS relocations. 2013-12-19 16:02:32 +00:00
micromips-shift-instructions.s
micromips-tailr.s
micromips-trap-instructions.s
mips64-alu-instructions.s Revert "[mips] Add names and tests for the hardware registers" 2014-11-04 22:15:05 +00:00
mips64-expansions.s [mips] Implementation of dli. 2014-06-19 15:08:04 +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 Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
mips64eb-fixups.s [mips] support FK_Data_2 and FK_Data_8 to fix big-endian debug data 2014-03-03 14:27:49 +00:00
mips64extins.ll
mips64shift.ll
mips_abi_flags_xx_set.s Re-commit: [mips] Correct section alignments and EntrySizes for .bss, .text, .data, .reginfo, .MIPS.options, and .MIPS.abiflags 2014-07-14 15:05:51 +00:00
mips_abi_flags_xx.s [mips] Correct .MIPS.abiflags for -mfpxx on MIPS32r6 2014-07-17 09:57:23 +00:00
mips_directives_bad.s [mips] Improve the error messages given by MipsAsmParser. 2014-09-16 15:00:52 +00:00
mips_directives.s [mips] Work around inconsistency in llvm-mc's placement of fixup markers 2014-05-23 13:35:24 +00:00
mips_gprel16.s [mips] Work around inconsistency in llvm-mc's placement of fixup markers 2014-05-23 13:35:24 +00:00
mips-abi-bad.s [mips] Add new error message and improve testing for parsing the .module directive. 2015-01-23 10:40:19 +00:00
mips-alu-instructions.s Revert "[mips] Add names and tests for the hardware registers" 2014-11-04 22:15:05 +00:00
mips-bad-branches.s [mips] Add checks for alignment and maximum displacements for most of the 2013-12-13 11:11:02 +00:00
mips-control-instructions.s TableGen: use PrintMethods to print more aliases 2014-05-12 18:04:06 +00:00
mips-coprocessor-encodings.s
mips-data-directives.s Mips.abiflags is a new implicitly generated section that will be present on all new modules. The section contains a versioned data structure which represents essentially information to allow a program loader to determine the requirements of the application. This patch implements mips.abiflags section and provides test cases for it. 2014-07-08 08:59:22 +00:00
mips-diagnostic-fixup.s [mips] Add checks for alignment and maximum displacements for most of the 2013-12-13 11:11:02 +00:00
mips-dsp-instructions.s
mips-expansions-bad.s [mips] Improve the error messages given by MipsAsmParser. 2014-09-16 15:00:52 +00:00
mips-expansions.s [mips] Add assembler support for the "la $reg,symbol" pseudo-instruction. 2014-08-14 10:29:17 +00:00
mips-fpu-instructions.s
mips-hwr-register-names.s [mips] Add hardware register name "hwr_ulr" ($29) 2014-11-11 11:22:39 +00:00
mips-jump-delay-slots.s [mips] Add support for COP1's Branch-On-Cond-Likely instructions 2014-10-17 14:08:28 +00:00
mips-jump-instructions.s This patch implements jalx instruction for Mips architecture.This instruction executes a procedure call within the current 256 MB-aligned region and change the ISA Mode from MIPS32 to microMIPS32 or MIPS16e. Usage samples for assembler and dissasembler are provided as well. 2014-03-03 13:12:59 +00:00
mips-memory-instructions.s
mips-noat.s [mips] Improve the error messages given by MipsAsmParser. 2014-09-16 15:00:52 +00:00
mips-pc16-fixup.s [mips] Fix off by one issue when applying a fixup. 2013-12-17 17:10:00 +00:00
mips-pdr-bad.s Re-commit: [mips] Implement .ent, .end, .frame, .mask and .fmask. 2014-08-13 10:07:34 +00:00
mips-pdr.s Re-commit: [mips] Implement .ent, .end, .frame, .mask and .fmask. 2014-08-13 10:07:34 +00:00
mips-reginfo-fp32.s [mips] Add MipsOptionRecord abstraction and use it to implement .reginfo/.MIPS.options 2014-07-21 13:30:55 +00:00
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] Rewrite MipsAsmParser and MipsOperand. 2014-04-01 10:35:28 +00:00
mips-register-names-o32.s [mips] The register names depend on the ABI being N32/N64 rather than the arch being mips64 2014-03-26 11:39:07 +00:00
mips-relocations.s
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 Fix Mips nacl-mask test for new bundle-aligned label behavior 2014-10-22 23:32:00 +00:00
nooddspreg-cmdarg.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
nooddspreg-error.s [mips] Add support for -modd-spreg/-mno-odd-spreg 2014-07-10 13:38:23 +00:00
nooddspreg.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
octeon-instructions.s [mips] Add range checks and transformation to octeon instructions in AsmParser. 2015-01-27 19:11:28 +00:00
oddspreg.s Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
pr11877.s
r-mips-got-disp.s Convert llc -filetype=obj test. 2014-03-28 19:41:33 +00:00
set-arch.s [mips] Add assembler support for .set arch=x directive. 2014-08-19 14:22:52 +00:00
set-at-directive-explicit-at.s [mips] Improve the error messages given by MipsAsmParser. 2014-09-16 15:00:52 +00:00
set-at-directive.s [mips] Correct testcase for .set at=$reg and emit the new warnings for numeric registers too. 2014-03-25 11:16:03 +00:00
set-mips0-directive.s [mips] Add assembler support for .set mips0 directive. 2014-09-09 12:52:14 +00:00
set-mips16-directive.s [mips] Improve support for the .set mips16/nomips16 assembler directives. 2014-11-04 17:18:07 +00:00
set-mips-directives-bad.s [mips] Add assembler support for '.set mipsX'. 2014-08-04 12:20:00 +00:00
set-mips-directives.s [mips] Add assembler support for '.set mipsX'. 2014-08-04 12:20:00 +00:00
set-nodsp.s [mips] Add assembler support for the .set nodsp directive. 2014-09-17 09:01:54 +00:00
set-push-pop-directives-bad.s [mips] Add assembler support for .set push/pop directive. 2014-09-09 10:15:38 +00:00
set-push-pop-directives.s [mips] Add assembler support for .set push/pop directive. 2014-09-09 10:15:38 +00:00
sext_64_32.ll
sym-expr.s [mips] Extend ParseJumpTarget to support the full symbol expression syntax. 2014-04-01 10:41:48 +00:00
sym-offset.ll
unaligned-nops.s Support padding unaligned data in .text. 2014-10-02 13:41:42 +00:00
xgot.s Don't relocate with sections if there might be a paired relocation. 2014-03-31 19:00:23 +00:00