Ignore:
Timestamp:
Feb 6, 2018, 3:54:23 PM (2 years ago)
Author:
matszpk
Message:

CLRadeonExtender: DisasmAmd?&DisasmROCm: Check arg types and other fields before printing.
ROCmMetadata: Check arg types and other fields before generating. Escape number in string fields.
AsmROCm: Add additional pseudo-ops (only names) to set metadata info.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CLRadeonExtender/trunk/amdasm/AsmROCmInternals.h

    r3671 r3726  
    8181    ROCMCVAL_WAVEFRONT_SIZE,
    8282    ROCMCVAL_CALL_CONVENTION,
    83     ROCMCVAL_RUNTIME_LOADER_KERNEL_SYMBOL
     83    ROCMCVAL_RUNTIME_LOADER_KERNEL_SYMBOL,
     84   
     85    // metadata info
     86    ROCMCVAL_MD_WAVEFRONT_SIZE,
     87    ROCMCVAL_MD_KERNARG_SEGMENT_ALIGN,
     88    ROCMCVAL_MD_KERNARG_SEGMENT_SIZE,
     89    ROCMCVAL_MD_GROUP_SEGMENT_FIXED_SIZE,
     90    ROCMCVAL_MD_PRIVATE_SEGMENT_FIXED_SIZE,
     91    ROCMCVAL_MD_SGPRSNUM,
     92    ROCMCVAL_MD_VGPRSNUM,
     93    ROCMCVAL_MD_SPILLEDSGPRS,
     94    ROCMCVAL_MD_SPILLEDVGPRS,
     95    ROCMCVAL_MAX_FLAT_WORK_GROUP_SIZE
    8496};
    8597
     
    107119    static void addMetadata(AsmROCmHandler& handler, const char* pseudoOpPlace,
    108120                      const char* linePtr);
    109    
     121    // .md_version
     122    static void setMetadataVersion(AsmROCmHandler& handler, const char* pseudoOpPlace,
     123                      const char* linePtr);
     124    // .cws (set reqd_work_group_size or workgroupsizehint)
     125    static void setCWS(AsmROCmHandler& handler, const char* pseudoOpPlace,
     126                      const char* linePtr);
     127    // .work_group_size_hint
     128    static void setWorkGroupSizeHint(AsmROCmHandler& handler, const char* pseudoOpPlace,
     129                      const char* linePtr);
     130    // .fixed_work_group_size
     131    static void setFixedWorkGroupSize(AsmROCmHandler& handler, const char* pseudoOpPlace,
     132                      const char* linePtr);
     133    // .vectypehint
     134    static void setVecTypeHint(AsmROCmHandler& handler, const char* pseudoOpPlace,
     135                      const char* linePtr);
     136    // .md_symname
     137    static void setKernelSymName(AsmROCmHandler& handler, const char* pseudoOpPlace,
     138                      const char* linePtr);
     139    // .md_language
     140    static void setKernelLanguage(AsmROCmHandler& handler, const char* pseudoOpPlace,
     141                      const char* linePtr);
     142    // .printf (add printf)
     143    static void addPrintf(AsmROCmHandler& handler, const char* pseudoOpPlace,
     144                      const char* linePtr);
    110145    // .fkernel (define kernel as function kernel)
    111146    static void doFKernel(AsmROCmHandler& handler, const char* pseudoOpPlace,
Note: See TracChangeset for help on using the changeset viewer.