1// Copyright (c) 2010 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 --- 21 unchanged lines hidden (view full) --- 30// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 31// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 32// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 33// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 34// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 35// 36// Authors: Gabe Black 37 |
38def format ArmUsad() {{ 39 decode_block = ''' 40 { 41 const IntRegIndex rd = (IntRegIndex)(uint32_t)bits(machInst, 19, 16); 42 const IntRegIndex rn = (IntRegIndex)(uint32_t)bits(machInst, 3, 0); 43 const IntRegIndex rm = (IntRegIndex)(uint32_t)bits(machInst, 11, 8); 44 const IntRegIndex ra = (IntRegIndex)(uint32_t)bits(machInst, 15, 12); 45 if (ra == 0xf) { 46 return new Usad8(machInst, rd, rn, rm); 47 } else { 48 return new Usada8(machInst, rd, rn, rm, ra); 49 } 50 } 51 ''' 52}}; 53 |
54def format ArmDataProcReg() {{ 55 pclr = ''' 56 return new %(className)ssRegPclr(machInst, %(dest)s, 57 %(op1)s, rm, imm5, 58 type); 59 ''' 60 instDecode = ''' 61 case %(opcode)#x: --- 1288 unchanged lines hidden --- |