llvm-6502/test/CodeGen/Mips
Akira Hatanaka 27ba61df9f Insert instructions to the entry basic block which initializes the global
pointer register. 


This is the first of the series of patches which clean up the way global pointer
register is used. The patches will make the following improvements:

- Make $gp an allocatable temporary register rather than reserving it.
- Use a virtual register as the global pointer register and let the register
  allocator decide which register to assign to it or whether spill/reloads are
  needed.
- Make sure $gp is valid at the entry of a called function, which is necessary
  for functions using lazy binding.
- Remove the need for emitting .cprestore and .cpload directives.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156671 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-12 00:17:17 +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
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 Remove the no longer existent psp triple from a test. 2012-03-08 21:22:27 +00:00
2009-11-16-CstPoolLoad.ll Fix LowerConstantPool to produce instructions with the correct relocation 2012-04-04 18:26:12 +00:00
2010-04-07-DbgValueOtherTargets.ll
2010-07-20-Switch.ll Do not use $gp as a dedicated global register if the target ABI is not O32. 2012-04-25 01:24:52 +00:00
2010-11-09-CountLeading.ll
2010-11-09-Mul.ll
2011-05-26-BranchKillsVreg.ll
addc.ll
alloca.ll
analyzebranch.ll Flip the new block-placement pass to be on by default. 2012-04-16 13:49:17 +00:00
atomic.ll Do not replace operands of pseudo instructions with register $zero. 2012-05-11 23:22:18 +00:00
blockaddr.ll Fix LowerBlockAddress to produce instructions with the correct relocation 2012-04-04 18:22:53 +00:00
br-jmp.ll
brdelayslot.ll
bswap.ll
buildpairextractelementf64.ll
cmov.ll Add another peephole pattern for conditional moves. 2012-05-09 02:29:29 +00:00
constantfp0.ll
cprestore.ll Fix test case. 2012-03-28 00:25:01 +00:00
divrem.ll
double2int.ll
eh.ll Flip the new block-placement pass to be on by default. 2012-04-16 13:49:17 +00:00
extins.ll
fabs.ll Emit abs.s or abs.d only if -enable-no-nans-fp-math is supplied by user. 2012-04-11 22:49:04 +00:00
fcopysign-f32-f64.ll Fix bugs in lowering of FCOPYSIGN nodes. 2012-04-11 22:13:04 +00:00
fcopysign.ll Fix bugs in lowering of FCOPYSIGN nodes. 2012-04-11 22:13:04 +00:00
fmadd1.ll
fneg.ll Revert changes that were accidentally committed. 2012-04-11 23:19:55 +00:00
fp-indexed-ls.ll Fix bugs which were introduced when support for base+index floating point loads 2012-03-01 22:12:30 +00:00
fp-spill-reload.ll Make register FP allocatable if the compiled function does not have dynamic 2012-05-09 01:38:13 +00:00
fpbr.ll Flip the new block-placement pass to be on by default. 2012-04-16 13:49:17 +00:00
frame-address.ll
frem.ll Expand FREM. 2012-03-29 18:43:11 +00:00
global-address.ll Add lines in global-address.ll to test N32 and N64 code generation. 2012-04-06 20:23:36 +00:00
global-pointer-reg.ll
gprestore.ll
i64arg.ll
imm.ll
indirectcall.ll
inlineasm64.ll
inlineasm_constraint.ll Use regular expression to match register names. 2012-05-11 23:00:40 +00:00
inlineasm-cnstrnt-bad-I-1.ll Add support for the 'I' inline asm constraint. Also add tests 2012-05-07 03:13:32 +00:00
inlineasm-cnstrnt-bad-J.ll Support the 'J' constraint. 2012-05-07 03:13:42 +00:00
inlineasm-cnstrnt-bad-K.ll Add support for the inline asm constraint 'K'. 2012-05-07 05:46:29 +00:00
inlineasm-cnstrnt-bad-L.ll Add support for the 'L' inline asm constraint. 2012-05-07 05:46:37 +00:00
inlineasm-cnstrnt-bad-N.ll Add support for the 'N' inline asm constraint. 2012-05-07 05:46:43 +00:00
inlineasm-cnstrnt-bad-O.ll Add support for the 'O' constraint. 2012-05-07 05:46:48 +00:00
inlineasm-cnstrnt-bad-P.ll Add support for the 'P' constraint. 2012-05-07 06:25:02 +00:00
inlineasm-cnstrnt-bad-r-1.ll Add support for the 'I' inline asm constraint. Also add tests 2012-05-07 03:13:32 +00:00
inlineasm-cnstrnt-reg64.ll Add support for the 'I' inline asm constraint. Also add tests 2012-05-07 03:13:32 +00:00
inlineasm-cnstrnt-reg.ll Add support for the 'l' constraint. 2012-05-07 06:25:15 +00:00
inlineasm-operand-code.ll Add support for the 'X' inline asm operand modifier. 2012-05-10 21:48:22 +00:00
inlineasmmemop.ll
internalfunc.ll
largeimm1.ll
largeimmprinting.ll
lit.local.cfg Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
madd-msub.ll
mips64-fp-indexed-ls.ll Fix bugs which were introduced when support for base+index floating point loads 2012-03-01 22:12:30 +00:00
mips64countleading.ll
mips64directive.ll
mips64ext.ll
mips64extins.ll
mips64fpimm0.ll
mips64fpldst.ll Reapply 154038 without the failing test. 2012-04-04 22:16:36 +00:00
mips64imm.ll
mips64instrs.ll
mips64intldst.ll Reapply 154038 without the failing test. 2012-04-04 22:16:36 +00:00
mips64lea.ll
mips64muldiv.ll
mips64shift.ll
mipslopat.ll
o32_cc_byval.ll
o32_cc_vararg.ll
o32_cc.ll
private.ll
rotate.ll
select.ll
shift-parts.ll Expand 64-bit shifts if target ABI is O32. 2012-05-09 00:55:21 +00:00
swzero.ll
tls.ll Insert instructions to the entry basic block which initializes the global 2012-05-12 00:17:17 +00:00
unalignedload.ll
weak.ll
zeroreg.ll Test case for r152280, r152285 and r152290. 2012-03-08 03:32:42 +00:00