From 7dc7840850eb4a61da80c846be85308734a47bf5 Mon Sep 17 00:00:00 2001 From: Dale Johannesen Date: Sun, 25 Apr 2010 21:03:54 +0000 Subject: [PATCH] Add comment re byval args. Doesn't actually work this way yet. xs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102316 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/SelectionDAG/FastISel.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/CodeGen/SelectionDAG/FastISel.cpp b/lib/CodeGen/SelectionDAG/FastISel.cpp index c40eaf62928..8aa37a06dc2 100644 --- a/lib/CodeGen/SelectionDAG/FastISel.cpp +++ b/lib/CodeGen/SelectionDAG/FastISel.cpp @@ -340,6 +340,8 @@ bool FastISel::SelectCall(const User *I) { return true; const AllocaInst *AI = dyn_cast(Address); // Don't handle byval struct arguments or VLAs, for example. + // Note that if we have a byval struct argument, fast ISel is turned off; + // those are handled in SelectionDAGBuilder. if (!AI) break; DenseMap::iterator SI = StaticAllocaMap.find(AI); @@ -347,7 +349,7 @@ bool FastISel::SelectCall(const User *I) { int FI = SI->second; if (!DI->getDebugLoc().isUnknown()) MF.getMMI().setVariableDbgInfo(DI->getVariable(), FI, DI->getDebugLoc()); - + // Building the map above is target independent. Generating DBG_VALUE // inline is target dependent; do this now. (void)TargetSelectInstruction(cast(I));