diff options
author | Chad Rosier <mcrosier@apple.com> | 2012-06-11 20:47:18 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2012-06-11 20:47:18 +0000 |
commit | 8cd64b4c5553fa6284d248336cb7c82dc960a394 (patch) | |
tree | 92f7f11fe3c5cc743c96bcc26948a70d5b429bac /lib/Sema/TreeTransform.h | |
parent | 1895a0a6936001374f66adbdfcf8abe5edf912ea (diff) |
Etch out the code path for MS-style inline assembly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158325 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r-- | lib/Sema/TreeTransform.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h index 01b82aa3d7..08c7d7d11a 100644 --- a/lib/Sema/TreeTransform.h +++ b/lib/Sema/TreeTransform.h @@ -1179,6 +1179,16 @@ public: RParenLoc, MSAsm); } + /// \brief Build a new MS style inline asm statement. + /// + /// By default, performs semantic analysis to build the new statement. + /// Subclasses may override this routine to provide different behavior. + StmtResult RebuildMSAsmStmt(SourceLocation AsmLoc, + std::string &AsmString, + SourceLocation EndLoc) { + return getSema().ActOnMSAsmStmt(AsmLoc, AsmString, EndLoc); + } + /// \brief Build a new Objective-C @try statement. /// /// By default, performs semantic analysis to build the new statement. @@ -5602,6 +5612,14 @@ TreeTransform<Derived>::TransformAsmStmt(AsmStmt *S) { S->isMSAsm()); } +template<typename Derived> +StmtResult +TreeTransform<Derived>::TransformMSAsmStmt(MSAsmStmt *S) { + // No need to transform the asm string literal. + return getDerived().RebuildMSAsmStmt(S->getAsmLoc(), + *S->getAsmString(), + S->getEndLoc()); +} template<typename Derived> StmtResult |