@@ -1399,20 +1399,62 @@ def __post_init__(self):
13991399 'npxor' , 'vpxor' , 'vpxord' , 'vpxorq' ,
14001400 'pshufb' , 'vpshufb' ,
14011401 'pclmulqdq' , 'vpclmulqdq' ,
1402- 'movdqa' , 'movdqu' , 'vmovdqa' , 'vmovdqu' ,
1403- 'padd' , 'psub' , 'pmul' ,
1404- 'psll' , 'psrl' , 'psra' ,
14051402 'vpaddd' , 'vpsubd' , 'vpmulld' , 'pmaddwd'
14061403 ]
1404+
1405+ # https://docs.nvidia.com/cuda/cuda-binary-utilities/index.html#turing-turing-instruction-set-table
14071406GPU_INDICATORS = [
1408- 'glbind' , 'glvertex' , 'glcolor' , 'glbegin' , 'glend' , 'glenable' , 'gldisable' , 'glget' , 'glset' , 'glload' , 'glsave' , 'gluniform' , 'gluseprogram' , 'glattachshader' , 'gldraw' , 'glclear' , 'glviewport' , 'glmatrix' , 'glpushmatrix' , 'glpopmatrix' ,
1409- 'cuda' , 'cuinit' , 'cucontext' , 'cudriver' , 'cugpu' , 'cudevice' , 'cumem' , 'cuptr' , 'cukernel' , 'culaunch' , 'cugrid' , 'cublock' , 'cuthread' , 'cufree' , 'cucopy' ,
1410- 'clgetplatform' , 'clgetdevice' , 'clcreatecontext' , 'clcreatecommandqueue' , 'clcreateshared' , 'clcreatekernel' , 'clsetkernelarg' , 'clenqueuendrange' , 'clfinish' , 'clrelease' , 'clbuildprogram' ,
1411- 'd3d' , 'd3d11' , 'd3d12' , 'create' , 'device' , 'swapchain' , 'rendertarget' , 'shaders' , 'ps_' , 'vs_' , 'gs_' , 'cs_' , 'hs_' , 'ds_' ,
1412- 'vkcreate' , 'vkdestroy' , 'vkallocate' , 'vkfree' , 'vkqueue' , 'vksubmit' , 'vkwait' , 'vkacquire' , 'vkpresent' , 'vkcmd' , 'vkbegin' , 'vkend' , 'vkbind' , 'vkdraw' , 'vkdispatch' , 'vkcopy' , 'vkblit' , 'vkclear' , 'vkfill' , 'vkupdate' ,
1413- 'mtl' , 'metal' , 'mtldevice' , 'mtlcommand' , 'mtlrender' , 'mtlcompute' , 'mtlbuffer' , 'mtltexture' , 'mtlfunction' , 'mtllibrary' , 'mtlencoder' , 'mtlpass' ,
1414- 'gpu' , 'compute' , 'shader' , 'vertex' , 'fragment' , 'pixel' , 'kernel' , 'workgroup' , 'local' , 'global' , 'buffer' , 'texture' , 'surface' ,
1415- ]
1407+ 'acqbulk' , 'acqshminit' , 'atom' , 'atomg' , 'atoms' , 'b2r' , 'bgmma' ,
1408+ 'bmov' , 'bmma' , 'bmsk' , 'bpt' , 'brx' , 'brxu' ,
1409+ 'bssy' , 'bsync' , 'bvote' , 'cctl' , 'cctll' , 'cctlt' ,
1410+ 'cgaerrbar' , 'clclear' , 'clcolor' , 'clcreatecommandqueue' ,
1411+ 'clcreatecontext' , 'clcreatekernel' , 'clcreateshared' , 'cldevice' ,
1412+ 'clenqueuendrange' , 'clfinish' , 'clgetdevice' , 'clgetplatform' , 'clcopy' ,
1413+ 'clrelease' , 'clsetkernelarg' , 'compute' , 'credux' , 'cs2r' ,
1414+ 'cs2ur' , 'cuda' , 'cublock' , 'cucontext' , 'cucopy' , 'cudevice' ,
1415+ 'cudriver' , 'cufree' , 'cugpu' , 'cugrid' , 'cuinit' , 'cukernel' , 'culaunch' ,
1416+ 'cumem' , 'cuptr' , 'cuthread' , 'd3d' , 'd3d11' , 'd3d12' , 'depbar' ,
1417+ 'dfma' , 'dmma' , 'elect' , 'endcollective' ,
1418+ 'errbar' , 'fadd32i' ,
1419+ 'fchk' , 'ffma2' , 'ffma32i' , 'fhfma' , 'fmnmx' ,
1420+ 'fmnmx3' , 'fmul2' , 'fmul32i' , 'fragment' ,
1421+ 'fswzadd' , 'getlmembase' , 'glattachshader' , 'glbegin' , 'glbind' ,
1422+ 'glclear' , 'glcolor' , 'gldisable' , 'gldraw' , 'glend' , 'glenable' , 'glget' ,
1423+ 'glload' , 'glmatrix' , 'glpopmatrix' , 'glpushmatrix' , 'glsave' , 'glset' ,
1424+ 'gluniform' , 'gluseprogram' , 'glvertex' , 'glviewport' , 'gpu' ,
1425+ 'gs_' , 'hadd2' , 'hadd2_32i' , 'hfma2' , 'hfma2_32i' , 'hgmma' , 'hmma' ,
1426+ 'hmnmx2' , 'hmul2' , 'hmul2_32i' ,
1427+ 'iadd3' , 'iadd32i' , 'idp4a' , 'igmma' ,
1428+ 'imma' , 'imnmx' , 'imul32i' , 'iscadd' , 'iscadd32i' ,
1429+ 'jmxu' , 'ldcu' ,
1430+ 'ldgdepbar' , 'ldgmc' , 'ldgsts' 'ldsm' , 'ldtm' ,
1431+ 'lepc' , 'lop3' , 'lop32i' , 'metal' ,
1432+ 'mov32i' , 'movm' , 'mtl' , 'mtlbuffer' , 'mtlcommand' , 'mtlcompute' ,
1433+ 'mtldevice' , 'mtlencoder' , 'mtlfunction' , 'mtllibrary' , 'mtlpass' ,
1434+ 'mtlrender' , 'mtltexture' , 'mufu' , 'omma' , 'p2r' ,
1435+ 'plop3' , 'pmtrig' , 'preexit' ,
1436+ 'qgmma' , 'qspc' , 'r2b' , 'r2p' , 'r2ur' , 'redas' , 'redg' , 'redux' ,
1437+ 'rendertarget' , 'rpcmov' , 'rtt' , 's2r' , 's2ur' , 'setctaid' ,
1438+ 'setlmembase' , 'shader' , 'shaders' , 'shf' , 'shfl' , 'sgxt' ,
1439+ 'stas' , 'stg' , 'stsm' , 'sttm' , 'suatom' , 'suld' ,
1440+ 'sured' , 'sust' , 'swapchain' , 'syncs' , 'tex' , 'texture' , 'tld' ,
1441+ 'tld4' , 'tmml' , 'txd' , 'txq' , 'ublkcp' , 'ublkpf' , 'ublkred' , 'ubmsk' ,
1442+ 'ubrev' , 'ucgabar_arv' , 'ucgabar_wait' , 'uclea' , 'uf2f' , 'uf2fp' , 'uf2i' ,
1443+ 'uf2ip' , 'ufadd' , 'uffma' , 'uflo' , 'ufmnmx' , 'ufmul' , 'ufrnd' , 'ufsel' ,
1444+ 'ugetnextworkid' , 'ui2f' , 'ui2fp' , 'ui2i' , 'ui2ip' ,
1445+ 'uiabs' , 'uiadd3' , 'uiadd3.64' , 'uimad' , 'uimnmx' , 'uldc' , 'ulea' ,
1446+ 'ulepc' , 'ulop' , 'ulop3' , 'ulop32i' , 'umemsets' , 'up2ur' , 'uplop3' ,
1447+ 'upopc' , 'ur2up' , 'uredgr' , 'usel' , 'usetmaxreg' ,
1448+ 'usgxt' , 'ushf' , 'ushl' , 'ushr' , 'ustgr' , 'utcatomsws' , 'utcbar' , 'utccp' ,
1449+ 'utchmma' , 'utcimma' , 'utcomma' , 'utcqmma' , 'utcshift' , 'utmacctl' ,
1450+ 'utmacmdflush' , 'utmaldg' , 'utmapf' , 'utmaredg' , 'utmastg' , 'uviadd' ,
1451+ 'uvimnmx' , 'uvirtcount' , 'vabsdiff4' , 'vertex' , 'vhmnmx' ,
1452+ 'viadd' , 'viaddmnmx' , 'vimnmx' , 'vimnmx3' , 'vkacquire' , 'vkallocate' ,
1453+ 'vkbegin' , 'vkbind' , 'vkblit' , 'vkclear' , 'vkcmd' , 'vkcopy' , 'vkcreate' ,
1454+ 'vkdestroy' , 'vkdispatch' , 'vkdraw' , 'vkend' , 'vkfill' , 'vkfree' ,
1455+ 'vkpresent' , 'vkqueue' , 'vksubmit' , 'vkupdate' , 'vkwait' ,
1456+ 'warpgroup' , 'warpgroupset' , 'warpsync' , 'vote'
1457+ ]
14161458
14171459IMPLICIT_REGS_X86 = {
14181460 'mul' : {'read' : {'ax' , 'eax' , 'rax' }, 'write' : {'dx' , 'ax' , 'edx' , 'eax' , 'rdx' , 'rax' }},
0 commit comments