clang API Documentation

Public Types | Public Member Functions | Public Attributes
clang::TargetInfo::ConstraintInfo Struct Reference

#include <TargetInfo.h>

Collaboration diagram for clang::TargetInfo::ConstraintInfo:
Collaboration graph
[legend]

List of all members.

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
bool hasTiedOperand () const
unsigned getTiedOperand () const
void setIsReadWrite ()
void setAllowsMemory ()
void setAllowsRegister ()
void setHasMatchingInput ()
void setTiedOperand (unsigned N, ConstraintInfo &Output)

Public Attributes

unsigned Flags
int TiedOperand
std::string ConstraintStr
std::string Name

Detailed Description

Definition at line 400 of file include/clang/Basic/TargetInfo.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
CI_None 
CI_AllowsMemory 
CI_AllowsRegister 
CI_ReadWrite 
CI_HasMatchingInput 

Definition at line 401 of file include/clang/Basic/TargetInfo.h.


Constructor & Destructor Documentation

clang::TargetInfo::ConstraintInfo::ConstraintInfo ( StringRef  ConstraintStr,
StringRef  Name 
) [inline]

Definition at line 414 of file include/clang/Basic/TargetInfo.h.


Member Function Documentation

bool clang::TargetInfo::ConstraintInfo::allowsMemory ( ) const [inline]
bool clang::TargetInfo::ConstraintInfo::allowsRegister ( ) const [inline]
const std::string& clang::TargetInfo::ConstraintInfo::getConstraintStr ( ) const [inline]
const std::string& clang::TargetInfo::ConstraintInfo::getName ( ) const [inline]

Definition at line 419 of file include/clang/Basic/TargetInfo.h.

References Name.

unsigned clang::TargetInfo::ConstraintInfo::getTiedOperand ( ) const [inline]
bool clang::TargetInfo::ConstraintInfo::hasMatchingInput ( ) const [inline]

hasMatchingInput - Return true if this output operand has a matching (tied) input operand.

Definition at line 426 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]

hasTiedOperand() - 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 431 of file include/clang/Basic/TargetInfo.h.

References TiedOperand.

Referenced by clang::Sema::ActOnAsmStmt(), clang::CodeGen::CodeGenFunction::EmitAsmStmt(), getTiedOperand(), and clang::TargetInfo::validateInputConstraint().

bool clang::TargetInfo::ConstraintInfo::isReadWrite ( ) const [inline]

Definition at line 420 of file include/clang/Basic/TargetInfo.h.

References CI_ReadWrite, and Flags.

Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().

void clang::TargetInfo::ConstraintInfo::setAllowsMemory ( ) [inline]
void clang::TargetInfo::ConstraintInfo::setAllowsRegister ( ) [inline]
void clang::TargetInfo::ConstraintInfo::setHasMatchingInput ( ) [inline]

Definition at line 440 of file include/clang/Basic/TargetInfo.h.

References CI_HasMatchingInput, and Flags.

Referenced by setTiedOperand().

void clang::TargetInfo::ConstraintInfo::setIsReadWrite ( ) [inline]

Definition at line 437 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]

setTiedOperand - 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 445 of file include/clang/Basic/TargetInfo.h.

References Flags, setHasMatchingInput(), and TiedOperand.

Referenced by clang::TargetInfo::validateInputConstraint().


Member Data Documentation

Definition at line 412 of file include/clang/Basic/TargetInfo.h.

Referenced by getName().


The documentation for this struct was generated from the following file: