summaryrefslogtreecommitdiffstats
path: root/clang/Sema/SemaStmt.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2007-11-23 23:12:25 +0000
committerAnders Carlsson <andersca@mac.com>2007-11-23 23:12:25 +0000
commit660bdd1c87eb575e7eb4a9039593880794a09f56 (patch)
treee780d651f51291e2fb7268dcd11d2abf1389d8d0 /clang/Sema/SemaStmt.cpp
parent893fe3bbd10aae92dc5f30046d359e2fb747744d (diff)
downloadbcm5719-llvm-660bdd1c87eb575e7eb4a9039593880794a09f56.tar.gz
bcm5719-llvm-660bdd1c87eb575e7eb4a9039593880794a09f56.zip
Keep track of whether the asm is volatile or not.
llvm-svn: 44297
Diffstat (limited to 'clang/Sema/SemaStmt.cpp')
-rw-r--r--clang/Sema/SemaStmt.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/Sema/SemaStmt.cpp b/clang/Sema/SemaStmt.cpp
index 00685c28245..d99356edc19 100644
--- a/clang/Sema/SemaStmt.cpp
+++ b/clang/Sema/SemaStmt.cpp
@@ -645,6 +645,7 @@ Sema::ActOnReturnStmt(SourceLocation ReturnLoc, ExprTy *rex) {
}
Sema::StmtResult Sema::ActOnAsmStmt(SourceLocation AsmLoc,
+ bool IsVolatile,
unsigned NumOutputs,
unsigned NumInputs,
std::string *Names,
@@ -655,7 +656,7 @@ Sema::StmtResult Sema::ActOnAsmStmt(SourceLocation AsmLoc,
ExprTy **Clobbers,
SourceLocation RParenLoc) {
Expr *E = (Expr *)AsmString;
-
+
// Check that the output exprs are valid lvalues.
for (unsigned i = 0; i < NumOutputs; i++) {
Expr *OutputExpr = (Expr *)Exprs[i];
@@ -691,6 +692,7 @@ Sema::StmtResult Sema::ActOnAsmStmt(SourceLocation AsmLoc,
}
return new AsmStmt(AsmLoc,
+ IsVolatile,
NumOutputs,
NumInputs,
Names,
OpenPOWER on IntegriCloud