neon.isa (7644:62873d5c2bfc) | neon.isa (7848:cc5e64f8423f) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2010 ARM Limited 4// All rights reserved 5// 6// The license below extends only to copyright in the software and shall 7// not be construed as granting a license to any other intellectual 8// property including but not limited to intellectual property relating --- 45 unchanged lines hidden (view full) --- 54 public: 55 // Constructor 56 %(class_name)s(ExtMachInst machInst, 57 IntRegIndex _dest, IntRegIndex _op1, IntRegIndex _op2) 58 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 59 _dest, _op1, _op2) 60 { 61 %(constructor)s; | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2010 ARM Limited 4// All rights reserved 5// 6// The license below extends only to copyright in the software and shall 7// not be construed as granting a license to any other intellectual 8// property including but not limited to intellectual property relating --- 45 unchanged lines hidden (view full) --- 54 public: 55 // Constructor 56 %(class_name)s(ExtMachInst machInst, 57 IntRegIndex _dest, IntRegIndex _op1, IntRegIndex _op2) 58 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 59 _dest, _op1, _op2) 60 { 61 %(constructor)s; |
62 if (!(condCode == COND_AL || condCode == COND_UC)) { 63 for (int x = 0; x < _numDestRegs; x++) { 64 _srcRegIdx[_numSrcRegs++] = _destRegIdx[x]; 65 } 66 } |
|
62 } 63 64 %(BasicExecDeclare)s 65}; 66}}; 67 68def template NeonRegRegRegImmOpDeclare {{ 69template <class _Element> --- 5 unchanged lines hidden (view full) --- 75 // Constructor 76 %(class_name)s(ExtMachInst machInst, 77 IntRegIndex _dest, IntRegIndex _op1, IntRegIndex _op2, 78 uint64_t _imm) 79 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 80 _dest, _op1, _op2, _imm) 81 { 82 %(constructor)s; | 67 } 68 69 %(BasicExecDeclare)s 70}; 71}}; 72 73def template NeonRegRegRegImmOpDeclare {{ 74template <class _Element> --- 5 unchanged lines hidden (view full) --- 80 // Constructor 81 %(class_name)s(ExtMachInst machInst, 82 IntRegIndex _dest, IntRegIndex _op1, IntRegIndex _op2, 83 uint64_t _imm) 84 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 85 _dest, _op1, _op2, _imm) 86 { 87 %(constructor)s; |
88 if (!(condCode == COND_AL || condCode == COND_UC)) { 89 for (int x = 0; x < _numDestRegs; x++) { 90 _srcRegIdx[_numSrcRegs++] = _destRegIdx[x]; 91 } 92 } |
|
83 } 84 85 %(BasicExecDeclare)s 86}; 87}}; 88 89def template NeonRegRegImmOpDeclare {{ 90template <class _Element> --- 4 unchanged lines hidden (view full) --- 95 public: 96 // Constructor 97 %(class_name)s(ExtMachInst machInst, 98 IntRegIndex _dest, IntRegIndex _op1, uint64_t _imm) 99 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 100 _dest, _op1, _imm) 101 { 102 %(constructor)s; | 93 } 94 95 %(BasicExecDeclare)s 96}; 97}}; 98 99def template NeonRegRegImmOpDeclare {{ 100template <class _Element> --- 4 unchanged lines hidden (view full) --- 105 public: 106 // Constructor 107 %(class_name)s(ExtMachInst machInst, 108 IntRegIndex _dest, IntRegIndex _op1, uint64_t _imm) 109 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 110 _dest, _op1, _imm) 111 { 112 %(constructor)s; |
113 if (!(condCode == COND_AL || condCode == COND_UC)) { 114 for (int x = 0; x < _numDestRegs; x++) { 115 _srcRegIdx[_numSrcRegs++] = _destRegIdx[x]; 116 } 117 } |
|
103 } 104 105 %(BasicExecDeclare)s 106}; 107}}; 108 109def template NeonRegImmOpDeclare {{ 110template <class _Element> 111class %(class_name)s : public %(base_class)s 112{ 113 protected: 114 typedef _Element Element; 115 public: 116 // Constructor 117 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, uint64_t _imm) 118 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest, _imm) 119 { 120 %(constructor)s; | 118 } 119 120 %(BasicExecDeclare)s 121}; 122}}; 123 124def template NeonRegImmOpDeclare {{ 125template <class _Element> 126class %(class_name)s : public %(base_class)s 127{ 128 protected: 129 typedef _Element Element; 130 public: 131 // Constructor 132 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, uint64_t _imm) 133 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, _dest, _imm) 134 { 135 %(constructor)s; |
136 if (!(condCode == COND_AL || condCode == COND_UC)) { 137 for (int x = 0; x < _numDestRegs; x++) { 138 _srcRegIdx[_numSrcRegs++] = _destRegIdx[x]; 139 } 140 } |
|
121 } 122 123 %(BasicExecDeclare)s 124}; 125}}; 126 127def template NeonRegRegOpDeclare {{ 128template <class _Element> --- 4 unchanged lines hidden (view full) --- 133 public: 134 // Constructor 135 %(class_name)s(ExtMachInst machInst, 136 IntRegIndex _dest, IntRegIndex _op1) 137 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 138 _dest, _op1) 139 { 140 %(constructor)s; | 141 } 142 143 %(BasicExecDeclare)s 144}; 145}}; 146 147def template NeonRegRegOpDeclare {{ 148template <class _Element> --- 4 unchanged lines hidden (view full) --- 153 public: 154 // Constructor 155 %(class_name)s(ExtMachInst machInst, 156 IntRegIndex _dest, IntRegIndex _op1) 157 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, 158 _dest, _op1) 159 { 160 %(constructor)s; |
161 if (!(condCode == COND_AL || condCode == COND_UC)) { 162 for (int x = 0; x < _numDestRegs; x++) { 163 _srcRegIdx[_numSrcRegs++] = _destRegIdx[x]; 164 } 165 } |
|
141 } 142 143 %(BasicExecDeclare)s 144}; 145}}; 146 147def template NeonExecDeclare {{ 148 template --- 113 unchanged lines hidden --- | 166 } 167 168 %(BasicExecDeclare)s 169}; 170}}; 171 172def template NeonExecDeclare {{ 173 template --- 113 unchanged lines hidden --- |