mirror of
https://github.com/GreemDev/Ryujinx.git
synced 2024-11-24 18:20:12 +01:00
36ec1bc6c0
* Relax block ordering constraints Before `block.Next` had to follow `block.ListNext`, now it does not. Instead `CodeGenerator` will now emit the necessary jump instructions to ensure control flow. This makes control flow and block order modifications easier. It also eliminates some simple cases of redundant branches. * Set PPTC version
70 lines
1.3 KiB
C#
70 lines
1.3 KiB
C#
namespace ARMeilleure.IntermediateRepresentation
|
|
{
|
|
enum Instruction
|
|
{
|
|
Add,
|
|
BitwiseAnd,
|
|
BitwiseExclusiveOr,
|
|
BitwiseNot,
|
|
BitwiseOr,
|
|
BranchIf,
|
|
ByteSwap,
|
|
Call,
|
|
Compare,
|
|
CompareAndSwap,
|
|
CompareAndSwap16,
|
|
CompareAndSwap8,
|
|
ConditionalSelect,
|
|
ConvertI64ToI32,
|
|
ConvertToFP,
|
|
ConvertToFPUI,
|
|
Copy,
|
|
CountLeadingZeros,
|
|
Divide,
|
|
DivideUI,
|
|
Load,
|
|
Load16,
|
|
Load8,
|
|
LoadArgument,
|
|
Multiply,
|
|
Multiply64HighSI,
|
|
Multiply64HighUI,
|
|
Negate,
|
|
Return,
|
|
RotateRight,
|
|
ShiftLeft,
|
|
ShiftRightSI,
|
|
ShiftRightUI,
|
|
SignExtend16,
|
|
SignExtend32,
|
|
SignExtend8,
|
|
StackAlloc,
|
|
Store,
|
|
Store16,
|
|
Store8,
|
|
Subtract,
|
|
Tailcall,
|
|
VectorCreateScalar,
|
|
VectorExtract,
|
|
VectorExtract16,
|
|
VectorExtract8,
|
|
VectorInsert,
|
|
VectorInsert16,
|
|
VectorInsert8,
|
|
VectorOne,
|
|
VectorZero,
|
|
VectorZeroUpper64,
|
|
VectorZeroUpper96,
|
|
ZeroExtend16,
|
|
ZeroExtend32,
|
|
ZeroExtend8,
|
|
|
|
Clobber,
|
|
Extended,
|
|
Fill,
|
|
LoadFromContext,
|
|
Spill,
|
|
SpillArg,
|
|
StoreToContext
|
|
}
|
|
} |