decoder.isa (4090:08bd6439b907) | decoder.isa (4096:07cd3d9257e0) |
---|---|
1// Copyright (c) 2006-2007 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 997 unchanged lines hidden (view full) --- 1006 0x7D: FailUnimpl::fors(); 1007 0x7E: FpBasic::fone({{Frd.udw = std::numeric_limits<uint64_t>::max();}}); 1008 0x7F: FpBasic::fones({{Frds.uw = std::numeric_limits<uint32_t>::max();}}); 1009 0x80: Trap::shutdown({{fault = new IllegalInstruction;}}); 1010 0x81: FailUnimpl::siam(); 1011 } 1012 // M5 special opcodes use the reserved IMPDEP2A opcode space 1013 0x37: decode M5FUNC { | 1// Copyright (c) 2006-2007 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 997 unchanged lines hidden (view full) --- 1006 0x7D: FailUnimpl::fors(); 1007 0x7E: FpBasic::fone({{Frd.udw = std::numeric_limits<uint64_t>::max();}}); 1008 0x7F: FpBasic::fones({{Frds.uw = std::numeric_limits<uint32_t>::max();}}); 1009 0x80: Trap::shutdown({{fault = new IllegalInstruction;}}); 1010 0x81: FailUnimpl::siam(); 1011 } 1012 // M5 special opcodes use the reserved IMPDEP2A opcode space 1013 0x37: decode M5FUNC { |
1014#if FULL_SYSTEM |
|
1014 // we have 7 bits of space here to play with... 1015 0x21: m5exit({{PseudoInst::m5exit(xc->tcBase(), O0); 1016 }}, No_OpClass, IsNonSpeculative); 1017 0x54: m5panic({{ 1018 panic("M5 panic instruction called at pc=%#x.", xc->readPC()); 1019 }}, No_OpClass, IsNonSpeculative); | 1015 // we have 7 bits of space here to play with... 1016 0x21: m5exit({{PseudoInst::m5exit(xc->tcBase(), O0); 1017 }}, No_OpClass, IsNonSpeculative); 1018 0x54: m5panic({{ 1019 panic("M5 panic instruction called at pc=%#x.", xc->readPC()); 1020 }}, No_OpClass, IsNonSpeculative); |
1020 | 1021#endif 1022 default: Trap::impdep2({{fault = new IllegalInstruction;}}); |
1021 } 1022 0x38: Branch::jmpl({{ 1023 Addr target = Rs1 + Rs2_or_imm13; 1024 if(target & 0x3) 1025 fault = new MemAddressNotAligned; 1026 else 1027 { 1028 if (Pstate<3:>) --- 467 unchanged lines hidden --- | 1023 } 1024 0x38: Branch::jmpl({{ 1025 Addr target = Rs1 + Rs2_or_imm13; 1026 if(target & 0x3) 1027 fault = new MemAddressNotAligned; 1028 else 1029 { 1030 if (Pstate<3:>) --- 467 unchanged lines hidden --- |