CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Types | Public Member Functions | List of all members
CLRX::AsmMacroInputFilter Class Reference

assembler macro input filter (for macro filtering) More...

#include <AsmSource.h>

Inheritance diagram for CLRX::AsmMacroInputFilter:
CLRX::AsmInputFilter CLRX::NonCopyableAndNonMovable

Public Types

typedef Array< std::pair
< CString, CString > > 
MacroArgMap
 macro argument map type
 
typedef std::unordered_map
< CString, uint64_t > 
MacroLocalMap
 macro local map type (key - name of variable, value - number of local label)
 

Public Member Functions

 AsmMacroInputFilter (RefPtr< const AsmMacro > macro, const AsmSourcePos &pos, const MacroArgMap &argMap, uint64_t macroCount, bool alternateMacro)
 constructor with input macro, source position and arguments map
 
 AsmMacroInputFilter (RefPtr< const AsmMacro > macro, const AsmSourcePos &pos, MacroArgMap &&argMap, uint64_t macroCount, bool alternateMacro)
 constructor with input macro, source position and rvalue of arguments map
 
const char * readLine (Assembler &assembler, size_t &lineSize)
 read line and returns line except newline character
 
bool addLocal (const CString &name, uint64_t localNo)
 add local argument
 
- Public Member Functions inherited from CLRX::AsmInputFilter
virtual ~AsmInputFilter ()
 destructor
 
LineNo getLineNo () const
 get current line number after reading line
 
LineCol translatePos (size_t position) const
 translate position to line number and column number More...
 
const std::vector< LineTransgetColTranslations () const
 returns column translations after reading line
 
RefPtr< const AsmSourcegetSource () const
 get current source after reading line
 
RefPtr< const AsmMacroSubstgetMacroSubst () const
 get current macro substitution after reading line
 
AsmSourcePos getSourcePos (size_t position) const
 get source position after reading line
 
AsmInputFilterType getType () const
 get input filter type
 
- Public Member Functions inherited from CLRX::NonCopyableAndNonMovable
 NonCopyableAndNonMovable ()
 constructor
 
 NonCopyableAndNonMovable (const NonCopyableAndNonMovable &)=delete
 copy-constructor
 
 NonCopyableAndNonMovable (NonCopyableAndNonMovable &&)=delete
 move-constructor
 
NonCopyableAndNonMovableoperator= (const NonCopyableAndNonMovable &)=delete
 copy-assignment
 
NonCopyableAndNonMovableoperator= (NonCopyableAndNonMovable &&)=delete
 move-asignment
 

Additional Inherited Members

- Protected Member Functions inherited from CLRX::AsmInputFilter
 AsmInputFilter (AsmInputFilterType _type)
 empty constructor
 
 AsmInputFilter (RefPtr< const AsmMacroSubst > _macroSubst, RefPtr< const AsmSource > _source, AsmInputFilterType _type)
 constructor with macro substitution and source
 
- Protected Attributes inherited from CLRX::AsmInputFilter
AsmInputFilterType type
 input filter type
 
size_t pos
 position in content
 
RefPtr< const AsmMacroSubstmacroSubst
 current macro substitution
 
RefPtr< const AsmSourcesource
 current source
 
std::vector< char > buffer
 buffer of line (can be not used)
 
std::vector< LineTranscolTranslations
 column translations
 
LineNo lineNo
 current line number
 

Detailed Description

assembler macro input filter (for macro filtering)


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