clang API Documentation
#include <TargetInfo.h>
Public Types | |
enum | { CI_None = 0x00, CI_AllowsMemory = 0x01, CI_AllowsRegister = 0x02, CI_ReadWrite = 0x04, CI_HasMatchingInput = 0x08 } |
Public Member Functions | |
ConstraintInfo (StringRef ConstraintStr, StringRef Name) | |
const std::string & | getConstraintStr () const |
const std::string & | getName () const |
bool | isReadWrite () const |
bool | allowsRegister () const |
bool | allowsMemory () const |
bool | hasMatchingInput () const |
Return true if this output operand has a matching (tied) input operand. | |
bool | hasTiedOperand () const |
Return true if this input operand is a matching constraint that ties it to an output operand. | |
unsigned | getTiedOperand () const |
void | setIsReadWrite () |
void | setAllowsMemory () |
void | setAllowsRegister () |
void | setHasMatchingInput () |
void | setTiedOperand (unsigned N, ConstraintInfo &Output) |
Indicate that this is an input operand that is tied to the specified output operand. | |
Public Attributes | |
unsigned | Flags |
int | TiedOperand |
std::string | ConstraintStr |
std::string | Name |
Definition at line 517 of file include/clang/Basic/TargetInfo.h.
anonymous enum |
Definition at line 518 of file include/clang/Basic/TargetInfo.h.
clang::TargetInfo::ConstraintInfo::ConstraintInfo | ( | StringRef | ConstraintStr, |
StringRef | Name | ||
) | [inline] |
Definition at line 531 of file include/clang/Basic/TargetInfo.h.
bool clang::TargetInfo::ConstraintInfo::allowsMemory | ( | ) | const [inline] |
Definition at line 539 of file include/clang/Basic/TargetInfo.h.
References CI_AllowsMemory, and Flags.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt(), and clang::TargetInfo::validateOutputConstraint().
bool clang::TargetInfo::ConstraintInfo::allowsRegister | ( | ) | const [inline] |
Definition at line 538 of file include/clang/Basic/TargetInfo.h.
References CI_AllowsRegister, and Flags.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt(), and clang::TargetInfo::validateOutputConstraint().
const std::string& clang::TargetInfo::ConstraintInfo::getConstraintStr | ( | ) | const [inline] |
Definition at line 535 of file include/clang/Basic/TargetInfo.h.
References ConstraintStr.
Referenced by clang::TargetInfo::validateOutputConstraint().
const std::string& clang::TargetInfo::ConstraintInfo::getName | ( | ) | const [inline] |
Definition at line 536 of file include/clang/Basic/TargetInfo.h.
References Name.
unsigned clang::TargetInfo::ConstraintInfo::getTiedOperand | ( | ) | const [inline] |
Definition at line 551 of file include/clang/Basic/TargetInfo.h.
References hasTiedOperand(), and TiedOperand.
Referenced by clang::Sema::ActOnGCCAsmStmt(), clang::CodeGen::CodeGenFunction::EmitAsmStmt(), and clang::TargetInfo::validateInputConstraint().
bool clang::TargetInfo::ConstraintInfo::hasMatchingInput | ( | ) | const [inline] |
Return true if this output operand has a matching (tied) input operand.
Definition at line 543 of file include/clang/Basic/TargetInfo.h.
References CI_HasMatchingInput, and Flags.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
bool clang::TargetInfo::ConstraintInfo::hasTiedOperand | ( | ) | const [inline] |
Return true if this input operand is a matching constraint that ties it to an output operand.
If this returns true then getTiedOperand will indicate which output operand this is tied to.
Definition at line 550 of file include/clang/Basic/TargetInfo.h.
References TiedOperand.
Referenced by clang::Sema::ActOnGCCAsmStmt(), clang::CodeGen::CodeGenFunction::EmitAsmStmt(), getTiedOperand(), and clang::TargetInfo::validateInputConstraint().
bool clang::TargetInfo::ConstraintInfo::isReadWrite | ( | ) | const [inline] |
Definition at line 537 of file include/clang/Basic/TargetInfo.h.
References CI_ReadWrite, and Flags.
Referenced by clang::Sema::ActOnGCCAsmStmt(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
void clang::TargetInfo::ConstraintInfo::setAllowsMemory | ( | ) | [inline] |
Definition at line 557 of file include/clang/Basic/TargetInfo.h.
References CI_AllowsMemory, and Flags.
Referenced by clang::TargetInfo::validateInputConstraint(), and clang::TargetInfo::validateOutputConstraint().
void clang::TargetInfo::ConstraintInfo::setAllowsRegister | ( | ) | [inline] |
Definition at line 558 of file include/clang/Basic/TargetInfo.h.
References CI_AllowsRegister, and Flags.
Referenced by clang::TargetInfo::validateInputConstraint(), and clang::TargetInfo::validateOutputConstraint().
void clang::TargetInfo::ConstraintInfo::setHasMatchingInput | ( | ) | [inline] |
Definition at line 559 of file include/clang/Basic/TargetInfo.h.
References CI_HasMatchingInput, and Flags.
Referenced by setTiedOperand().
void clang::TargetInfo::ConstraintInfo::setIsReadWrite | ( | ) | [inline] |
Definition at line 556 of file include/clang/Basic/TargetInfo.h.
References CI_ReadWrite, and Flags.
Referenced by clang::TargetInfo::validateOutputConstraint().
void clang::TargetInfo::ConstraintInfo::setTiedOperand | ( | unsigned | N, |
ConstraintInfo & | Output | ||
) | [inline] |
Indicate that this is an input operand that is tied to the specified output operand.
Copy over the various constraint information from the output.
Definition at line 565 of file include/clang/Basic/TargetInfo.h.
References Flags, setHasMatchingInput(), and TiedOperand.
Referenced by clang::TargetInfo::validateInputConstraint().
std::string clang::TargetInfo::ConstraintInfo::ConstraintStr |
Definition at line 528 of file include/clang/Basic/TargetInfo.h.
Referenced by getConstraintStr(), and clang::TargetInfo::validateInputConstraint().
Definition at line 525 of file include/clang/Basic/TargetInfo.h.
Referenced by allowsMemory(), allowsRegister(), hasMatchingInput(), isReadWrite(), setAllowsMemory(), setAllowsRegister(), setHasMatchingInput(), setIsReadWrite(), and setTiedOperand().
std::string clang::TargetInfo::ConstraintInfo::Name |
Definition at line 529 of file include/clang/Basic/TargetInfo.h.
Referenced by getName().
Definition at line 526 of file include/clang/Basic/TargetInfo.h.
Referenced by getTiedOperand(), hasTiedOperand(), and setTiedOperand().