clang
3.7.0
|
#include <Stmt.h>
Public Types | |
typedef ExprIterator | inputs_iterator |
typedef ConstExprIterator | const_inputs_iterator |
typedef llvm::iterator_range < inputs_iterator > | inputs_range |
typedef llvm::iterator_range < const_inputs_iterator > | inputs_const_range |
typedef ExprIterator | outputs_iterator |
typedef ConstExprIterator | const_outputs_iterator |
typedef llvm::iterator_range < outputs_iterator > | outputs_range |
typedef llvm::iterator_range < const_outputs_iterator > | outputs_const_range |
Static Public Member Functions | |
static bool | classof (const Stmt *T) |
Protected Member Functions | |
AsmStmt (StmtClass SC, SourceLocation asmloc, bool issimple, bool isvolatile, unsigned numoutputs, unsigned numinputs, unsigned numclobbers) | |
Protected Attributes | |
SourceLocation | AsmLoc |
bool | IsSimple |
True if the assembly statement does not have any input or output operands. More... | |
bool | IsVolatile |
If true, treat this inline assembly as having side effects. This assembly statement should not be optimized, deleted or moved. More... | |
unsigned | NumOutputs |
unsigned | NumInputs |
unsigned | NumClobbers |
Stmt ** | Exprs |
Friends | |
class | ASTStmtReader |
AsmStmt is the base class for GCCAsmStmt and MSAsmStmt.
typedef llvm::iterator_range<const_inputs_iterator> clang::AsmStmt::inputs_const_range |
typedef llvm::iterator_range<inputs_iterator> clang::AsmStmt::inputs_range |
typedef llvm::iterator_range<const_outputs_iterator> clang::AsmStmt::outputs_const_range |
typedef llvm::iterator_range<outputs_iterator> clang::AsmStmt::outputs_range |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
std::string AsmStmt::generateAsmString | ( | const ASTContext & | C | ) | const |
Assemble final IR asm string.
Definition at line 328 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
|
inline |
Definition at line 1428 of file Stmt.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
StringRef AsmStmt::getClobber | ( | unsigned | i | ) | const |
Definition at line 368 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
StringRef AsmStmt::getInputConstraint | ( | unsigned | i | ) | const |
getInputConstraint - Return the specified input constraint. Unlike output constraints, these can be empty.
Definition at line 352 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
Definition at line 360 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
|
inline |
|
inline |
|
inline |
Definition at line 1479 of file Stmt.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
|
inline |
Definition at line 1469 of file Stmt.h.
Referenced by clang::Sema::ActOnGCCAsmStmt(), clang::GCCAsmStmt::AnalyzeAsmString(), clang::CodeGen::CodeGenFunction::EmitAsmStmt(), and clang::GCCAsmStmt::getNamedOperand().
|
inline |
Definition at line 1447 of file Stmt.h.
Referenced by clang::Sema::ActOnGCCAsmStmt(), clang::GCCAsmStmt::AnalyzeAsmString(), clang::CodeGen::CodeGenFunction::EmitAsmStmt(), clang::GCCAsmStmt::getNamedOperand(), and getNumPlusOperands().
unsigned AsmStmt::getNumPlusOperands | ( | ) | const |
getNumPlusOperands - Return the number of output operands that have a "+" constraint.
Definition at line 378 of file Stmt.cpp.
References getNumOutputs(), and isOutputPlusConstraint().
Referenced by clang::GCCAsmStmt::AnalyzeAsmString().
StringRef AsmStmt::getOutputConstraint | ( | unsigned | i | ) | const |
getOutputConstraint - Return the constraint string for the specified output operand. All output constraints are known to be non-empty (either '=' or '+').
Definition at line 336 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
Definition at line 344 of file Stmt.cpp.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
|
inline |
|
inline |
isOutputPlusConstraint - Return true if the specified output constraint is a "+" constraint (which is both an input and an output) or false if it is an "=" constraint (just an output).
Definition at line 1457 of file Stmt.h.
Referenced by getNumPlusOperands().
|
inline |
Definition at line 1431 of file Stmt.h.
Referenced by clang::GCCAsmStmt::AnalyzeAsmString().
|
inline |
Definition at line 1434 of file Stmt.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
|
inline |
Definition at line 1529 of file Stmt.h.
Referenced by clang::ento::ExprEngine::VisitGCCAsmStmt().
|
inline |
|
inline |
|
friend |
|
protected |
|
protected |
Definition at line 1414 of file Stmt.h.
Referenced by clang::GCCAsmStmt::getInputExpr(), clang::GCCAsmStmt::getOutputExpr(), and clang::GCCAsmStmt::setInputExpr().
|
protected |
|
protected |
|
protected |
Definition at line 1411 of file Stmt.h.
Referenced by clang::GCCAsmStmt::GCCAsmStmt().
|
protected |
Definition at line 1410 of file Stmt.h.
Referenced by clang::GCCAsmStmt::getInputExpr(), clang::MSAsmStmt::getInputExpr(), clang::GCCAsmStmt::setInputExpr(), and clang::MSAsmStmt::setInputExpr().