1// -*- mode:c++ -*- 2 3// Copyright (c) 2010-2011, 2016-2019 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 --- 2087 unchanged lines hidden (view full) --- 2096 return new VcvtaFpUIntS(machInst, vdInt, vm); 2097 } 2098 case 0x3: 2099 if (op) { 2100 return new VcvtaFpSIntD(machInst, vdInt, vm); 2101 } else { 2102 return new VcvtaFpUIntD(machInst, vdInt, vm); 2103 } |
2104 default: return new Unknown(machInst); |
2105 } 2106 case 0x1: 2107 switch(size) { 2108 case 0x0: 2109 return new Unknown(machInst); 2110 case 0x1: 2111 return new FailUnimplemented( 2112 "vcvtn.u32.f16", machInst); --- 4 unchanged lines hidden (view full) --- 2117 return new VcvtnFpUIntS(machInst, vdInt, vm); 2118 } 2119 case 0x3: 2120 if (op) { 2121 return new VcvtnFpSIntD(machInst, vdInt, vm); 2122 } else { 2123 return new VcvtnFpUIntD(machInst, vdInt, vm); 2124 } |
2125 default: return new Unknown(machInst); |
2126 } 2127 case 0x2: 2128 switch(size) { 2129 case 0x0: 2130 return new Unknown(machInst); 2131 case 0x1: 2132 return new FailUnimplemented( 2133 "vcvtp.u32.f16", machInst); --- 4 unchanged lines hidden (view full) --- 2138 return new VcvtpFpUIntS(machInst, vdInt, vm); 2139 } 2140 case 0x3: 2141 if (op) { 2142 return new VcvtpFpSIntD(machInst, vdInt, vm); 2143 } else { 2144 return new VcvtpFpUIntD(machInst, vdInt, vm); 2145 } |
2146 default: return new Unknown(machInst); |
2147 } 2148 case 0x3: 2149 switch(size) { 2150 case 0x0: 2151 return new Unknown(machInst); 2152 case 0x1: 2153 return new FailUnimplemented( 2154 "vcvtm.u32.f16", machInst); --- 4 unchanged lines hidden (view full) --- 2159 return new VcvtmFpUIntS(machInst, vdInt, vm); 2160 } 2161 case 0x3: 2162 if (op) { 2163 return new VcvtmFpSIntD(machInst, vdInt, vm); 2164 } else { 2165 return new VcvtmFpUIntD(machInst, vdInt, vm); 2166 } |
2167 default: return new Unknown(machInst); |
2168 } |
2169 default: return new Unknown(machInst); |
2170 } 2171 } 2172 } else if (b31_b24 && !b23 && b11_b9 && !op3 && b4){ 2173 // VSEL* floating point conditional select 2174 2175 ConditionCode cond; 2176 switch(bits(machInst, 21, 20)) { 2177 case 0x0: cond = COND_EQ; break; --- 624 unchanged lines hidden --- |