glasm: Implement EmitVertex and EndPrimitive

This commit is contained in:
ReinUsesLisp 2021-05-20 01:49:26 -03:00 committed by ameerj
parent f79cbbf814
commit 3d0ffc6ad0
2 changed files with 8 additions and 4 deletions

View file

@ -32,7 +32,7 @@ void EmitWorkgroupMemoryBarrier(EmitContext& ctx);
void EmitDeviceMemoryBarrier(EmitContext& ctx);
void EmitPrologue(EmitContext& ctx);
void EmitEpilogue(EmitContext& ctx);
void EmitEmitVertex(EmitContext& ctx, const IR::Value& stream);
void EmitEmitVertex(EmitContext& ctx, ScalarS32 stream);
void EmitEndPrimitive(EmitContext& ctx, const IR::Value& stream);
void EmitGetRegister(EmitContext& ctx);
void EmitSetRegister(EmitContext& ctx);

View file

@ -72,12 +72,16 @@ void EmitEpilogue(EmitContext& ctx) {
// TODO
}
void EmitEmitVertex(EmitContext& ctx, const IR::Value& stream) {
NotImplemented();
void EmitEmitVertex(EmitContext& ctx, ScalarS32 stream) {
ctx.Add("EMITS {};", stream);
}
void EmitEndPrimitive(EmitContext& ctx, const IR::Value& stream) {
NotImplemented();
if (!stream.IsImmediate()) {
// LOG_WARNING not immediate
}
ctx.reg_alloc.Consume(stream);
ctx.Add("ENDPRIM;");
}
void EmitGetRegister(EmitContext& ctx) {