llvm-6502/test/CodeGen/Mips
Daniel Sanders f89ddfccc0 Add support for legalizing SETNE/SETEQ by inverting the condition code and the result of the comparison.
Summary:
LegalizeSetCCCondCode can now legalize SETEQ and SETNE by returning the inverse
condition and requesting that the caller invert the result of the condition.

The caller of LegalizeSetCCCondCode must handle the inverted CC, and they do
so as follows:
  SETCC, BR_CC:
    Invert the result of the SETCC with SelectionDAG::getNOT()
  SELECT_CC:
    Swap the true/false operands.

This is necessary for MSA which lacks an integer SETNE instruction.

Reviewers: resistor

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2229

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195355 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-21 13:24:49 +00:00
..
msa Add support for legalizing SETNE/SETEQ by inverting the condition code and the result of the comparison. 2013-11-21 13:24:49 +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
2008-07-29-icmp.ll
2008-07-31-fcopysign.ll
2008-08-01-AsmInline.ll
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
2010-07-20-Switch.ll
2010-11-09-CountLeading.ll
2010-11-09-Mul.ll
2011-05-26-BranchKillsVreg.ll
2012-12-12-ExpandMemcpy.ll
2013-11-18-fp64-const0.ll [mips] Fix 'ran out of registers' in MIPS32 with FP64 when generating code for (ConstantFP 0.0) 2013-11-18 13:12:43 +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
align16.ll
alloca16.ll
alloca.ll
analyzebranch.ll
and1.ll
asm-large-immediate.ll
atomic.ll
atomicops.ll
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
blez_bgez.ll
blockaddr.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
br-jmp.ll
brconeq.ll
brconeqk.ll
brconeqz.ll
brconge.ll
brcongt.ll
brconle.ll
brconlt.ll
brconne.ll
brconnek.ll
brconnez.ll
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
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] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
buildpairextractelementf64.ll
check-noat.ll
cmov.ll
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 Mostly finish up constant islands port for Mips for load constants. 2013-11-10 00:09:26 +00:00
const6.ll Mostly finish up constant islands port for Mips for load constants. 2013-11-10 00:09:26 +00:00
const6a.ll Allow the code which returns the length for inline assembler to know 2013-11-13 04:37:52 +00:00
const-mult.ll
constantfp0.ll
cprestore.ll
ctlz.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
DbgValueOtherTargets.test
disable-tail-merge.ll [mips] Test case for r192124. 2013-10-07 21:32:57 +00:00
div_rem.ll
div.ll
divrem.ll [mips] Transfer kill flag to the newly created operand. 2013-10-15 01:06:30 +00:00
divu_remu.ll
divu.ll
double2int.ll
dsp-patterns-cmp-vselect.ll
dsp-patterns.ll
dsp-r1.ll
dsp-r2.ll
dsp-vec-load-store.ll
eh-dwarf-cfa.ll
eh-return32.ll
eh-return64.ll
eh.ll
emit-big-cst.ll
ex2.ll
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
fastcc.ll
fcopysign-f32-f64.ll
fcopysign.ll
fixdfsf.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fmadd1.ll
fneg.ll
fp16instrinsmc.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fp16mix.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fp16static.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
fp-indexed-ls.ll
fp-spill-reload.ll
fpbr.ll
fpneeded.ll
fpnotneeded.ll
fptr2.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
frame-address.ll
frem.ll
global-address.ll
global-pointer-reg.ll
gpreg-lazy-binding.ll
gprestore.ll
helloworld.ll Fix two issues regarding Got pointer (GP) setup. 2013-09-18 22:46:09 +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 [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
i32k.ll For Mips16, start to consolidate all forms of 32 bit literal loading so that 2013-10-12 02:19:08 +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
inlineasm64.ll
inlineasm_constraint.ll
inlineasm-cnstrnt-bad-I-1.ll
inlineasm-cnstrnt-bad-J.ll
inlineasm-cnstrnt-bad-K.ll
inlineasm-cnstrnt-bad-L.ll
inlineasm-cnstrnt-bad-N.ll
inlineasm-cnstrnt-bad-O.ll
inlineasm-cnstrnt-bad-P.ll
inlineasm-cnstrnt-reg64.ll
inlineasm-cnstrnt-reg.ll
inlineasm-operand-code.ll
inlineasmmemop.ll
int-to-float-conversion.ll
internalfunc.ll
jtstat.ll
largefr1.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
largeimm1.ll
largeimmprinting.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
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
lbu1.ll
lh1.ll
lhu1.ll
lit.local.cfg
llcarry.ll
load-store-left-right.ll
longbranch.ll [mips] Fix a bug in MipsLongBranch::replaceBranch, which was erasing 2013-10-04 20:51:40 +00:00
machineverifier.ll
madd-msub.ll
mbrsize4a.ll Add, to constant islands, long jumps similar to ARM far branch. 2013-11-21 05:13:23 +00:00
memcpy.ll
mips16_32_1.ll
mips16_32_3.ll
mips16_32_4.ll
mips16_32_5.ll
mips16_32_6.ll
mips16_32_7.ll
mips16_32_8.ll
mips16_32_9.ll
mips16_32_10.ll
mips16_fpret.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
mips16ex.ll
mips16fpe.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
mips64-f128-call.ll
mips64-f128.ll
mips64-fp-indexed-ls.ll
mips64-libcall.ll
mips64-sret.ll
mips64countleading.ll
mips64directive.ll
mips64ext.ll
mips64extins.ll
mips64fpimm0.ll
mips64fpldst.ll
mips64imm.ll
mips64instrs.ll [mips] Transfer kill flag to the newly created operand. 2013-10-15 01:06:30 +00:00
mips64intldst.ll
mips64lea.ll
mips64load-store-left-right.ll
mips64muldiv.ll
mips64shift.ll
mipslopat.ll
misha.ll
mno-ldc1-sdc1.ll
mul.ll
mulll.ll
mulull.ll
neg1.ll
nomips16.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
not1.ll
null.ll
o32_cc_byval.ll
o32_cc_vararg.ll
o32_cc.ll [mips] Fix a bug in function CC_MipsO32_FP64. The second double precision 2013-11-12 22:16:18 +00:00
optimize-fp-math.ll
or1.ll
powif64_16.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
private.ll
ra-allocatable.ll
rdhwr-directives.ll
rem.ll
remat-immed-load.ll
remu.ll
return_address.ll
return-vector.ll
rotate.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
sb1.ll
sel1c.ll Make all the conditional Mips 16 branches get initially set for the 2013-11-15 02:21:52 +00:00
sel2c.ll Make all the conditional Mips 16 branches get initially set for the 2013-11-15 02:21:52 +00:00
select.ll
selectcc.ll
seleq.ll
seleqk.ll
selgek.ll
selgt.ll
selle.ll
selltk.ll
selne.ll
selnek.ll
selpat.ll
selTBteqzCmpi.ll
selTBtnezCmpi.ll
selTBtnezSlti.ll
setcc-se.ll
seteq.ll
seteqz.ll
setge.ll
setgek.ll
setle.ll
setlt.ll
setltk.ll
setne.ll
setuge.ll
setugt.ll
setule.ll
setult.ll
setultk.ll
sh1.ll
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
sitofp-selectcc-opt.ll
sll1.ll
sll2.ll
small-section-reserve-gp.ll
spill-copy-acreg.ll
sra1.ll
sra2.ll
srl1.ll
srl2.ll
stack-alignment.ll [mips] Partially revert r193641. Stack alignment should not be determined by 2013-11-11 21:49:03 +00:00
stackcoloring.ll
stacksize.ll
stchar.ll
stldst.ll
sub1.ll
sub2.ll
swzero.ll
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
tls16.ll
tls-alias.ll
tls-models.ll
tls.ll
tnaked.ll
trap1.ll [Mips] Adjust float ABI settings in case of MIPS16 mode. 2013-11-19 12:20:17 +00:00
trap.ll
uitofp.ll
ul1.ll
unalignedload.ll
vector-load-store.ll
vector-setcc.ll
weak.ll
xor1.ll
zeroreg.ll