llvm-6502/test/CodeGen/Mips
Reed Kotler 198bb22754 First stage of call lowering for Mips fast-isel
Summary:
This has most of what is needed for mips fast-isel call lowering for O32.
What is missing I will add on the next patch because this patch is already too large.
It should not be doing anything wrong but it will punt on some cases that it is basically
capable of doing.

The mechanism is there for parameters to be passed on the stack but I have not enabled it because it serves as a way for now to prevent some of the strange cases of O32 register passing that I have not fully checked yet and have some issues.

The Mips O32 abi rules are very complicated as far how data is passed in floating and integer registers.

However there is a way to think about this all very simply and this implementation reflects that.

Basically, the ABI rules are written as if everything is passed on the stack and aligned as such.
Once that is conceptually done, it is nearly trivial to reassign those locations to registers and
then all the complexity disappears.

So I have told tablegen that all the data is passed on the stack and during the lowering I fix
this by assigning to registers as per the ABI doc.

This has been my approach and you can line up what I did with the ABI document and see 1 to 1 what
is going on.



Test Plan: callabi.ll

Reviewers: dsanders

Reviewed By: dsanders

Subscribers: jholewinski, echristo, ahatanak, llvm-commits, rfuhler

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221948 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-13 23:37:45 +00:00
..
cconv [mips] Fix sret arguments for N32/N64 which were accidentally broken in r221534. 2014-11-10 15:57:53 +00:00
Fast-ISel First stage of call lowering for Mips fast-isel 2014-11-13 23:37:45 +00:00
llvm-ir [mips] Add preliminary support for the MIPS II target. 2014-11-11 11:43:55 +00:00
mips32r6 [mips][mips64r6] Add experimental support for MIPS32r6 and MIPS64r6 2014-05-09 09:46:21 +00:00
mips64r6 [mips][mips64r6] Add experimental support for MIPS32r6 and MIPS64r6 2014-05-09 09:46:21 +00:00
msa Fix fmul combines with constant splat vectors 2014-08-16 10:14:19 +00:00
2008-06-05-Carry.ll
2008-07-03-SRet.ll
2008-07-06-fadd64.ll
2008-07-07-Float2Int.ll
2008-07-07-FPExtend.ll
2008-07-07-IntDoubleConvertions.ll
2008-07-15-InternalConstant.ll
2008-07-15-SmallSection.ll
2008-07-16-SignExtInReg.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
2008-07-22-Cstpool.ll
2008-07-23-fpcmp.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2008-07-29-icmp.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2008-07-31-fcopysign.ll
2008-08-01-AsmInline.ll [mips][mips64r6] Improve tests affected by the changes to multiplies and divides 2014-06-11 15:48:00 +00:00
2008-08-03-fabs64.ll
2008-08-03-ReturnDouble.ll
2008-08-04-Bitconvert.ll
2008-08-06-Alloca.ll
2008-08-07-CC.ll
2008-08-07-FPRound.ll
2008-08-08-bswap.ll
2008-08-08-ctlz.ll
2008-10-13-LegalizerBug.ll
2008-11-10-xint_to_fp.ll
2009-11-16-CstPoolLoad.ll [mips] Make it impossible to have UnknownABI in CodeGen and Integrated Assembler. 2014-02-20 14:58:19 +00:00
2010-07-20-Switch.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
2010-11-09-CountLeading.ll
2010-11-09-Mul.ll
2011-05-26-BranchKillsVreg.ll
2012-12-12-ExpandMemcpy.ll Fix a logic bug in inline expansion of memcpy / memset with an overlapping 2012-12-12 20:43:23 +00:00
2013-11-18-fp64-const0.ll [mips] Use MTHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 2014-06-12 11:55:58 +00:00
abicalls.ll [mips] Invert the abicalls feature bit to be noabicalls so that it's possible for -mno-abicalls to take effect. 2014-08-08 15:47:17 +00:00
abiflags32.ll [mips] Do not emit '.module fp=...' unless we really need to. 2014-07-21 15:25:24 +00:00
abiflags-xx.ll [mips] Expand BuildPairF64 to a spill and reload when the O32 FPXX ABI is 2014-07-14 09:40:29 +00:00
addc.ll
addi.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
addressing-mode.ll Initial implementation of MipsTargetLowering::isLegalAddressingMode. 2012-11-17 00:25:41 +00:00
align16.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
alloca16.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
alloca.ll TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
analyzebranch.ll [mips][mips64r6] Correct cond names in the cmp.cond.[ds] instructions 2014-07-09 10:40:20 +00:00
and1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
asm-large-immediate.ll
atomic.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
atomicops.ll IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
beqzc1.ll Make all the conditional Mips 16 branches get initially set for the 2013-11-15 02:21:52 +00:00
beqzc.ll Make all the conditional Mips 16 branches get initially set for the 2013-11-15 02:21:52 +00:00
biggot.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
blez_bgez.ll [mips] Make mips64 the default CPU for the mips64 architecture 2014-02-20 13:13:33 +00:00
blockaddr.ll [mips] Make it impossible to have UnknownABI in CodeGen and Integrated Assembler. 2014-02-20 14:58:19 +00:00
br-jmp.ll Expand pseudos/macros for Selt. This is the last of the complex 2013-02-23 03:09:56 +00:00
brconeq.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconeqk.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconeqz.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconge.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brcongt.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconle.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconlt.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconne.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconnek.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brconnez.ll Add conditional branch instructions and their patterns. 2012-10-17 22:29:54 +00:00
brdelayslot.ll [mips] Make sure loads from lazy-binding entries do not get CSE'd or hoisted out 2013-09-28 00:12:32 +00:00
brind.ll Implement brind operator for mips16. 2012-10-28 23:08:07 +00:00
brsize3.ll Take care of long short branch immediate instructions for mips16 in 2013-11-13 23:52:18 +00:00
brsize3a.ll Take care of long short branch immediate instructions for mips16 in 2013-11-13 23:52:18 +00:00
bswap.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
buildpairextractelementf64.ll [mips] Use MFHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 moves 2014-07-14 12:41:31 +00:00
cache-intrinsic.ll Add @llvm.clear_cache builtin 2014-03-26 12:52:28 +00:00
call-optimization.ll [mips] Fix test case. 2013-12-07 02:48:29 +00:00
cfi_offset.ll [mips] Emit two CFI offset directives per double precision SDC1/LDC1 2014-07-10 22:23:30 +00:00
check-noat.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
ci2.ll Fix a funny bug I introduced during conversion of ARM constant islands to Mips. 2013-11-24 02:53:09 +00:00
cmov.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
cmplarge.ll TBAA: remove !tbaa from testing cases when they are not needed. 2013-09-30 18:17:35 +00:00
const1.ll Make first substantial checkin of my port of ARM constant islands code to Mips. 2013-10-27 21:57:36 +00:00
const4a.ll Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
const6.ll Update older test cases for latest patch. 2013-11-24 03:37:56 +00:00
const6a.ll Adjust offsets for max load instruction offsets. This is more pessimistic 2014-01-16 00:47:46 +00:00
const-mult.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
constantfp0.ll
countleading.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
cprestore.ll
ctlz-v.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
ctlz.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
cttz-v.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
DbgValueOtherTargets.test Remove unnecessary leading comment characters in lit-only file 2013-03-18 22:08:16 +00:00
disable-tail-merge.ll [mips] Test case for r192124. 2013-10-07 21:32:57 +00:00
div_rem.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
div.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
divrem.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
divu_remu.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
divu.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
double2int.ll
dsp-patterns-cmp-vselect.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
dsp-patterns.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
dsp-r1.ll [mips][mips64r6] madd/maddu/msub/msubu are not available on MIPS32r6/MIPS64r6 2014-06-12 10:54:16 +00:00
dsp-r2.ll MIPS DSP: add operands to make sure instruction strings are being matched. 2012-09-28 21:23:16 +00:00
dsp-vec-load-store.ll [mips] Expand vector truncating stores and extending loads. 2013-08-02 19:23:33 +00:00
eh-dwarf-cfa.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
eh-return32.ll [mips][mips64r6] Use JALR for returns instead of JR (which is not available on MIPS32r6/MIPS64r6) 2014-07-09 10:16:07 +00:00
eh-return64.ll [mips][mips64r6] Use JALR for returns instead of JR (which is not available on MIPS32r6/MIPS64r6) 2014-07-09 10:16:07 +00:00
eh.ll TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
ehframe-indirect.ll [mips64] Fix MIPS64 exception personality encoding 2014-11-05 22:42:31 +00:00
elf_eflags.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
emit-big-cst.ll Teach AsmPrinter how to print odd constants. 2013-06-07 18:36:03 +00:00
ex2.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
extins.ll [mips] Do not generate INS/EXT nodes if target does not have support for 2013-10-09 23:36:17 +00:00
f16abs.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fabs.ll Re-commit: [mips] abs.[ds], and neg.[ds] should be allowed regardless of -enable-no-nans-fp-math 2014-04-09 09:56:43 +00:00
fastcc.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
fcmp.ll Make it possible for ints/floats to return different values from getBooleanContents() 2014-07-10 10:18:12 +00:00
fcopysign-f32-f64.ll [mips] Fix fcopysign for MIPS-IV and add the test. 2014-04-14 16:24:12 +00:00
fcopysign.ll [mips] Use MTHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 2014-06-12 11:55:58 +00:00
fixdfsf.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fmadd1.ll [mips] Use MTHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 2014-06-12 11:55:58 +00:00
fneg.ll Re-commit: [mips] abs.[ds], and neg.[ds] should be allowed regardless of -enable-no-nans-fp-math 2014-04-09 09:56:43 +00:00
fp16instrinsmc.ll Add the first backend support for on demand subtarget creation 2014-09-26 01:44:08 +00:00
fp16mix.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
fp16static.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fp64a.ll [mips] Account for endianess when expanding BuildPairF64/ExtractElementF64 nodes. 2014-10-16 15:41:51 +00:00
fp-indexed-ls.ll [mips][mips64r6] [sl][duw]xc1 are not available on MIPS32r6/MIPS64r6 2014-06-12 14:19:28 +00:00
fp-spill-reload.ll
fpbr.ll [mips][mips64r6] bc1[tf] are not available on MIPS32r6/MIPS64r6 2014-06-12 15:00:17 +00:00
fpneeded.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
fpnotneeded.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
fptr2.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fpxx.ll [mips] For the FP64A ABI, odd-numbered double-precision moves must not use mtc1/mfc1. 2014-07-14 13:08:14 +00:00
frame-address.ll Add more addFrameMove test coverage. 2013-05-16 14:51:26 +00:00
frem.ll
global-address.ll [mips] Make it impossible to have UnknownABI in CodeGen and Integrated Assembler. 2014-02-20 14:58:19 +00:00
global-pointer-reg.ll
gpreg-lazy-binding.ll [mips] For indirect calls we don't need $gp to point to .got. Mips linker 2014-10-01 08:22:21 +00:00
gprestore.ll
helloworld.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
hf1_body.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
hf16_1.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
hf16call32_body.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
hf16call32.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
hfptrcall.ll Add the first backend support for on demand subtarget creation 2014-09-26 01:44:08 +00:00
i32k.ll Check in conditional branches for constant islands. Still need to finish 2013-11-28 00:56:37 +00:00
i64arg.ll [mips] Make sure there is a chain edge dependency between loads that read 2013-11-09 02:38:51 +00:00
imm.ll
indirectcall.ll
init-array.ll Replace -use-init-array with -use-ctors. 2014-09-02 13:54:53 +00:00
inlineasm64.ll
inlineasm_constraint.ll [mips] Change lwl and lwr in inlineasm_constraint.ll to lw 2014-05-22 11:51:06 +00:00
inlineasm-cnstrnt-bad-I-1.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-bad-J.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-bad-K.ll
inlineasm-cnstrnt-bad-L.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-bad-N.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-bad-O.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-bad-P.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-reg64.ll [mips] Use addiu in inline assembly tests since addi is not available in all ISA's 2014-05-22 11:46:58 +00:00
inlineasm-cnstrnt-reg.ll [mips][mips64r6] Improve tests affected by the changes to multiplies and divides 2014-06-11 15:48:00 +00:00
inlineasm-operand-code.ll [mips] Tolerate the use of the %z inline asm operand modifier with non-immediates. 2014-11-06 14:25:42 +00:00
inlineasmmemop.ll Mips specific inline asm memory operand modifier test case 2013-04-11 19:39:19 +00:00
int-to-float-conversion.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
internalfunc.ll
jtstat.ll Test case hygiene. 2013-03-09 18:25:40 +00:00
l3mc.ll This patch has two main functions: 2014-02-14 19:16:39 +00:00
largeimm1.ll [mips] Use register number instead of name to print register $AT. 2012-11-02 21:26:03 +00:00
largeimmprinting.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
lazy-binding.ll [mips] Make sure loads from lazy-binding entries do not get CSE'd or hoisted out 2013-09-28 00:12:32 +00:00
lb1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
lbu1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
lcb2.ll Check in conditional branches for constant islands. Still need to finish 2013-11-28 00:56:37 +00:00
lcb3c.ll Part 1 of 3 patches that completes very long conditional branches 2013-11-29 22:32:56 +00:00
lcb4a.ll final patch for very long conditional branches for mips16 constant islands. 2013-12-03 23:42:51 +00:00
lcb5.ll final patch for very long conditional branches for mips16 constant islands. 2013-12-03 23:42:51 +00:00
lh1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
lhu1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
lit.local.cfg Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
llcarry.ll Implement carry for subtract/add for mips16 2012-10-26 04:46:26 +00:00
load-store-left-right.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
longbranch.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
machineverifier.ll
madd-msub.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
mature-mc-support.ll Re-commit: Demote EmitRawText call in AsmPrinter::EmitInlineAsm() and remove hasRawTextSupport() call 2014-02-13 14:44:26 +00:00
mbrsize4a.ll Add, to constant islands, long jumps similar to ARM far branch. 2013-11-21 05:13:23 +00:00
memcpy.ll
micromips-andi.ll ps][microMIPS] Implement CodeGen support for ANDI16 instruction 2014-11-05 17:43:00 +00:00
micromips-atomic.ll Fixed operand of SC microMIPS instruction. 2014-02-28 18:22:56 +00:00
micromips-delay-slot.ll [mips][microMIPS] Fix issue with delay slot filler and microMIPS 2014-11-10 17:27:56 +00:00
micromips-directives.ll [mips] Emit '.set nomicromips' before a function's entry label 2014-04-16 11:46:59 +00:00
micromips-jal.ll Fixed issue with microMIPS JAL instruction. 2014-03-31 14:00:10 +00:00
micromips-load-effective-address.ll Test case micromips-load-effective-address.s renamed to micromips-load-effective-address.ll and moved to test/CodeGen/Mips. 2014-01-14 16:26:47 +00:00
micromips-shift.ll ps][microMIPS] Implement CodeGen support for SLL16 and SRL16 instructions 2014-11-05 17:38:31 +00:00
mips16_32_1.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_3.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_4.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_5.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_6.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_7.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_8.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_9.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_32_10.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
mips16_fpret.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
mips16-hf-attr-2.ll Add soft-float to the key for the subtarget lookup in the TargetMachine 2014-09-29 21:57:54 +00:00
mips16-hf-attr.ll Add soft-float to the key for the subtarget lookup in the TargetMachine 2014-09-29 21:57:54 +00:00
mips16ex.ll Print a=b as an assignment. 2014-06-24 22:45:16 +00:00
mips16fpe.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
mips64-f128-call.ll [mips] Add a line which checks function name. Rename file. 2013-03-06 01:58:03 +00:00
mips64-f128.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
mips64-libcall.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
mips64-sret.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
mips64directive.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64ext.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64extins.ll
mips64fpimm0.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64fpldst.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64imm.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64instrs.ll [mips][mips64r6] cl[oz], and dcl[oz] are re-encoded in MIPS32r6/MIPS64r6 2014-06-16 13:18:59 +00:00
mips64intldst.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64lea.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
mips64muldiv.ll [mips][mips64r6] Replace m[tf]hi, m[tf]lo, mult, multu, dmult, dmultu, div, ddiv, divu, ddivu for MIPS32r6/MIPS64. 2014-06-12 10:44:10 +00:00
mips64shift.ll
mipslopat.ll
misha.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
mno-ldc1-sdc1.ll [mips] Use MFHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 moves 2014-07-14 12:41:31 +00:00
mul.ll Patch for integer multiply, signed/unsigned, long/long long. 2012-10-05 18:27:54 +00:00
mulll.ll Patch for integer multiply, signed/unsigned, long/long long. 2012-10-05 18:27:54 +00:00
mulull.ll Patch for integer multiply, signed/unsigned, long/long long. 2012-10-05 18:27:54 +00:00
nacl-align.ll Moved test file from test/MC/Mips to test/CodeGen/Mips. 2014-03-07 22:08:46 +00:00
nacl-branch-delay.ll [mips] Implement NaCl sandboxing of loads, stores and SP changes: 2014-03-10 20:34:23 +00:00
nacl-reserved-regs.ll [mips] Forbid the use of registers t6, t7 and t8 if the target is NaCl. 2014-02-07 17:16:40 +00:00
neg1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
no-odd-spreg.ll [mips] Do not emit '.module [no]oddspreg' unless we really need to. 2014-07-21 10:45:47 +00:00
nomips16.ll Add the first backend support for on demand subtarget creation 2014-09-26 01:44:08 +00:00
not1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
null-streamer.ll [Mips] Add a target streamer when creating a null streamer. 2014-06-23 19:43:40 +00:00
null.ll Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
o32_cc_byval.ll [mips] Set instruction itineraries of loads, stores and conditional moves. 2013-09-06 23:28:24 +00:00
o32_cc_vararg.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
o32_cc.ll [mips] Use MFHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 moves 2014-07-14 12:41:31 +00:00
octeon_popcnt.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
octeon.ll [mips] Add more Octeon cnMips instructions 2014-04-02 18:40:43 +00:00
optimize-fp-math.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
optimize-pic-o0.ll Fix regression with -O0 for mips . 2014-03-10 16:31:25 +00:00
or1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
powif64_16.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
prevent-hoisting.ll [mips] For indirect calls we don't need $gp to point to .got. Mips linker 2014-10-01 08:22:21 +00:00
private.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
ra-allocatable.ll TBAA: remove !tbaa from testing cases when they are not needed. 2013-08-21 22:20:53 +00:00
rdhwr-directives.ll test case for r159770. 2012-07-05 19:29:31 +00:00
rem.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
remat-immed-load.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
remu.ll Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
return_address.ll [mips] Print move instructions. 2013-03-04 22:25:01 +00:00
return-vector.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
rotate.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
s2rem.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
sb1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
sel1c.ll [mips] Small code generation improvement for conditional operator (select) 2013-12-05 12:07:05 +00:00
sel2c.ll [mips] Small code generation improvement for conditional operator (select) 2013-12-05 12:07:05 +00:00
select.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00
selectcc.ll [mips][mips64r6] c.cond.fmt, mov[fntz], and mov[fntz].[ds] are not available on MIPS32r6/MIPS64r6 2014-06-12 13:39:06 +00:00
seleq.ll Add the first backend support for on demand subtarget creation 2014-09-26 01:44:08 +00:00
seleqk.ll Expand pseudos BteqzT8CmpiX16 and BtnezT8CmpiX16. 2013-02-19 00:20:58 +00:00
selgek.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
selgt.ll Expand pseudo/macro BteqzT8SltX16. 2013-02-18 04:04:26 +00:00
selle.ll Expand macro/pseudo instructions BtnezT8SltX16 and BtnezT8SltuX16. 2013-02-18 05:43:03 +00:00
selltk.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
selne.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
selnek.ll Convert CodeGen/*/*.ll tests to use the new CHECK-LABEL for easier debugging. No functionality change and all tests pass after conversion. 2013-07-13 20:38:47 +00:00
selpat.ll Expand pseudos/macros for Selt. This is the last of the complex 2013-02-23 03:09:56 +00:00
selTBteqzCmpi.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
selTBtnezCmpi.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
selTBtnezSlti.ll Expand mips16 SelT form pseudso/macros. 2013-02-22 05:10:51 +00:00
setcc-se.ll [mips] Print instructions "beq", "bne" and "or" using assembler pseudo 2013-07-26 18:34:25 +00:00
seteq.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
seteqz.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setge.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setgek.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setle.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setlt.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setltk.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setne.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setuge.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setugt.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setule.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setult.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
setultk.ll Expand pseudos/macros: 2013-02-20 05:45:15 +00:00
sh1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
shift-parts.ll
simplebr.ll Change the default branch instruction to be the 16 bit variety for mips16. 2013-11-12 02:27:12 +00:00
sint-fp-store_pattern.ll [mips] MIPS-IV is broadly the same as MIPS64 so duplicate all -mcpu=mips64 tests with -mcpu=mips4 as a starting point 2014-04-14 16:00:28 +00:00
sitofp-selectcc-opt.ll Test case for r160036. 2012-07-11 19:50:46 +00:00
sll1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
sll2.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
small-section-reserve-gp.ll [mips] Add the following MIPS options that control gp-relative addressing of 2014-11-06 13:20:12 +00:00
spill-copy-acreg.ll [mips] Handle reading, writing or copying of ccond field of DSP control 2013-05-02 23:07:05 +00:00
sr1.ll Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
sra1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
sra2.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
srl1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
srl2.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
stack-alignment.ll [mips] Partially revert r193641. Stack alignment should not be determined by 2013-11-11 21:49:03 +00:00
stackcoloring.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
stacksize.ll Test case for r159240. 2012-06-27 00:40:34 +00:00
start-asm-file.ll [mips] Remove reason for XFAIL from a test that isn't actually XFAILed. 2014-08-08 12:58:17 +00:00
stchar.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
stldst.ll checking test case for r164811. was an omission to not check this in. this was already approved 2012-10-01 21:35:06 +00:00
sub1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
sub2.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
swzero.ll Don't modify MO while use_iterator is still pointing to it. 2012-08-09 22:08:24 +00:00
tail16.ll Fix a problem with mips16 stubs when calls are transformed during 2013-12-18 23:57:48 +00:00
tailcall.ll [mips] Make sure there is a chain edge dependency between loads that read 2013-11-09 02:38:51 +00:00
tls16_2.ll Implement MipsHi for mips16 2012-10-27 00:57:14 +00:00
tls16.ll implement mips16 tls global addr 2012-10-26 22:57:32 +00:00
tls-alias.ll [pr19844] Add thread local mode to aliases. 2014-05-28 18:15:43 +00:00
tls-models.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
tls.ll Revert "[mips] Add names and tests for the hardware registers" 2014-11-04 22:15:05 +00:00
tnaked.ll Update to remove the no-frame-pointer-elim-non-leaf flag if it was set to 'false'. 2013-08-22 21:28:54 +00:00
trap1.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
trap.ll [mips] Implement llvm.trap intrinsic. 2013-07-26 20:58:55 +00:00
uitofp.ll Fix bug 13532. 2012-08-28 02:12:42 +00:00
ul1.ll Handled unaligned load/stores properly in Mips16 2012-09-15 01:02:03 +00:00
unalignedload.ll [mips][mips64r6] [ls][dw][lr] are not available in MIPS32r6/MIPS64r6 2014-05-23 13:18:02 +00:00
vector-load-store.ll MIPS DSP: add vector load/store patterns. 2012-09-27 01:50:59 +00:00
vector-setcc.ll [mips] MipsTargetLowering::getSetCCResultType should return a vector type if 2013-01-04 20:06:01 +00:00
weak.ll
xor1.ll 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
zeroreg.ll [mips] Promote i32 arguments to i64 for the N32/N64 ABI and fix <64-bit structs... 2014-11-07 16:54:21 +00:00