one_byte_opcodes.isa (4482:7ca486cfc7a6) | one_byte_opcodes.isa (4519:f8da6b45573f) |
---|---|
1// Copyright (c) 2007 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// Redistribution and use of this software in source and binary forms, 5// with or without modification, are permitted provided that the 6// following conditions are met: 7// 8// The software must be used only for Non-Commercial Use which means any --- 47 unchanged lines hidden (view full) --- 56//////////////////////////////////////////////////////////////////// 57// 58// Decode the one byte opcodes 59// 60 610x1: decode OPCODE_OP_TOP5 { 62 format WarnUnimpl { 63 0x00: decode OPCODE_OP_BOTTOM3 { | 1// Copyright (c) 2007 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// Redistribution and use of this software in source and binary forms, 5// with or without modification, are permitted provided that the 6// following conditions are met: 7// 8// The software must be used only for Non-Commercial Use which means any --- 47 unchanged lines hidden (view full) --- 56//////////////////////////////////////////////////////////////////// 57// 58// Decode the one byte opcodes 59// 60 610x1: decode OPCODE_OP_TOP5 { 62 format WarnUnimpl { 63 0x00: decode OPCODE_OP_BOTTOM3 { |
64 0x4: Inst::ADD(rAl,Ib); 65 0x5: Inst::ADD(rAx,Iz); | 64 0x4: ADD(); 65 0x5: ADD(); |
66 0x6: push_ES(); 67 0x7: pop_ES(); | 66 0x6: push_ES(); 67 0x7: pop_ES(); |
68 default: MultiInst::ADD(OPCODE_OP_BOTTOM3, 69 [Eb,Gb],[Ev,Gv],[Gb,Eb],[Gv,Ev]); | 68 default: ADD(); |
70 } 71 0x01: decode OPCODE_OP_BOTTOM3 { 72 0x0: or_Eb_Gb(); 73 0x1: or_Ev_Gv(); 74 0x2: or_Gb_Eb(); 75 0x3: or_Gv_Ev(); 76 0x4: or_Al_Ib(); 77 0x5: or_rAX_Iz(); --- 40 unchanged lines hidden (view full) --- 118 0x3: sub_Gv_Ev(); 119 0x4: sub_Al_Ib(); 120 0x5: sub_rAX_Iz(); 121 0x6: M5InternalError::error( 122 {{"Tried to execute the CS segment override prefix!"}}); 123 0x7: das(); 124 } 125 0x06: decode OPCODE_OP_BOTTOM3 { | 69 } 70 0x01: decode OPCODE_OP_BOTTOM3 { 71 0x0: or_Eb_Gb(); 72 0x1: or_Ev_Gv(); 73 0x2: or_Gb_Eb(); 74 0x3: or_Gv_Ev(); 75 0x4: or_Al_Ib(); 76 0x5: or_rAX_Iz(); --- 40 unchanged lines hidden (view full) --- 117 0x3: sub_Gv_Ev(); 118 0x4: sub_Al_Ib(); 119 0x5: sub_rAX_Iz(); 120 0x6: M5InternalError::error( 121 {{"Tried to execute the CS segment override prefix!"}}); 122 0x7: das(); 123 } 124 0x06: decode OPCODE_OP_BOTTOM3 { |
126 0x4: Inst::XOR(rAl,Ib); 127 0x5: Inst::XOR(rAx,Iz); | 125 0x4: Inst::XOR(ALIb); 126 0x5: Inst::XOR(rAX,Iz); |
128 0x6: M5InternalError::error( 129 {{"Tried to execute the SS segment override prefix!"}}); 130 0x7: aaa(); | 127 0x6: M5InternalError::error( 128 {{"Tried to execute the SS segment override prefix!"}}); 129 0x7: aaa(); |
131 default: MultiInst::XOR(OPCODE_OP_BOTTOM3, 132 [Eb,Gb],[Ev,Gv],[Gb,Eb],[Gv,Ev]); | 130 default: MultiInst::XOR(EbGb, EvGv, GbEb, GvEv); |
133 } 134 0x07: decode OPCODE_OP_BOTTOM3 { 135 0x0: cmp_Eb_Gb(); 136 0x1: cmp_Ev_Gv(); 137 0x2: cmp_Gb_Eb(); 138 0x3: cmp_Gv_Ev(); 139 0x4: cmp_Al_Ib(); 140 0x5: cmp_rAX_Iz(); --- 91 unchanged lines hidden (view full) --- 232 0x2: group1_Eb_Ib(); 233 0x3: group1_Ev_Ib(); 234 0x4: test_Eb_Gb(); 235 0x5: test_Ev_Gv(); 236 0x6: xchg_Eb_Gb(); 237 0x7: xchg_Ev_Gv(); 238 } 239 0x11: decode OPCODE_OP_BOTTOM3 { | 131 } 132 0x07: decode OPCODE_OP_BOTTOM3 { 133 0x0: cmp_Eb_Gb(); 134 0x1: cmp_Ev_Gv(); 135 0x2: cmp_Gb_Eb(); 136 0x3: cmp_Gv_Ev(); 137 0x4: cmp_Al_Ib(); 138 0x5: cmp_rAX_Iz(); --- 91 unchanged lines hidden (view full) --- 230 0x2: group1_Eb_Ib(); 231 0x3: group1_Ev_Ib(); 232 0x4: test_Eb_Gb(); 233 0x5: test_Ev_Gv(); 234 0x6: xchg_Eb_Gb(); 235 0x7: xchg_Ev_Gv(); 236 } 237 0x11: decode OPCODE_OP_BOTTOM3 { |
240 0x0: Inst::MOV(Eb, Gb); 241 0x1: Inst::MOV(Ev, Gv); 242 0x2: Inst::MOV(Gb, Eb); 243 0x3: Inst::MOV(Gv, Ev); | 238 0x0: MOV(); 239 0x1: MOV(); 240 0x2: MOV(); 241 0x3: MOV(); |
244 0x4: mov_MwRv_Sw(); //What to do with this one? 245 0x5: lea_Gv_M(); 246 0x6: mov_Sw_MwRv(); 247 0x7: group10_Ev(); //Make sure this is Ev 248 } 249 0x12: decode OPCODE_OP_BOTTOM3 { 250 0x0: nop_or_pause(); //Check for repe prefix 251 0x1: xchg_rCX_rAX(); --- 143 unchanged lines hidden --- | 242 0x4: mov_MwRv_Sw(); //What to do with this one? 243 0x5: lea_Gv_M(); 244 0x6: mov_Sw_MwRv(); 245 0x7: group10_Ev(); //Make sure this is Ev 246 } 247 0x12: decode OPCODE_OP_BOTTOM3 { 248 0x0: nop_or_pause(); //Check for repe prefix 249 0x1: xchg_rCX_rAX(); --- 143 unchanged lines hidden --- |