| 4314 | class DecodeGrp3_32 : public DecodeFunc { |
| 4315 | public: |
| 4316 | void decode(DecodeData* data, DecodedOp* op) const override { |
| 4317 | U32 rm = data->fetch8(); |
| 4318 | |
| 4319 | switch (G(rm)) { |
| 4320 | case 0: |
| 4321 | case 1: func(data, op, rm, TestR32I32, TestE32I32); op->imm = data->fetch32(); break; |
| 4322 | case 2: func(data, op, rm, NotR32, NotE32); break; |
| 4323 | case 3: func(data, op, rm, NegR32, NegE32); break; |
| 4324 | case 4: func(data, op, rm, MulR32, MulE32); break; |
| 4325 | case 5: func(data, op, rm, IMulR32, IMulE32); break; |
| 4326 | case 6: func(data, op, rm, DivR32, DivE32); break; |
| 4327 | case 7: func(data, op, rm, IDivR32, IDivE32); break; |
| 4328 | } |
| 4329 | } |
| 4330 | }; |
| 4331 | |
| 4332 | class DecodeGrp4_8 : public DecodeFunc { |