uncond.isa (10037:5cac77888310) | uncond.isa (12788:fe6d6ae79d7c) |
---|---|
1// Copyright (c) 2010-2012 ARM Limited 2// All rights reserved 3// 4// The license below extends only to copyright in the software and shall 5// not be construed as granting a license to any other intellectual 6// property including but not limited to intellectual property relating 7// to a hardware implementation of the functionality of the software 8// licensed hereunder. You may use the software subject to the license --- 152 unchanged lines hidden (view full) --- 161 } 162 } else { 163 switch (bits(machInst, 26, 25)) { 164 case 0x0: 165 { 166 const uint32_t val = ((machInst >> 20) & 0x5); 167 if (val == 0x4) { 168 const uint32_t mode = bits(machInst, 4, 0); | 1// Copyright (c) 2010-2012 ARM Limited 2// All rights reserved 3// 4// The license below extends only to copyright in the software and shall 5// not be construed as granting a license to any other intellectual 6// property including but not limited to intellectual property relating 7// to a hardware implementation of the functionality of the software 8// licensed hereunder. You may use the software subject to the license --- 152 unchanged lines hidden (view full) --- 161 } 162 } else { 163 switch (bits(machInst, 26, 25)) { 164 case 0x0: 165 { 166 const uint32_t val = ((machInst >> 20) & 0x5); 167 if (val == 0x4) { 168 const uint32_t mode = bits(machInst, 4, 0); |
169 if (badMode32((OperatingMode)mode)) | 169 // We check at decode stage if the mode exists even 170 // if the checking is re-done by Srs::execute. 171 // This is done because we will otherwise panic if 172 // trying to read the banked stack pointer of an 173 // unrecognized mode. 174 if (unknownMode32((OperatingMode)mode)) |
170 return new Unknown(machInst); 171 switch (bits(machInst, 24, 21)) { 172 case 0x2: 173 return new %(srs)s(machInst, mode, 174 SrsOp::DecrementAfter, false); 175 case 0x3: 176 return new %(srs_w)s(machInst, mode, 177 SrsOp::DecrementAfter, true); --- 141 unchanged lines hidden --- | 175 return new Unknown(machInst); 176 switch (bits(machInst, 24, 21)) { 177 case 0x2: 178 return new %(srs)s(machInst, mode, 179 SrsOp::DecrementAfter, false); 180 case 0x3: 181 return new %(srs_w)s(machInst, mode, 182 SrsOp::DecrementAfter, true); --- 141 unchanged lines hidden --- |