mirror of
https://github.com/ryujinx-mirror/ryujinx.git
synced 2025-08-30 01:16:26 -05:00
Add FVCTZS (fixed point variant) and LD1 (single structure variant) instructions
This commit is contained in:
@@ -405,17 +405,17 @@ namespace ChocolArm64.Instruction
|
||||
return Res;
|
||||
}
|
||||
|
||||
public static AVec Fcvtzs_V64(AVec Vector, int Size)
|
||||
public static AVec Fcvtzs_V64(AVec Vector, int FBits, int Size)
|
||||
{
|
||||
return Fcvtzs_V(Vector, Size, 2);
|
||||
return Fcvtzs_V(Vector, FBits, Size, 2);
|
||||
}
|
||||
|
||||
public static AVec Fcvtzs_V128(AVec Vector, int Size)
|
||||
public static AVec Fcvtzs_V128(AVec Vector, int FBits, int Size)
|
||||
{
|
||||
return Fcvtzs_V(Vector, Size, 4);
|
||||
return Fcvtzs_V(Vector, FBits, Size, 4);
|
||||
}
|
||||
|
||||
private static AVec Fcvtzs_V(AVec Vector, int Size, int Bytes)
|
||||
private static AVec Fcvtzs_V(AVec Vector, int FBits, int Size, int Bytes)
|
||||
{
|
||||
AVec Res = new AVec();
|
||||
|
||||
@@ -427,7 +427,7 @@ namespace ChocolArm64.Instruction
|
||||
{
|
||||
float Value = Vector.ExtractSingle(Index);
|
||||
|
||||
Res = InsertSVec(Res, Index, Size + 2, SatSingleToInt32(Value));
|
||||
Res = InsertSVec(Res, Index, Size + 2, SatSingleToInt32(Value, FBits));
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -436,7 +436,7 @@ namespace ChocolArm64.Instruction
|
||||
{
|
||||
double Value = Vector.ExtractDouble(Index);
|
||||
|
||||
Res = InsertSVec(Res, Index, Size + 2, SatDoubleToInt64(Value));
|
||||
Res = InsertSVec(Res, Index, Size + 2, SatDoubleToInt64(Value, FBits));
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user