llvm-6502/test/CodeGen/PowerPC
Chris Lattner d96428597b Fix a significant code quality regression I introduced on PPC64 quite
a while ago.  We now produce:

_foo:
	mflr r0
	std r0, 16(r1)
	ld r2, 16(r1)
	std r2, 0(r3)
	ld r0, 16(r1)
	mtlr r0
	blr 

instead of:

_foo:
	mflr r0
	std r0, 16(r1)
	lis r0, 0
	ori r0, r0, 16
	ldx r2, r1, r0
	std r2, 0(r3)
	ld r0, 16(r1)
	mtlr r0
	blr 

for:

void foo(void **X) {
  *X = __builtin_return_address(0);
}

on ppc64.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44701 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-08 07:04:58 +00:00
..
2004-11-29-ShrCrash.ll
2004-11-30-shift-crash.ll
2004-11-30-shr-var-crash.ll
2004-12-12-ZeroSizeCommon.ll
2005-01-14-SetSelectCrash.ll
2005-01-14-UndefLong.ll
2005-08-12-rlwimi-crash.ll
2005-09-02-LegalizeDuplicatesCalls.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
2005-10-08-ArithmeticRotate.ll
2005-11-30-vastart-crash.ll
2006-01-11-darwin-fp-argument.ll
2006-01-20-ShiftPartsCrash.ll these tests do not need a triple on Solaris. Thanks sabre! 2007-07-13 10:08:18 +00:00
2006-04-01-FloatDoubleExtend.ll
2006-04-05-splat-ish.ll
2006-04-19-vmaddfp-crash.ll
2006-05-12-rlwimi-crash.ll
2006-07-07-ComputeMaskedBits.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
2006-07-19-stwbrx-crash.ll
2006-08-11-RetVector.ll
2006-08-15-SelectionCrash.ll these tests do not need a triple on Solaris. Thanks sabre! 2007-07-13 10:08:18 +00:00
2006-09-28-shift_64.ll
2006-10-11-combiner-aa-regression.ll
2006-10-13-Miscompile.ll
2006-10-17-brcc-miscompile.ll
2006-10-17-ppc64-alloca.ll
2006-11-10-DAGCombineMiscompile.ll
2006-11-29-AltivecFPSplat.ll
2006-12-07-LargeAlloca.ll
2006-12-07-SelectCrash.ll
2007-01-04-ArgExtension.ll
2007-01-15-AsmDialect.ll
2007-01-29-lbrx-asm.ll
2007-01-31-InlineAsmAddrMode.ll
2007-02-16-AlignPacked.ll
2007-02-16-InlineAsmNConstraint.ll
2007-02-23-lr-saved-twice.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
2007-03-24-cntlzd.ll This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future. 2007-08-04 01:51:18 +00:00
2007-03-30-SpillerCrash.ll
2007-04-24-InlineAsm-I-Modifier.ll
2007-04-30-InlineAsmEarlyClobber.ll
2007-05-03-InlineAsm-S-Constraint.ll
2007-05-14-InlineAsmSelectCrash.ll
2007-05-22-tailmerge-3.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
2007-05-30-dagcombine-miscomp.ll For PR1553: 2007-07-19 23:13:04 +00:00
2007-06-28-BCCISelBug.ll Fix test. 2007-07-05 23:00:50 +00:00
2007-08-04-CoalescerAssert.ll Test case for PR1596. 2007-08-14 23:21:10 +00:00
2007-09-04-AltivecDST.ll Add the 64-bit versions of the DS* Altivec instructions. 2007-09-05 04:05:20 +00:00
2007-09-07-LoadStoreIdxForms.ll Add missing index versions of instructions to the map. 2007-09-07 22:01:02 +00:00
2007-09-08-unaligned.ll Implement misaligned FP loads and stores. 2007-09-08 19:29:23 +00:00
2007-09-11-RegCoalescerAssert.ll Sometimes a MI can define a register as well as defining a super-register at the 2007-09-11 22:34:47 +00:00
2007-09-12-LiveIntervalsAssert.ll Fixed a typo that's causing a missing kill marker. 2007-09-12 23:02:04 +00:00
2007-10-16-InlineAsmFrameOffset.ll Fix a bug handling frame references in ppc inline asm when the frame offset 2007-10-16 18:00:18 +00:00
2007-10-18-PtrArithmetic.ll Pointer arithmetic should be done with the index the same size as the pointer. 2007-10-18 08:32:37 +00:00
2007-10-21-LocalRegAllocAssert2.ll Temporary solution: added a different set of BCTRL_Macho / BCTRL_ELF with right callee-saved defs set for ppc64. 2007-10-23 06:42:42 +00:00
2007-10-21-LocalRegAllocAssert.ll Use ptr type in the immediate field of a BxA instruction so we don't end up selecting 32-bit call instruction for ppc64. 2007-10-22 19:46:19 +00:00
2007-11-04-CoalescerCrash.ll Skip over deleted val#'s. 2007-11-05 06:46:45 +00:00
2007-11-16-landingpad-split.ll Testcase from PR 1508 (although its's somewhat 2007-11-16 23:16:35 +00:00
2007-11-19-VectorSplitting.ll Testcase for PR1811 2007-11-19 21:43:22 +00:00
addc.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
addi-reassoc.ll
align.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
and_add.ll
and_sext.ll For PR1553: 2007-07-19 23:13:04 +00:00
and_sra.ll
and-branch.ll
and-elim.ll For PR1553: 2007-07-19 23:13:04 +00:00
and-imm.ll
big-endian-actual-args.ll Add an explicit triple to the big-endian tests so that the assembly 2007-07-06 13:15:51 +00:00
big-endian-call-result.ll Remove the trailing semicolon from function declarations in LLVM, 2007-07-16 13:37:30 +00:00
big-endian-formal-args.ll Add an explicit triple to the big-endian tests so that the assembly 2007-07-06 13:15:51 +00:00
branch-opt.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
bswap-load-store.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
buildvec_canonicalize.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
calls.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
cmp-cmp.ll
compare-duplicate.ll add target triple to fix PR1546 2007-07-09 17:14:58 +00:00
compare-simm.ll
constants.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
cttz.ll
darwin-labels.ll
dg.exp
div-2.ll
eqv-andc-orc-nor.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
extsh.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fabs.ll Add explicit triples to avoid default behavior that varies by host. 2007-09-14 20:37:18 +00:00
fma.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fnabs.ll
fneg.ll
fnegsel.ll
fold-li.ll
fp_to_uint.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fp-branch.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fp-int-fp.ll
fpcopy.ll
Frames-align.ll
Frames-alloca.ll
Frames-large.ll
Frames-leaf.ll
Frames-small.ll
fsqrt.ll
hello.ll
i64_fp.ll
iabs.ll
illegal-element-type.ll Fix a bug in getCopyFromParts turned up in the testcase for PR1132. 2007-07-30 19:09:17 +00:00
inlineasm-copy.ll
invalid-memcpy.ll Fix a crash on invalid code due to memcpy lowering. 2007-11-27 22:14:42 +00:00
inverted-bool-compares.ll
ispositive.ll
LargeAbsoluteAddr.ll
lha.ll
load-constant-addr.ll
long-compare.ll
mem_update.ll
mem-rr-addr-mode.ll
mul-neg-power-2.ll
mulhs.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
neg.ll
no-dead-strip.ll update test to check that codegen works with llvm.used in llvm.metadata section 2007-08-22 19:36:31 +00:00
or-addressing-mode.ll fix the remaining 3 testcases that missed a target triple 2007-07-12 13:21:08 +00:00
ppcf128-1-opt.ll First round of ppc long double. call/return and 2007-10-05 20:04:43 +00:00
ppcf128-1.ll First round of ppc long double. call/return and 2007-10-05 20:04:43 +00:00
reg-coalesce-simple.ll
retaddr.ll Fix a significant code quality regression I introduced on PPC64 quite 2007-12-08 07:04:58 +00:00
rlwimi2.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
rlwimi3.ll
rlwimi-commute.ll
rlwimi.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
rlwinm2.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
rlwinm.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
rotl-2.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
rotl-64.ll Fix for PR1613: added 64-bit rotate left PPC instructions and patterns. 2007-09-04 20:20:29 +00:00
rotl.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
select_lt0.ll
setcc_no_zext.ll
seteq-0.ll
shl_elim.ll
shl_sext.ll
sign_ext_inreg1.ll
small-arguments.ll For PR1553: 2007-07-19 23:13:04 +00:00
stfiwx.ll
store-load-fwd.ll
subc.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
unsafe-math.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
vcmp-fold.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
vec_br_cmp.ll
vec_call.ll
vec_constants.ll
vec_fneg.ll New test case. 2007-07-30 07:52:03 +00:00
vec_mul.ll
vec_perf_shuffle.ll
vec_shuffle.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
vec_spat.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
vec_vrsave.ll
vec_zero.ll
vector-identity-shuffle.ll
vector.ll Change all floating constants that are not exactly 2007-09-05 17:50:36 +00:00