summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/ParseStmt.cpp
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2014-07-31 01:52:33 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2014-07-31 01:52:33 +0000
commitdb9552f4a4ca7cd8edf786037b2db948dfac1b1e (patch)
treec7106a0589371dbaae60d1b46313ea4558118912 /clang/lib/Parse/ParseStmt.cpp
parent4cc54cbb9031faa4cee0863d882c2b99c1bb89da (diff)
downloadbcm5719-llvm-db9552f4a4ca7cd8edf786037b2db948dfac1b1e.tar.gz
bcm5719-llvm-db9552f4a4ca7cd8edf786037b2db948dfac1b1e.zip
Revert r214333, "Add a state variable to the loop hint attribute."
It brought undefined behavior. llvm-svn: 214376
Diffstat (limited to 'clang/lib/Parse/ParseStmt.cpp')
-rw-r--r--clang/lib/Parse/ParseStmt.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/clang/lib/Parse/ParseStmt.cpp b/clang/lib/Parse/ParseStmt.cpp
index a431270d2b1..38723b1293d 100644
--- a/clang/lib/Parse/ParseStmt.cpp
+++ b/clang/lib/Parse/ParseStmt.cpp
@@ -1817,11 +1817,10 @@ StmtResult Parser::ParsePragmaLoopHint(StmtVector &Stmts, bool OnlyStatement,
// Get loop hints and consume annotated token.
while (Tok.is(tok::annot_pragma_loop_hint)) {
- LoopHint Hint;
- if (!HandlePragmaLoopHint(Hint))
- continue;
+ LoopHint Hint = HandlePragmaLoopHint();
+ ConsumeToken();
- ArgsUnion ArgHints[] = {Hint.PragmaNameLoc, Hint.OptionLoc, Hint.StateLoc,
+ ArgsUnion ArgHints[] = {Hint.PragmaNameLoc, Hint.OptionLoc, Hint.ValueLoc,
ArgsUnion(Hint.ValueExpr)};
TempAttrs.addNew(Hint.PragmaNameLoc->Ident, Hint.Range, nullptr,
Hint.PragmaNameLoc->Loc, ArgHints, 4,
OpenPOWER on IntegriCloud