mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-07-22 18:15:14 +00:00
initialize s16/s8 types
This commit is contained in:
parent
d7a45554ad
commit
efc6262c9e
@ -272,12 +272,14 @@ Id EmitConvertU32U8(EmitContext& ctx, Id value) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Id EmitConvertS32S8(EmitContext& ctx, Id value) {
|
Id EmitConvertS32S8(EmitContext& ctx, Id value) {
|
||||||
|
ASSERT(ctx.profile.support_int8); // TODO
|
||||||
const Id as_s8 = ctx.OpBitcast(ctx.S8, value);
|
const Id as_s8 = ctx.OpBitcast(ctx.S8, value);
|
||||||
const Id as_s32 = ctx.OpSConvert(ctx.S32[1], as_s8);
|
const Id as_s32 = ctx.OpSConvert(ctx.S32[1], as_s8);
|
||||||
return ctx.OpBitcast(ctx.U32[1], as_s32);
|
return ctx.OpBitcast(ctx.U32[1], as_s32);
|
||||||
}
|
}
|
||||||
|
|
||||||
Id EmitConvertS32S16(EmitContext& ctx, Id value) {
|
Id EmitConvertS32S16(EmitContext& ctx, Id value) {
|
||||||
|
ASSERT(ctx.profile.support_int16); // TODO
|
||||||
const Id as_s16 = ctx.OpBitcast(ctx.S16, value);
|
const Id as_s16 = ctx.OpBitcast(ctx.S16, value);
|
||||||
const Id as_s32 = ctx.OpSConvert(ctx.S32[1], as_s16);
|
const Id as_s32 = ctx.OpSConvert(ctx.S32[1], as_s16);
|
||||||
return ctx.OpBitcast(ctx.U32[1], as_s32);
|
return ctx.OpBitcast(ctx.U32[1], as_s32);
|
||||||
|
@ -117,7 +117,9 @@ void EmitContext::DefineArithmeticTypes() {
|
|||||||
void_id = Name(TypeVoid(), "void_id");
|
void_id = Name(TypeVoid(), "void_id");
|
||||||
U1[1] = Name(TypeBool(), "bool_id");
|
U1[1] = Name(TypeBool(), "bool_id");
|
||||||
U8 = Name(TypeUInt(8), "u8_id");
|
U8 = Name(TypeUInt(8), "u8_id");
|
||||||
|
S8 = Name(TypeSInt(8), "i8_id");
|
||||||
U16 = Name(TypeUInt(16), "u16_id");
|
U16 = Name(TypeUInt(16), "u16_id");
|
||||||
|
S16 = Name(TypeSInt(16), "i16_id");
|
||||||
if (info.uses_fp16) {
|
if (info.uses_fp16) {
|
||||||
F16[1] = Name(TypeFloat(16), "f16_id");
|
F16[1] = Name(TypeFloat(16), "f16_id");
|
||||||
U16 = Name(TypeUInt(16), "u16_id");
|
U16 = Name(TypeUInt(16), "u16_id");
|
||||||
|
Loading…
Reference in New Issue
Block a user