decoder.cc (12045:31d9a81ba286) decoder.cc (12229:932ed6601823)
1/*
2 * Copyright (c) 2011 Google
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 341 unchanged lines hidden (view full) ---

350}
351
352Decoder::State
353Decoder::doVexOpcodeState(uint8_t nextByte)
354{
355 DPRINTF(Decoder, "Found VEX opcode %#x.\n", nextByte);
356
357 emi.opcode.op = nextByte;
1/*
2 * Copyright (c) 2011 Google
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 341 unchanged lines hidden (view full) ---

350}
351
352Decoder::State
353Decoder::doVexOpcodeState(uint8_t nextByte)
354{
355 DPRINTF(Decoder, "Found VEX opcode %#x.\n", nextByte);
356
357 emi.opcode.op = nextByte;
358 consumeByte();
358
359 switch (emi.opcode.type) {
360 case TwoByteOpcode:
361 return processOpcode(ImmediateTypeTwoByte, UsesModRMTwoByte);
362 case ThreeByte0F38Opcode:
363 return processOpcode(ImmediateTypeThreeByte0F38,
364 UsesModRMThreeByte0F38);
365 case ThreeByte0F3AOpcode:

--- 371 unchanged lines hidden ---
359
360 switch (emi.opcode.type) {
361 case TwoByteOpcode:
362 return processOpcode(ImmediateTypeTwoByte, UsesModRMTwoByte);
363 case ThreeByte0F38Opcode:
364 return processOpcode(ImmediateTypeThreeByte0F38,
365 UsesModRMThreeByte0F38);
366 case ThreeByte0F3AOpcode:

--- 371 unchanged lines hidden ---