diff options
author | Anders Carlsson <andersca@mac.com> | 2010-01-30 20:05:21 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-01-30 20:05:21 +0000 |
commit | a5a79f7d16b48d3be8bcc8c7650e31aefd92b657 (patch) | |
tree | 85c2806929b225f31a72839763f72365abd207b6 /lib/Sema/TreeTransform.h | |
parent | 3bb6530019990dba3e0269a204a5511947db01b3 (diff) |
More asm cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94920 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r-- | lib/Sema/TreeTransform.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h index 4e29c3ad85..90b5365f04 100644 --- a/lib/Sema/TreeTransform.h +++ b/lib/Sema/TreeTransform.h @@ -3352,6 +3352,8 @@ TreeTransform<Derived>::TransformAsmStmt(AsmStmt *S) { ASTOwningVector<&ActionBase::DeleteExpr> Constraints(getSema()); ASTOwningVector<&ActionBase::DeleteExpr> Exprs(getSema()); + llvm::SmallVector<std::string, 4> Names; + OwningExprResult AsmString(SemaRef); ASTOwningVector<&ActionBase::DeleteExpr> Clobbers(getSema()); @@ -3359,6 +3361,8 @@ TreeTransform<Derived>::TransformAsmStmt(AsmStmt *S) { // Go through the outputs. for (unsigned I = 0, E = S->getNumOutputs(); I != E; ++I) { + Names.push_back(S->getOutputName(I)); + // No need to transform the constraint literal. Constraints.push_back(S->getOutputConstraintLiteral(I)->Retain()); @@ -3375,6 +3379,8 @@ TreeTransform<Derived>::TransformAsmStmt(AsmStmt *S) { // Go through the inputs. for (unsigned I = 0, E = S->getNumInputs(); I != E; ++I) { + Names.push_back(S->getInputName(I)); + // No need to transform the constraint literal. Constraints.push_back(S->getInputConstraintLiteral(I)->Retain()); @@ -3404,7 +3410,7 @@ TreeTransform<Derived>::TransformAsmStmt(AsmStmt *S) { S->isVolatile(), S->getNumOutputs(), S->getNumInputs(), - S->begin_output_names(), + Names.data(), move_arg(Constraints), move_arg(Exprs), move(AsmString), |