[LLVMdev] How to use WhileStmt to implement while loop in LLVM

Nick Lewycky nicholas at mxc.ca
Sun May 26 01:41:00 PDT 2013


Rasha Omar wrote:
> Dear All,
>
> I have a question
>
> How could I use |WhileStmt class| in Stmt.h
>
> http://clang.llvm.org/doxygen/Stmt_8h_source.html
>
> to implement |while loop| like |while(i==1){}| that is required to be
> inserted
>
> For example, Convert x++; y++; to x++; while(i=1){} y++;
>
> from the class's constructor:
>
> |WhileStmt(ASTContext  &C,  VarDecl  *Var,  Expr  *cond,  Stmt  *body,SourceLocation  WL);
> //I know C -->  1
> //Var-->  i
> //cond -->  =
> //body -->  NOP
> //WL -->  ??|
>
> but how to implement these terms in LLVM pass? and what's the
> SourceLocation?

Do you actually mean LLVM pass? Or are you working inside clang (for 
example, on a source code rewriter)? If so, email cfe-dev instead.

Nick



More information about the llvm-dev mailing list