CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Classes | Namespaces | Enumerations
Assembler.h File Reference

an assembler for Radeon GPU's More...

#include <CLRX/Config.h>
#include <algorithm>
#include <cstdint>
#include <string>
#include <istream>
#include <ostream>
#include <iostream>
#include <vector>
#include <utility>
#include <stack>
#include <list>
#include <unordered_set>
#include <unordered_map>
#include <CLRX/utils/Utilities.h>
#include <CLRX/utils/Containers.h>
#include <CLRX/utils/DTree.h>
#include <CLRX/utils/GPUId.h>
#include <CLRX/amdasm/Commons.h>
#include <CLRX/amdasm/AsmSource.h>
#include <CLRX/amdasm/AsmFormats.h>
#include <CLRX/amdasm/AsmDefs.h>

Go to the source code of this file.

Classes

class  CLRX::ISAUsageHandler
 ISA (register and regvar) Usage handler. More...
 
struct  CLRX::ISAUsageHandler::ReadPos
 stgructure that hold read position to store later More...
 
struct  CLRX::ISAUsageHandler::RegVarUsageInt
 
struct  CLRX::ISAUsageHandler::Chunk
 
class  CLRX::ISALinearDepHandler
 ISA regvar linear handler. More...
 
class  CLRX::GCNUsageHandler
 GCN (register and regvar) Usage handler. More...
 
class  CLRX::ISAWaitHandler
 wait handler More...
 
struct  CLRX::ISAWaitHandler::ReadPos
 
class  CLRX::ISAAssembler
 ISA assembler class. More...
 
class  CLRX::GCNAssembler
 GCN arch assembler. More...
 
struct  CLRX::GCNAssembler::Regs
 register pool numbers More...
 
class  CLRX::AsmRegAllocator
 
struct  CLRX::AsmRegAllocator::NextBlock
 
struct  CLRX::AsmRegAllocator::SSAInfo
 
struct  CLRX::AsmRegAllocator::CodeBlock
 
struct  CLRX::AsmRegAllocator::LinearDep
 
struct  CLRX::AsmRegAllocator::VIdxSetEntry
 
class  CLRX::AsmWaitScheduler
 Assembler Wait scheduler. More...
 
struct  CLRX::AsmClause
 assembler's clause (if,else,macro,rept) More...
 
class  CLRX::Assembler
 main class of assembler More...
 

Namespaces

 CLRX
 main namespace
 

Enumerations

enum  : cxuint { ASM_POLICY_DEFAULT = CLRX_VERSION_NUMBER, ASM_POLICY_UNIFIED_SGPR_COUNT = CLRX_POLICY_UNIFIED_SGPR_COUNT }
 
enum  : Flags {
  CLRX::ASM_WARNINGS = 1, CLRX::ASM_FORCE_ADD_SYMBOLS = 2, CLRX::ASM_ALTMACRO = 4, CLRX::ASM_BUGGYFPLIT = 8,
  ASM_MACRONOCASE = 16, CLRX::ASM_OLDMODPARAM = 32, CLRX::ASM_TESTRESOLVE = (1U<<30), CLRX::ASM_TESTRUN = (1U<<31),
  CLRX::ASM_ALL
}
 
enum  CLRX::AsmClauseType {
  CLRX::AsmClauseType::IF, CLRX::AsmClauseType::ELSEIF, CLRX::AsmClauseType::ELSE, CLRX::AsmClauseType::REPEAT,
  CLRX::AsmClauseType::MACRO
}
 type of clause More...
 

Detailed Description

an assembler for Radeon GPU's