| 2854 | } |
| 2855 | |
| 2856 | void EbReg(int instruction, int eb, struct Data* data) { |
| 2857 | while (data->valid) { |
| 2858 | Reg* reg = &cpu->reg[E8(eb)]; |
| 2859 | U8* e = cpu->reg8[E(eb)]; |
| 2860 | |
| 2861 | newInstruction(instruction, data->flags); |
| 2862 | reg->u32 = DEFAULT; |
| 2863 | *e = data->var1; |
| 2864 | runTestCPU(); |
| 2865 | assertResult(data, cpu, instruction, reg->u8, 0, eb, -1, 0, 8); |
| 2866 | |
| 2867 | newInstruction(instruction, data->flags); |
| 2868 | |
| 2869 | // this will generate flags so the above code can ignore flag generation |
| 2870 | // cmp eax, 0 |
| 2871 | pushCode8(0x83); |
| 2872 | pushCode8(0xf8); |
| 2873 | pushCode8(0); |
| 2874 | |
| 2875 | reg->u32 = DEFAULT; |
| 2876 | *e = data->var1; |
| 2877 | runTestCPU(); |
| 2878 | assertResult(data, cpu, instruction, reg->u8, 0, eb, -1, 0, 8, true); |
| 2879 | |
| 2880 | data++; |
| 2881 | } |
| 2882 | } |
| 2883 | |
| 2884 | void LeaGw() { |
| 2885 | int i; |
no test coverage detected