zero pipeline-desc memory for hashing
This commit is contained in:
parent
8e9f7b4945
commit
91c7ef684e
@ -760,7 +760,7 @@ String G_D12_NameFromObject(Arena *arena, ID3D12Object *object)
|
||||
|
||||
G_D12_Pipeline *G_D12_PipelineFromDesc(G_D12_PipelineDesc desc)
|
||||
{
|
||||
u64 hash = HashString(StringFromStruct(&desc));
|
||||
u64 hash = G_D12_HashFromPipelineDesc(desc);
|
||||
|
||||
// Fetch pipeline from cache
|
||||
G_D12_Pipeline *pipeline = 0;
|
||||
@ -837,6 +837,8 @@ G_D12_Pipeline *G_D12_PipelineFromDesc(G_D12_PipelineDesc desc)
|
||||
);
|
||||
}
|
||||
|
||||
LogInfoF("Creating pipeline %F", FmtString(pipeline_name));
|
||||
|
||||
// Create PSO
|
||||
ID3D12PipelineState *pso = 0;
|
||||
if (ok)
|
||||
@ -1005,6 +1007,8 @@ G_D12_Pipeline *G_D12_PipelineFromDesc(G_D12_PipelineDesc desc)
|
||||
Panic(error_str);
|
||||
}
|
||||
|
||||
LogInfoF("Created pipeline %F", FmtString(pipeline_name));
|
||||
|
||||
pipeline->pso = pso;
|
||||
pipeline->error = error_str;
|
||||
pipeline->ok = ok;
|
||||
@ -1014,6 +1018,11 @@ G_D12_Pipeline *G_D12_PipelineFromDesc(G_D12_PipelineDesc desc)
|
||||
return pipeline;
|
||||
}
|
||||
|
||||
u64 G_D12_HashFromPipelineDesc(G_D12_PipelineDesc desc)
|
||||
{
|
||||
return HashString(StringFromStruct(&desc));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Queue
|
||||
|
||||
@ -2171,7 +2180,6 @@ G_D12_StagingRegionNode *G_D12_PushStagingRegion(G_D12_CmdList *cl, u64 size)
|
||||
if (old_ring)
|
||||
{
|
||||
// FIXME: Queue old ring for deletion with command list
|
||||
DEBUGBREAKABLE;
|
||||
}
|
||||
}
|
||||
Unlock(&lock);
|
||||
@ -2582,7 +2590,8 @@ i64 G_CommitCommandList(G_CommandListHandle cl_handle)
|
||||
// Fetch pipeline
|
||||
G_D12_Pipeline *pipeline = 0;
|
||||
{
|
||||
G_D12_PipelineDesc pipeline_desc = Zi;
|
||||
G_D12_PipelineDesc pipeline_desc;
|
||||
ZeroStruct(&pipeline_desc);
|
||||
pipeline_desc.cs = cmd->compute.cs;
|
||||
pipeline = G_D12_PipelineFromDesc(pipeline_desc);
|
||||
}
|
||||
@ -2638,7 +2647,8 @@ i64 G_CommitCommandList(G_CommandListHandle cl_handle)
|
||||
// Fetch pipeline
|
||||
G_D12_Pipeline *pipeline = 0;
|
||||
{
|
||||
G_D12_PipelineDesc pipeline_desc = Zi;
|
||||
G_D12_PipelineDesc pipeline_desc;
|
||||
ZeroStruct(&pipeline_desc);
|
||||
pipeline_desc.vs = cmd->rasterize.vs;
|
||||
pipeline_desc.ps = cmd->rasterize.ps;
|
||||
{
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Pipeline types
|
||||
|
||||
// NOTE: Must be zero initialized (including padding bits) for hashing
|
||||
Struct(G_D12_PipelineDesc)
|
||||
{
|
||||
VertexShader vs;
|
||||
@ -534,6 +535,7 @@ String G_D12_NameFromObject(Arena *arena, ID3D12Object *object);
|
||||
//~ Pipeline
|
||||
|
||||
G_D12_Pipeline *G_D12_PipelineFromDesc(G_D12_PipelineDesc desc);
|
||||
u64 G_D12_HashFromPipelineDesc(G_D12_PipelineDesc desc);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Queue
|
||||
|
||||
@ -436,8 +436,6 @@ void S_TickForever(WaveLaneCtx *lane)
|
||||
bot->control.move.y = SinF32(move_t);
|
||||
bot->control.move.y += move_bias;
|
||||
bot->control.look = MulVec2(VEC2(CosF32(look_t), SinF32(look_t)), 3);
|
||||
|
||||
DEBUGBREAKABLE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user