llvm.org GIT mirror llvm / 8f418b1
PR11004: Inline memcpy to avoid generating nested call sequence. Un-XFAIL 2011-06-09-TailCallByVal and 2010-11-04-BigByval git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140516 91177308-0d34-0410-b5e6-96231b3b80d8 David Meyer 8 years ago
3 changed file(s) with 4 addition(s) and 7 deletion(s). Raw diff Collapse all Expand all
13391339 SDValue Src = DAG.getNode(ISD::ADD, dl, getPointerTy(), Arg, SrcOffset);
13401340 SDValue SizeNode = DAG.getConstant(Flags.getByValSize() - 4*offset,
13411341 MVT::i32);
1342 // TODO: Disable AlwaysInline when it becomes possible
1343 // to emit a nested call sequence.
13421344 MemOpChains.push_back(DAG.getMemcpy(Chain, dl, Dst, Src, SizeNode,
13431345 Flags.getByValAlign(),
13441346 /*isVolatile=*/false,
1345 /*AlwaysInline=*/false,
1347 /*AlwaysInline=*/true,
13461348 MachinePointerInfo(0),
13471349 MachinePointerInfo(0)));
13481350
None ; DISABLED: llc < %s -relocation-model=pic -mcpu=cortex-a8 -arm-tail-calls=1 | FileCheck %s
1 ; RUN: false
2
3 ; byval is currently unsupported.
4 ; XFAIL: *
0 ; RUN: llc < %s -relocation-model=pic -mcpu=cortex-a8 -arm-tail-calls=1 | FileCheck %s
51
62 target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:64-v128:32:128-a0:0:32-n32"
73 target triple = "thumbv7-apple-darwin10"
0 ; RUN: llc < %s
11 ; PR7170
2 ; XFAIL: arm
32
43 %big = type [131072 x i8]
54