shader_bytecode: Add SubOp decoding.

merge-requests/60/head
bunnei 2018-04-09 22:09:23 +07:00
parent 50023bdae7
commit 5a47832221
1 changed files with 10 additions and 0 deletions

@ -265,6 +265,15 @@ enum class Pred : u64 {
NeverExecute = 0xf, NeverExecute = 0xf,
}; };
enum class SubOp : u64 {
Cos = 0x0,
Sin = 0x1,
Ex2 = 0x2,
Lg2 = 0x3,
Rcp = 0x4,
Rsq = 0x5,
};
#pragma pack(1) #pragma pack(1)
union Instruction { union Instruction {
Instruction& operator=(const Instruction& instr) { Instruction& operator=(const Instruction& instr) {
@ -276,6 +285,7 @@ union Instruction {
BitField<0, 8, Register> gpr1; BitField<0, 8, Register> gpr1;
BitField<8, 8, Register> gpr2; BitField<8, 8, Register> gpr2;
BitField<16, 4, Pred> pred; BitField<16, 4, Pred> pred;
BitField<20, 7, SubOp> sub_op;
BitField<39, 8, Register> gpr3; BitField<39, 8, Register> gpr3;
BitField<45, 1, u64> nb; BitField<45, 1, u64> nb;
BitField<46, 1, u64> aa; BitField<46, 1, u64> aa;