glasm: Implement undef instructions
This commit is contained in:
		| @@ -74,11 +74,11 @@ void EmitIsHelperInvocation(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitYDirection(EmitContext& ctx); | ||||
| void EmitLoadLocal(EmitContext& ctx, IR::Inst& inst, ScalarU32 word_offset); | ||||
| void EmitWriteLocal(EmitContext& ctx, ScalarU32 word_offset, ScalarU32 value); | ||||
| void EmitUndefU1(EmitContext& ctx); | ||||
| void EmitUndefU8(EmitContext& ctx); | ||||
| void EmitUndefU16(EmitContext& ctx); | ||||
| void EmitUndefU32(EmitContext& ctx); | ||||
| void EmitUndefU64(EmitContext& ctx); | ||||
| void EmitUndefU1(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitUndefU8(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitUndefU16(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitUndefU32(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitUndefU64(EmitContext& ctx, IR::Inst& inst); | ||||
| void EmitLoadGlobalU8(EmitContext& ctx, IR::Inst& inst, Register address); | ||||
| void EmitLoadGlobalS8(EmitContext& ctx, IR::Inst& inst, Register address); | ||||
| void EmitLoadGlobalU16(EmitContext& ctx, IR::Inst& inst, Register address); | ||||
|   | ||||
| @@ -209,24 +209,24 @@ void EmitYDirection(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| } | ||||
|  | ||||
| void EmitUndefU1(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| void EmitUndefU1(EmitContext& ctx, IR::Inst& inst) { | ||||
|     ctx.Add("MOV.S {}.x,0;", inst); | ||||
| } | ||||
|  | ||||
| void EmitUndefU8(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| void EmitUndefU8(EmitContext& ctx, IR::Inst& inst) { | ||||
|     ctx.Add("MOV.S {}.x,0;", inst); | ||||
| } | ||||
|  | ||||
| void EmitUndefU16(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| void EmitUndefU16(EmitContext& ctx, IR::Inst& inst) { | ||||
|     ctx.Add("MOV.S {}.x,0;", inst); | ||||
| } | ||||
|  | ||||
| void EmitUndefU32(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| void EmitUndefU32(EmitContext& ctx, IR::Inst& inst) { | ||||
|     ctx.Add("MOV.S {}.x,0;\n", inst); | ||||
| } | ||||
|  | ||||
| void EmitUndefU64(EmitContext& ctx) { | ||||
|     NotImplemented(); | ||||
| void EmitUndefU64(EmitContext& ctx, IR::Inst& inst) { | ||||
|     ctx.LongAdd("MOV.S64 {}.x,0;", inst); | ||||
| } | ||||
|  | ||||
| void EmitGetZeroFromOp(EmitContext& ctx) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user