diff --git a/spirv/srCacheOp.pas b/spirv/srCacheOp.pas index 8a5d6df5..c21c12e7 100644 --- a/spirv/srCacheOp.pas +++ b/spirv/srCacheOp.pas @@ -15,9 +15,10 @@ interface type PsrCacheOp=^TsrCacheOp; TsrCacheOp=object - private + public pLeft,pRight:PsrCacheOp; - //---- + function c(n1,n2:PsrCacheOp):Integer; static; + private key:packed record place:PsrOpBlock; OpId:DWORD; @@ -25,7 +26,6 @@ interface count:DWORD; end; pData:PPsrRegNode; - function c(n1,n2:PsrCacheOp):Integer; static; public pDst:PsrNode; end; diff --git a/spirv/srConst.pas b/spirv/srConst.pas index 60f58fae..b9e38303 100644 --- a/spirv/srConst.pas +++ b/spirv/srConst.pas @@ -32,15 +32,15 @@ ntConst=class(TsrNodeVmt) PPsrConst=^PsrConst; PsrConst=^TsrConst; TsrConst=packed object(TsrNode) - private + public pPrev,pNext,pLeft,pRight:PsrConst; - //-- + function c(n1,n2:PsrConst):Integer; static; + private ID:TsrRefId; //post id fOpId:WORD; fCount:WORD; FType:PsrType; pData:PPsrNode; - function c(n1,n2:PsrConst):Integer; static; public property pType:PsrType read FType; property OpId:WORD read fOpId; diff --git a/spirv/srDecorate.pas b/spirv/srDecorate.pas index 8f3ac645..9f061179 100644 --- a/spirv/srDecorate.pas +++ b/spirv/srDecorate.pas @@ -19,14 +19,14 @@ interface PsrDecorate=^TsrDecorate; TsrDecorate=object - private + public pLeft,pRight:PsrDecorate; - //---- + function c(n1,n2:PsrDecorate):Integer; static; + private key:packed record data:PsrNode; param:array[0..2] of DWORD; end; - function c(n1,n2:PsrDecorate):Integer; static; public node:PSpirvOp; end; diff --git a/spirv/srFragLayout.pas b/spirv/srFragLayout.pas index 0be09edd..033aa97d 100644 --- a/spirv/srFragLayout.pas +++ b/spirv/srFragLayout.pas @@ -33,11 +33,11 @@ ntFragLayout=class(ntDescriptor) PsrFragLayout=^TsrFragLayout; TsrFragLayout=object(TsrDescriptor) - private + public pLeft,pRight:PsrFragLayout; - //---- - itype:TpsslInputType; function c(n1,n2:PsrFragLayout):Integer; static; + private + itype:TpsslInputType; public pReg:PsrRegNode; Procedure Init; inline; diff --git a/spirv/srInput.pas b/spirv/srInput.pas index 293954c2..79d0a07b 100644 --- a/spirv/srInput.pas +++ b/spirv/srInput.pas @@ -69,14 +69,14 @@ ntInput=class(ntDescriptor) PsrInput=^TsrInput; TsrInput=object(TsrDescriptor) - private + public pLeft,pRight:PsrInput; - //---- + function c(n1,n2:PsrInput):Integer; static; + private key:packed record itype:TpsslInputType; typeid:Byte; end; - function c(n1,n2:PsrInput):Integer; static; public pReg:PsrRegNode; property itype:TpsslInputType read key.itype; diff --git a/spirv/srLayout.pas b/spirv/srLayout.pas index 2b3eb2e2..1b1e4ab9 100644 --- a/spirv/srLayout.pas +++ b/spirv/srLayout.pas @@ -73,9 +73,10 @@ TVNode=record pLine:PspirvOp; end; TNodeList=specialize TNodeList; - private + public pLeft,pRight:PsrChain; - //-- + function c(n1,n2:PsrChain):Integer; static; + private fwrite_count:DWORD; //-- ID:TsrRefId; //post id @@ -88,7 +89,6 @@ TVNode=record FWriter:PsrNode; Fdtype:TsrDataType; FList:TNodeList; - function c(n1,n2:PsrChain):Integer; static; Procedure SetWriter(t:PsrNode); Function GetWriter:PsrNode; Procedure SetBuffer(t:PsrNode); diff --git a/spirv/srLiteral.pas b/spirv/srLiteral.pas index 1145ee92..c1e84c3f 100644 --- a/spirv/srLiteral.pas +++ b/spirv/srLiteral.pas @@ -29,7 +29,7 @@ ntLiteralConst=class(ntLiteral) PsrLiteral=^TsrLiteral; TsrLiteral=object(TsrNode) - private + public pLeft,pRight:PsrLiteral; public dtype:TsrDataType; diff --git a/spirv/srOp.pas b/spirv/srOp.pas index ae4d0af6..4f3e66a3 100644 --- a/spirv/srOp.pas +++ b/spirv/srOp.pas @@ -50,8 +50,9 @@ ntFunc=class(TsrNodeVmt) POpParamNode=^TOpParamNode; TOpParamNode=packed object - private + public pNext:POpParamNode; + private pParent:PspirvOp; pValue:PsrNode; procedure SetValue(v:PsrNode); @@ -69,8 +70,9 @@ ntFunc=class(TsrNodeVmt) PsrOpCustom=^TsrOpCustom; TsrOpCustom=object(TsrNode) - private + public pPrev,pNext:PsrOpCustom; + private pParent:PsrOpBlock; end; @@ -181,14 +183,14 @@ ntFunc=class(TsrNodeVmt) PSpirvFunc=^TSpirvFunc; TSpirvFunc=object(TsrNode) - private + public pPrev,pNext,pLeft,pRight:PSpirvFunc; - //---- + function c(n1,n2:PSpirvFunc):Integer; static; + private FName:RawByteString; FTop:TsrOpBlock; FBlock:PsrOpBlock; ID:TsrRefId; //post id - function c(n1,n2:PSpirvFunc):Integer; static; public property Name:RawByteString read FName; property pBlock:PsrOpBlock read FBlock; diff --git a/spirv/srPrivate.pas b/spirv/srPrivate.pas index 2bd92ae5..65f2da17 100644 --- a/spirv/srPrivate.pas +++ b/spirv/srPrivate.pas @@ -66,16 +66,16 @@ TVNode=record end; TNodeList=specialize TNodeList; TVoltList=specialize TNodeList; - private + public pLeft,pRight:PsrPrivate; - //---- + function c(n1,n2:PsrPrivate):Integer; static; + private fwrite_count:DWORD; // FSource:PsrRegSlot; // FLineList:TNodeList; FVoltList:TVoltList; - function c(n1,n2:PsrPrivate):Integer; static; Procedure SetRegType(rtype:TsrDataType); function GetRegType:TsrDataType; public diff --git a/spirv/srReg.pas b/spirv/srReg.pas index b6216dda..7c74cc08 100644 --- a/spirv/srReg.pas +++ b/spirv/srReg.pas @@ -46,9 +46,9 @@ TRegDNode=record TRegDNodeList=specialize TNodeStack; TsrRegNode=packed object(TsrNode) - private + public pPrev,pNext:PsrRegNode; - // + private ID:TsrRefId; //post id F:bitpacked record dtype:TsrDataType; diff --git a/spirv/srTypes.pas b/spirv/srTypes.pas index b086fe45..4c7c90c1 100644 --- a/spirv/srTypes.pas +++ b/spirv/srTypes.pas @@ -26,16 +26,16 @@ ntType=class(TsrNodeVmt) PPsrType=^PsrType; PsrType=^TsrType; TsrType=packed object(TsrNode) - private + public pPrev,pNext,pLeft,pRight:PsrType; - // + function c(n1,n2:PsrType):Integer; static; + private ID:TsrRefId; //post id fdtype:TsrDataType; fsize:DWORD; fOpId:WORD; fcount:WORD; pData:PPsrNode; - function c(n1,n2:PsrType):Integer; static; public property size:DWORD read fsize; property OpId:WORD read fOpId; diff --git a/spirv/srUniform.pas b/spirv/srUniform.pas index c3a5a0aa..933baffe 100644 --- a/spirv/srUniform.pas +++ b/spirv/srUniform.pas @@ -52,15 +52,15 @@ ntUniform=class(ntDescriptor) PsrUniform=^TsrUniform; TsrUniform=object(TsrDescriptor) - private + public pLeft,pRight:PsrUniform; - //---- + function c(n1,n2:PsrUniform):Integer; static; + private pLayout:PsrDataLayout; // fwrite_count:DWORD; // FReg:TsrRegUniform; - function c(n1,n2:PsrUniform):Integer; static; public Procedure Init; inline; function pReg:PsrRegUniform; inline; diff --git a/spirv/srVariable.pas b/spirv/srVariable.pas index 25ab7532..eaf080e6 100644 --- a/spirv/srVariable.pas +++ b/spirv/srVariable.pas @@ -30,9 +30,9 @@ ntVariable=class(TsrNodeVmt) PsrVariable=^TsrVariable; TsrVariable=packed object(TsrNode) - private + public pPrev,pNext:PsrVariable; - // + private fwrite_count:DWORD; ID:TsrRefId; //post id FType:PsrType; diff --git a/spirv/srVertLayout.pas b/spirv/srVertLayout.pas index 8fe3f74d..a1b0735b 100644 --- a/spirv/srVertLayout.pas +++ b/spirv/srVertLayout.pas @@ -23,11 +23,11 @@ ntVertLayout=class(ntDescriptor) PsrVertLayout=^TsrVertLayout; TsrVertLayout=object(TsrDescriptor) - private + public pLeft,pRight:PsrVertLayout; - //---- - pLayout:PsrDataLayout; function c(n1,n2:PsrVertLayout):Integer; static; + private + pLayout:PsrDataLayout; public pReg:PsrRegNode; procedure Init(p:PsrDataLayout); inline;