939 lines · plain
1# RUN: llvm-mc -no-type-check -show-encoding -triple=wasm32-unknown-unknown -mattr=+simd128,+relaxed-simd,+fp16 < %s | FileCheck %s2 3main:4 .functype main () -> ()5 6 # CHECK: v128.load 48 # encoding: [0xfd,0x00,0x04,0x30]7 v128.load 488 9 # CHECK: i16x8.load8x8_s 32 # encoding: [0xfd,0x01,0x03,0x20]10 i16x8.load8x8_s 3211 12 # CHECK: i16x8.load8x8_u 32 # encoding: [0xfd,0x02,0x03,0x20]13 i16x8.load8x8_u 3214 15 # CHECK: i32x4.load16x4_s 32 # encoding: [0xfd,0x03,0x03,0x20]16 i32x4.load16x4_s 3217 18 # CHECK: i32x4.load16x4_u 32 # encoding: [0xfd,0x04,0x03,0x20]19 i32x4.load16x4_u 3220 21 # CHECK: i64x2.load32x2_s 32 # encoding: [0xfd,0x05,0x03,0x20]22 i64x2.load32x2_s 3223 24 # CHECK: i64x2.load32x2_u 32 # encoding: [0xfd,0x06,0x03,0x20]25 i64x2.load32x2_u 3226 27 # CHECK: v128.load8_splat 48 # encoding: [0xfd,0x07,0x00,0x30]28 v128.load8_splat 4829 30 # CHECK: v128.load16_splat 48 # encoding: [0xfd,0x08,0x01,0x30]31 v128.load16_splat 4832 33 # CHECK: v128.load32_splat 48 # encoding: [0xfd,0x09,0x02,0x30]34 v128.load32_splat 4835 36 # CHECK: v128.load64_splat 48 # encoding: [0xfd,0x0a,0x03,0x30]37 v128.load64_splat 4838 39 # CHECK: v128.store 48 # encoding: [0xfd,0x0b,0x04,0x30]40 v128.store 4841 42 # CHECK: v128.const 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 1543 # CHECK-SAME: # encoding: [0xfd,0x0c,44 # CHECK-SAME: 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,45 # CHECK-SAME: 0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]46 v128.const 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 1547 48 # CHECK: v128.const 256, 770, 1284, 1798, 2312, 2826, 3340, 385449 # CHECK-SAME: # encoding: [0xfd,0x0c,50 # CHECK-SAME: 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,51 # CHECK-SAME: 0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]52 v128.const 256, 770, 1284, 1798, 2312, 2826, 3340, 385453 54 # TODO(tlively): Fix assembler so v128.const works with 4xi32 and 2xi6455 56 # CHECK: v128.const 0x1.0402p-121, 0x1.0c0a08p-113,57 # CHECK-SAME: 0x1.14121p-105, 0x1.1c1a18p-9758 # CHECK-SAME: # encoding: [0xfd,0x0c,59 # CHECK-SAME: 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,60 # CHECK-SAME: 0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]61 v128.const 0x1.0402p-121, 0x1.0c0a08p-113, 0x1.14121p-105, 0x1.1c1a18p-9762 63 # CHECK: v128.const 0x1.60504030201p-911, 0x1.e0d0c0b0a0908p-78364 # CHECK-SAME: # encoding: [0xfd,0x0c,65 # CHECK-SAME: 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,66 # CHECK-SAME: 0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]67 v128.const 0x1.60504030201p-911, 0x1.e0d0c0b0a0908p-78368 69 # CHECK: i8x16.shuffle 0, 17, 2, 19, 4, 21, 6, 23,70 # CHECK-SAME: 8, 25, 10, 27, 12, 29, 14, 3171 # CHECK-SAME: # encoding: [0xfd,0x0d,72 # CHECK-SAME: 0x00,0x11,0x02,0x13,0x04,0x15,0x06,0x17,73 # CHECK-SAME: 0x08,0x19,0x0a,0x1b,0x0c,0x1d,0x0e,0x1f]74 i8x16.shuffle 0, 17, 2, 19, 4, 21, 6, 23, 8, 25, 10, 27, 12, 29, 14, 3175 76 # CHECK: i8x16.swizzle # encoding: [0xfd,0x0e]77 i8x16.swizzle78 79 # CHECK: i8x16.splat # encoding: [0xfd,0x0f]80 i8x16.splat81 82 # CHECK: i16x8.splat # encoding: [0xfd,0x10]83 i16x8.splat84 85 # CHECK: i32x4.splat # encoding: [0xfd,0x11]86 i32x4.splat87 88 # CHECK: i64x2.splat # encoding: [0xfd,0x12]89 i64x2.splat90 91 # CHECK: f32x4.splat # encoding: [0xfd,0x13]92 f32x4.splat93 94 # CHECK: f64x2.splat # encoding: [0xfd,0x14]95 f64x2.splat96 97 # CHECK: i8x16.extract_lane_s 15 # encoding: [0xfd,0x15,0x0f]98 i8x16.extract_lane_s 1599 100 # CHECK: i8x16.extract_lane_u 15 # encoding: [0xfd,0x16,0x0f]101 i8x16.extract_lane_u 15102 103 # CHECK: i8x16.replace_lane 15 # encoding: [0xfd,0x17,0x0f]104 i8x16.replace_lane 15105 106 # CHECK: i16x8.extract_lane_s 7 # encoding: [0xfd,0x18,0x07]107 i16x8.extract_lane_s 7108 109 # CHECK: i16x8.extract_lane_u 7 # encoding: [0xfd,0x19,0x07]110 i16x8.extract_lane_u 7111 112 # CHECK: i16x8.replace_lane 7 # encoding: [0xfd,0x1a,0x07]113 i16x8.replace_lane 7114 115 # CHECK: i32x4.extract_lane 3 # encoding: [0xfd,0x1b,0x03]116 i32x4.extract_lane 3117 118 # CHECK: i32x4.replace_lane 3 # encoding: [0xfd,0x1c,0x03]119 i32x4.replace_lane 3120 121 # CHECK: i64x2.extract_lane 1 # encoding: [0xfd,0x1d,0x01]122 i64x2.extract_lane 1123 124 # CHECK: i64x2.replace_lane 1 # encoding: [0xfd,0x1e,0x01]125 i64x2.replace_lane 1126 127 # CHECK: f32x4.extract_lane 3 # encoding: [0xfd,0x1f,0x03]128 f32x4.extract_lane 3129 130 # CHECK: f32x4.replace_lane 3 # encoding: [0xfd,0x20,0x03]131 f32x4.replace_lane 3132 133 # CHECK: f64x2.extract_lane 1 # encoding: [0xfd,0x21,0x01]134 f64x2.extract_lane 1135 136 # CHECK: f64x2.replace_lane 1 # encoding: [0xfd,0x22,0x01]137 f64x2.replace_lane 1138 139 # CHECK: i8x16.eq # encoding: [0xfd,0x23]140 i8x16.eq141 142 # CHECK: i8x16.ne # encoding: [0xfd,0x24]143 i8x16.ne144 145 # CHECK: i8x16.lt_s # encoding: [0xfd,0x25]146 i8x16.lt_s147 148 # CHECK: i8x16.lt_u # encoding: [0xfd,0x26]149 i8x16.lt_u150 151 # CHECK: i8x16.gt_s # encoding: [0xfd,0x27]152 i8x16.gt_s153 154 # CHECK: i8x16.gt_u # encoding: [0xfd,0x28]155 i8x16.gt_u156 157 # CHECK: i8x16.le_s # encoding: [0xfd,0x29]158 i8x16.le_s159 160 # CHECK: i8x16.le_u # encoding: [0xfd,0x2a]161 i8x16.le_u162 163 # CHECK: i8x16.ge_s # encoding: [0xfd,0x2b]164 i8x16.ge_s165 166 # CHECK: i8x16.ge_u # encoding: [0xfd,0x2c]167 i8x16.ge_u168 169 # CHECK: i16x8.eq # encoding: [0xfd,0x2d]170 i16x8.eq171 172 # CHECK: i16x8.ne # encoding: [0xfd,0x2e]173 i16x8.ne174 175 # CHECK: i16x8.lt_s # encoding: [0xfd,0x2f]176 i16x8.lt_s177 178 # CHECK: i16x8.lt_u # encoding: [0xfd,0x30]179 i16x8.lt_u180 181 # CHECK: i16x8.gt_s # encoding: [0xfd,0x31]182 i16x8.gt_s183 184 # CHECK: i16x8.gt_u # encoding: [0xfd,0x32]185 i16x8.gt_u186 187 # CHECK: i16x8.le_s # encoding: [0xfd,0x33]188 i16x8.le_s189 190 # CHECK: i16x8.le_u # encoding: [0xfd,0x34]191 i16x8.le_u192 193 # CHECK: i16x8.ge_s # encoding: [0xfd,0x35]194 i16x8.ge_s195 196 # CHECK: i16x8.ge_u # encoding: [0xfd,0x36]197 i16x8.ge_u198 199 # CHECK: i32x4.eq # encoding: [0xfd,0x37]200 i32x4.eq201 202 # CHECK: i32x4.ne # encoding: [0xfd,0x38]203 i32x4.ne204 205 # CHECK: i32x4.lt_s # encoding: [0xfd,0x39]206 i32x4.lt_s207 208 # CHECK: i32x4.lt_u # encoding: [0xfd,0x3a]209 i32x4.lt_u210 211 # CHECK: i32x4.gt_s # encoding: [0xfd,0x3b]212 i32x4.gt_s213 214 # CHECK: i32x4.gt_u # encoding: [0xfd,0x3c]215 i32x4.gt_u216 217 # CHECK: i32x4.le_s # encoding: [0xfd,0x3d]218 i32x4.le_s219 220 # CHECK: i32x4.le_u # encoding: [0xfd,0x3e]221 i32x4.le_u222 223 # CHECK: i32x4.ge_s # encoding: [0xfd,0x3f]224 i32x4.ge_s225 226 # CHECK: i32x4.ge_u # encoding: [0xfd,0x40]227 i32x4.ge_u228 229 # CHECK: f32x4.eq # encoding: [0xfd,0x41]230 f32x4.eq231 232 # CHECK: f32x4.ne # encoding: [0xfd,0x42]233 f32x4.ne234 235 # CHECK: f32x4.lt # encoding: [0xfd,0x43]236 f32x4.lt237 238 # CHECK: f32x4.gt # encoding: [0xfd,0x44]239 f32x4.gt240 241 # CHECK: f32x4.le # encoding: [0xfd,0x45]242 f32x4.le243 244 # CHECK: f32x4.ge # encoding: [0xfd,0x46]245 f32x4.ge246 247 # CHECK: f64x2.eq # encoding: [0xfd,0x47]248 f64x2.eq249 250 # CHECK: f64x2.ne # encoding: [0xfd,0x48]251 f64x2.ne252 253 # CHECK: f64x2.lt # encoding: [0xfd,0x49]254 f64x2.lt255 256 # CHECK: f64x2.gt # encoding: [0xfd,0x4a]257 f64x2.gt258 259 # CHECK: f64x2.le # encoding: [0xfd,0x4b]260 f64x2.le261 262 # CHECK: f64x2.ge # encoding: [0xfd,0x4c]263 f64x2.ge264 265 # CHECK: v128.not # encoding: [0xfd,0x4d]266 v128.not267 268 # CHECK: v128.and # encoding: [0xfd,0x4e]269 v128.and270 271 # CHECK: v128.andnot # encoding: [0xfd,0x4f]272 v128.andnot273 274 # CHECK: v128.or # encoding: [0xfd,0x50]275 v128.or276 277 # CHECK: v128.xor # encoding: [0xfd,0x51]278 v128.xor279 280 # CHECK: v128.bitselect # encoding: [0xfd,0x52]281 v128.bitselect282 283 # CHECK: v128.any_true # encoding: [0xfd,0x53]284 v128.any_true285 286 # CHECK: v128.load8_lane 32, 1 # encoding: [0xfd,0x54,0x00,0x20,0x01]287 v128.load8_lane 32, 1288 289 # CHECK: v128.load16_lane 32, 1 # encoding: [0xfd,0x55,0x01,0x20,0x01]290 v128.load16_lane 32, 1291 292 # CHECK: v128.load32_lane 32, 1 # encoding: [0xfd,0x56,0x02,0x20,0x01]293 v128.load32_lane 32, 1294 295 # CHECK: v128.load64_lane 32, 1 # encoding: [0xfd,0x57,0x03,0x20,0x01]296 v128.load64_lane 32, 1297 298 # CHECK: v128.store8_lane 32, 1 # encoding: [0xfd,0x58,0x00,0x20,0x01]299 v128.store8_lane 32, 1300 301 # CHECK: v128.store16_lane 32, 1 # encoding: [0xfd,0x59,0x01,0x20,0x01]302 v128.store16_lane 32, 1303 304 # CHECK: v128.store32_lane 32, 1 # encoding: [0xfd,0x5a,0x02,0x20,0x01]305 v128.store32_lane 32, 1306 307 # CHECK: v128.store64_lane 32, 1 # encoding: [0xfd,0x5b,0x03,0x20,0x01]308 v128.store64_lane 32, 1309 310 # CHECK: v128.load32_zero 32 # encoding: [0xfd,0x5c,0x02,0x20]311 v128.load32_zero 32312 313 # CHECK: v128.load64_zero 32 # encoding: [0xfd,0x5d,0x03,0x20]314 v128.load64_zero 32315 316 # CHECK: f32x4.demote_f64x2_zero # encoding: [0xfd,0x5e]317 f32x4.demote_f64x2_zero318 319 # CHECK: f64x2.promote_low_f32x4 # encoding: [0xfd,0x5f]320 f64x2.promote_low_f32x4321 322 # CHECK: i8x16.abs # encoding: [0xfd,0x60]323 i8x16.abs324 325 # CHECK: i8x16.neg # encoding: [0xfd,0x61]326 i8x16.neg327 328 # CHECK: i8x16.popcnt # encoding: [0xfd,0x62]329 i8x16.popcnt330 331 # CHECK: i8x16.all_true # encoding: [0xfd,0x63]332 i8x16.all_true333 334 # CHECK: i8x16.bitmask # encoding: [0xfd,0x64]335 i8x16.bitmask336 337 # CHECK: i8x16.narrow_i16x8_s # encoding: [0xfd,0x65]338 i8x16.narrow_i16x8_s339 340 # CHECK: i8x16.narrow_i16x8_u # encoding: [0xfd,0x66]341 i8x16.narrow_i16x8_u342 343 # CHECK: f32x4.ceil # encoding: [0xfd,0x67]344 f32x4.ceil345 346 # CHECK: f32x4.floor # encoding: [0xfd,0x68]347 f32x4.floor348 349 # CHECK: f32x4.trunc # encoding: [0xfd,0x69]350 f32x4.trunc351 352 # CHECK: f32x4.nearest # encoding: [0xfd,0x6a]353 f32x4.nearest354 355 # CHECK: i8x16.shl # encoding: [0xfd,0x6b]356 i8x16.shl357 358 # CHECK: i8x16.shr_s # encoding: [0xfd,0x6c]359 i8x16.shr_s360 361 # CHECK: i8x16.shr_u # encoding: [0xfd,0x6d]362 i8x16.shr_u363 364 # CHECK: i8x16.add # encoding: [0xfd,0x6e]365 i8x16.add366 367 # CHECK: i8x16.add_sat_s # encoding: [0xfd,0x6f]368 i8x16.add_sat_s369 370 # CHECK: i8x16.add_sat_u # encoding: [0xfd,0x70]371 i8x16.add_sat_u372 373 # CHECK: i8x16.sub # encoding: [0xfd,0x71]374 i8x16.sub375 376 # CHECK: i8x16.sub_sat_s # encoding: [0xfd,0x72]377 i8x16.sub_sat_s378 379 # CHECK: i8x16.sub_sat_u # encoding: [0xfd,0x73]380 i8x16.sub_sat_u381 382 # CHECK: f64x2.ceil # encoding: [0xfd,0x74]383 f64x2.ceil384 385 # CHECK: f64x2.floor # encoding: [0xfd,0x75]386 f64x2.floor387 388 # CHECK: i8x16.min_s # encoding: [0xfd,0x76]389 i8x16.min_s390 391 # CHECK: i8x16.min_u # encoding: [0xfd,0x77]392 i8x16.min_u393 394 # CHECK: i8x16.max_s # encoding: [0xfd,0x78]395 i8x16.max_s396 397 # CHECK: i8x16.max_u # encoding: [0xfd,0x79]398 i8x16.max_u399 400 # CHECK: f64x2.trunc # encoding: [0xfd,0x7a]401 f64x2.trunc402 403 # CHECK: i8x16.avgr_u # encoding: [0xfd,0x7b]404 i8x16.avgr_u405 406 # CHECK: i16x8.extadd_pairwise_i8x16_s # encoding: [0xfd,0x7c]407 i16x8.extadd_pairwise_i8x16_s408 409 # CHECK: i16x8.extadd_pairwise_i8x16_u # encoding: [0xfd,0x7d]410 i16x8.extadd_pairwise_i8x16_u411 412 # CHECK: i32x4.extadd_pairwise_i16x8_s # encoding: [0xfd,0x7e]413 i32x4.extadd_pairwise_i16x8_s414 415 # CHECK: i32x4.extadd_pairwise_i16x8_u # encoding: [0xfd,0x7f]416 i32x4.extadd_pairwise_i16x8_u417 418 # CHECK: i16x8.abs # encoding: [0xfd,0x80,0x01]419 i16x8.abs420 421 # CHECK: i16x8.neg # encoding: [0xfd,0x81,0x01]422 i16x8.neg423 424 # CHECK: i16x8.q15mulr_sat_s # encoding: [0xfd,0x82,0x01]425 i16x8.q15mulr_sat_s426 427 # CHECK: i16x8.all_true # encoding: [0xfd,0x83,0x01]428 i16x8.all_true429 430 # CHECK: i16x8.bitmask # encoding: [0xfd,0x84,0x01]431 i16x8.bitmask432 433 # CHECK: i16x8.narrow_i32x4_s # encoding: [0xfd,0x85,0x01]434 i16x8.narrow_i32x4_s435 436 # CHECK: i16x8.narrow_i32x4_u # encoding: [0xfd,0x86,0x01]437 i16x8.narrow_i32x4_u438 439 # CHECK: i16x8.extend_low_i8x16_s # encoding: [0xfd,0x87,0x01]440 i16x8.extend_low_i8x16_s441 442 # CHECK: i16x8.extend_high_i8x16_s # encoding: [0xfd,0x88,0x01]443 i16x8.extend_high_i8x16_s444 445 # CHECK: i16x8.extend_low_i8x16_u # encoding: [0xfd,0x89,0x01]446 i16x8.extend_low_i8x16_u447 448 # CHECK: i16x8.extend_high_i8x16_u # encoding: [0xfd,0x8a,0x01]449 i16x8.extend_high_i8x16_u450 451 # CHECK: i16x8.shl # encoding: [0xfd,0x8b,0x01]452 i16x8.shl453 454 # CHECK: i16x8.shr_s # encoding: [0xfd,0x8c,0x01]455 i16x8.shr_s456 457 # CHECK: i16x8.shr_u # encoding: [0xfd,0x8d,0x01]458 i16x8.shr_u459 460 # CHECK: i16x8.add # encoding: [0xfd,0x8e,0x01]461 i16x8.add462 463 # CHECK: i16x8.add_sat_s # encoding: [0xfd,0x8f,0x01]464 i16x8.add_sat_s465 466 # CHECK: i16x8.add_sat_u # encoding: [0xfd,0x90,0x01]467 i16x8.add_sat_u468 469 # CHECK: i16x8.sub # encoding: [0xfd,0x91,0x01]470 i16x8.sub471 472 # CHECK: i16x8.sub_sat_s # encoding: [0xfd,0x92,0x01]473 i16x8.sub_sat_s474 475 # CHECK: i16x8.sub_sat_u # encoding: [0xfd,0x93,0x01]476 i16x8.sub_sat_u477 478 # CHECK: f64x2.nearest # encoding: [0xfd,0x94,0x01]479 f64x2.nearest480 481 # CHECK: i16x8.mul # encoding: [0xfd,0x95,0x01]482 i16x8.mul483 484 # CHECK: i16x8.min_s # encoding: [0xfd,0x96,0x01]485 i16x8.min_s486 487 # CHECK: i16x8.min_u # encoding: [0xfd,0x97,0x01]488 i16x8.min_u489 490 # CHECK: i16x8.max_s # encoding: [0xfd,0x98,0x01]491 i16x8.max_s492 493 # CHECK: i16x8.max_u # encoding: [0xfd,0x99,0x01]494 i16x8.max_u495 496 # 0x0a unused497 498 # CHECK: i16x8.avgr_u # encoding: [0xfd,0x9b,0x01]499 i16x8.avgr_u500 501 # CHECK: i16x8.extmul_low_i8x16_s # encoding: [0xfd,0x9c,0x01]502 i16x8.extmul_low_i8x16_s503 504 # CHECK: i16x8.extmul_high_i8x16_s # encoding: [0xfd,0x9d,0x01]505 i16x8.extmul_high_i8x16_s506 507 # CHECK: i16x8.extmul_low_i8x16_u # encoding: [0xfd,0x9e,0x01]508 i16x8.extmul_low_i8x16_u509 510 # CHECK: i16x8.extmul_high_i8x16_u # encoding: [0xfd,0x9f,0x01]511 i16x8.extmul_high_i8x16_u512 513 # CHECK: i32x4.abs # encoding: [0xfd,0xa0,0x01]514 i32x4.abs515 516 # CHECK: i32x4.neg # encoding: [0xfd,0xa1,0x01]517 i32x4.neg518 519 # 0xa2 unused520 521 # CHECK: i32x4.all_true # encoding: [0xfd,0xa3,0x01]522 i32x4.all_true523 524 # CHECK: i32x4.bitmask # encoding: [0xfd,0xa4,0x01]525 i32x4.bitmask526 527 # 0xa5 unused528 529 # 0xa6 unused530 531 # CHECK: i32x4.extend_low_i16x8_s # encoding: [0xfd,0xa7,0x01]532 i32x4.extend_low_i16x8_s533 534 # CHECK: i32x4.extend_high_i16x8_s # encoding: [0xfd,0xa8,0x01]535 i32x4.extend_high_i16x8_s536 537 # CHECK: i32x4.extend_low_i16x8_u # encoding: [0xfd,0xa9,0x01]538 i32x4.extend_low_i16x8_u539 540 # CHECK: i32x4.extend_high_i16x8_u # encoding: [0xfd,0xaa,0x01]541 i32x4.extend_high_i16x8_u542 543 # CHECK: i32x4.shl # encoding: [0xfd,0xab,0x01]544 i32x4.shl545 546 # CHECK: i32x4.shr_s # encoding: [0xfd,0xac,0x01]547 i32x4.shr_s548 549 # CHECK: i32x4.shr_u # encoding: [0xfd,0xad,0x01]550 i32x4.shr_u551 552 # CHECK: i32x4.add # encoding: [0xfd,0xae,0x01]553 i32x4.add554 555 # 0xaf unused556 557 # 0xb0 unused558 559 # CHECK: i32x4.sub # encoding: [0xfd,0xb1,0x01]560 i32x4.sub561 562 # 0xb2 unused563 564 # 0xb3 unused565 566 # 0xb4 unused567 568 # CHECK: i32x4.mul # encoding: [0xfd,0xb5,0x01]569 i32x4.mul570 571 # CHECK: i32x4.min_s # encoding: [0xfd,0xb6,0x01]572 i32x4.min_s573 574 # CHECK: i32x4.min_u # encoding: [0xfd,0xb7,0x01]575 i32x4.min_u576 577 # CHECK: i32x4.max_s # encoding: [0xfd,0xb8,0x01]578 i32x4.max_s579 580 # CHECK: i32x4.max_u # encoding: [0xfd,0xb9,0x01]581 i32x4.max_u582 583 # CHECK: i32x4.dot_i16x8_s # encoding: [0xfd,0xba,0x01]584 i32x4.dot_i16x8_s585 586 # 0xbb unused587 588 # CHECK: i32x4.extmul_low_i16x8_s # encoding: [0xfd,0xbc,0x01]589 i32x4.extmul_low_i16x8_s590 591 # CHECK: i32x4.extmul_high_i16x8_s # encoding: [0xfd,0xbd,0x01]592 i32x4.extmul_high_i16x8_s593 594 # CHECK: i32x4.extmul_low_i16x8_u # encoding: [0xfd,0xbe,0x01]595 i32x4.extmul_low_i16x8_u596 597 # CHECK: i32x4.extmul_high_i16x8_u # encoding: [0xfd,0xbf,0x01]598 i32x4.extmul_high_i16x8_u599 600 # CHECK: i64x2.abs # encoding: [0xfd,0xc0,0x01]601 i64x2.abs602 603 # CHECK: i64x2.neg # encoding: [0xfd,0xc1,0x01]604 i64x2.neg605 606 # 0xc2 unused607 608 # CHECK: i64x2.all_true # encoding: [0xfd,0xc3,0x01]609 i64x2.all_true610 611 # CHECK: i64x2.bitmask # encoding: [0xfd,0xc4,0x01]612 i64x2.bitmask613 614 # 0xc5 unused615 616 # 0xc6 unused617 618 # CHECK: i64x2.extend_low_i32x4_s # encoding: [0xfd,0xc7,0x01]619 i64x2.extend_low_i32x4_s620 621 # CHECK: i64x2.extend_high_i32x4_s # encoding: [0xfd,0xc8,0x01]622 i64x2.extend_high_i32x4_s623 624 # CHECK: i64x2.extend_low_i32x4_u # encoding: [0xfd,0xc9,0x01]625 i64x2.extend_low_i32x4_u626 627 # CHECK: i64x2.extend_high_i32x4_u # encoding: [0xfd,0xca,0x01]628 i64x2.extend_high_i32x4_u629 630 # CHECK: i64x2.shl # encoding: [0xfd,0xcb,0x01]631 i64x2.shl632 633 # CHECK: i64x2.shr_s # encoding: [0xfd,0xcc,0x01]634 i64x2.shr_s635 636 # CHECK: i64x2.shr_u # encoding: [0xfd,0xcd,0x01]637 i64x2.shr_u638 639 # CHECK: i64x2.add # encoding: [0xfd,0xce,0x01]640 i64x2.add641 642 # 0xcf unused643 644 # 0xd0 unused645 646 # CHECK: i64x2.sub # encoding: [0xfd,0xd1,0x01]647 i64x2.sub648 649 # 0xd2 unused650 651 # 0xd3 unused652 653 # 0xd4 unused654 655 # CHECK: i64x2.mul # encoding: [0xfd,0xd5,0x01]656 i64x2.mul657 658 # CHECK: i64x2.eq # encoding: [0xfd,0xd6,0x01]659 i64x2.eq660 661 # CHECK: i64x2.ne # encoding: [0xfd,0xd7,0x01]662 i64x2.ne663 664 # CHECK: i64x2.lt_s # encoding: [0xfd,0xd8,0x01]665 i64x2.lt_s666 667 # CHECK: i64x2.gt_s # encoding: [0xfd,0xd9,0x01]668 i64x2.gt_s669 670 # CHECK: i64x2.le_s # encoding: [0xfd,0xda,0x01]671 i64x2.le_s672 673 # CHECK: i64x2.ge_s # encoding: [0xfd,0xdb,0x01]674 i64x2.ge_s675 676 # CHECK: i64x2.extmul_low_i32x4_s # encoding: [0xfd,0xdc,0x01]677 i64x2.extmul_low_i32x4_s678 679 # CHECK: i64x2.extmul_high_i32x4_s # encoding: [0xfd,0xdd,0x01]680 i64x2.extmul_high_i32x4_s681 682 # CHECK: i64x2.extmul_low_i32x4_u # encoding: [0xfd,0xde,0x01]683 i64x2.extmul_low_i32x4_u684 685 # CHECK: i64x2.extmul_high_i32x4_u # encoding: [0xfd,0xdf,0x01]686 i64x2.extmul_high_i32x4_u687 688 # CHECK: f32x4.abs # encoding: [0xfd,0xe0,0x01]689 f32x4.abs690 691 # CHECK: f32x4.neg # encoding: [0xfd,0xe1,0x01]692 f32x4.neg693 694 # 0xe2 unused695 696 # CHECK: f32x4.sqrt # encoding: [0xfd,0xe3,0x01]697 f32x4.sqrt698 699 # CHECK: f32x4.add # encoding: [0xfd,0xe4,0x01]700 f32x4.add701 702 # CHECK: f32x4.sub # encoding: [0xfd,0xe5,0x01]703 f32x4.sub704 705 # CHECK: f32x4.mul # encoding: [0xfd,0xe6,0x01]706 f32x4.mul707 708 # CHECK: f32x4.div # encoding: [0xfd,0xe7,0x01]709 f32x4.div710 711 # CHECK: f32x4.min # encoding: [0xfd,0xe8,0x01]712 f32x4.min713 714 # CHECK: f32x4.max # encoding: [0xfd,0xe9,0x01]715 f32x4.max716 717 # CHECK: f32x4.pmin # encoding: [0xfd,0xea,0x01]718 f32x4.pmin719 720 # CHECK: f32x4.pmax # encoding: [0xfd,0xeb,0x01]721 f32x4.pmax722 723 # CHECK: f64x2.abs # encoding: [0xfd,0xec,0x01]724 f64x2.abs725 726 # CHECK: f64x2.neg # encoding: [0xfd,0xed,0x01]727 f64x2.neg728 729 # 0xee unused730 731 # CHECK: f64x2.sqrt # encoding: [0xfd,0xef,0x01]732 f64x2.sqrt733 734 # CHECK: f64x2.add # encoding: [0xfd,0xf0,0x01]735 f64x2.add736 737 # CHECK: f64x2.sub # encoding: [0xfd,0xf1,0x01]738 f64x2.sub739 740 # CHECK: f64x2.mul # encoding: [0xfd,0xf2,0x01]741 f64x2.mul742 743 # CHECK: f64x2.div # encoding: [0xfd,0xf3,0x01]744 f64x2.div745 746 # CHECK: f64x2.min # encoding: [0xfd,0xf4,0x01]747 f64x2.min748 749 # CHECK: f64x2.max # encoding: [0xfd,0xf5,0x01]750 f64x2.max751 752 # CHECK: f64x2.pmin # encoding: [0xfd,0xf6,0x01]753 f64x2.pmin754 755 # CHECK: f64x2.pmax # encoding: [0xfd,0xf7,0x01]756 f64x2.pmax757 758 # CHECK: i32x4.trunc_sat_f32x4_s # encoding: [0xfd,0xf8,0x01]759 i32x4.trunc_sat_f32x4_s760 761 # CHECK: i32x4.trunc_sat_f32x4_u # encoding: [0xfd,0xf9,0x01]762 i32x4.trunc_sat_f32x4_u763 764 # CHECK: f32x4.convert_i32x4_s # encoding: [0xfd,0xfa,0x01]765 f32x4.convert_i32x4_s766 767 # CHECK: f32x4.convert_i32x4_u # encoding: [0xfd,0xfb,0x01]768 f32x4.convert_i32x4_u769 770 # CHECK: i32x4.trunc_sat_f64x2_s_zero # encoding: [0xfd,0xfc,0x01]771 i32x4.trunc_sat_f64x2_s_zero772 773 # CHECK: i32x4.trunc_sat_f64x2_u_zero # encoding: [0xfd,0xfd,0x01]774 i32x4.trunc_sat_f64x2_u_zero775 776 # CHECK: f64x2.convert_low_i32x4_s # encoding: [0xfd,0xfe,0x01]777 f64x2.convert_low_i32x4_s778 779 # CHECK: f64x2.convert_low_i32x4_u # encoding: [0xfd,0xff,0x01]780 f64x2.convert_low_i32x4_u781 782 # CHECK: i8x16.relaxed_swizzle # encoding: [0xfd,0x80,0x02]783 i8x16.relaxed_swizzle784 785 # CHECK: i32x4.relaxed_trunc_f32x4_s # encoding: [0xfd,0x81,0x02]786 i32x4.relaxed_trunc_f32x4_s787 788 # CHECK: i32x4.relaxed_trunc_f32x4_u # encoding: [0xfd,0x82,0x02]789 i32x4.relaxed_trunc_f32x4_u790 791 # CHECK: i32x4.relaxed_trunc_f64x2_s_zero # encoding: [0xfd,0x83,0x02]792 i32x4.relaxed_trunc_f64x2_s_zero793 794 # CHECK: i32x4.relaxed_trunc_f64x2_u_zero # encoding: [0xfd,0x84,0x02]795 i32x4.relaxed_trunc_f64x2_u_zero796 797 # CHECK: f32x4.relaxed_madd # encoding: [0xfd,0x85,0x02]798 f32x4.relaxed_madd799 800 # CHECK: f32x4.relaxed_nmadd # encoding: [0xfd,0x86,0x02]801 f32x4.relaxed_nmadd802 803 # CHECK: f64x2.relaxed_madd # encoding: [0xfd,0x87,0x02]804 f64x2.relaxed_madd805 806 # CHECK: f64x2.relaxed_nmadd # encoding: [0xfd,0x88,0x02]807 f64x2.relaxed_nmadd808 809 # CHECK: i8x16.relaxed_laneselect # encoding: [0xfd,0x89,0x02]810 i8x16.relaxed_laneselect811 812 # CHECK: i16x8.relaxed_laneselect # encoding: [0xfd,0x8a,0x02]813 i16x8.relaxed_laneselect814 815 # CHECK: i32x4.relaxed_laneselect # encoding: [0xfd,0x8b,0x02]816 i32x4.relaxed_laneselect817 818 # CHECK: i64x2.relaxed_laneselect # encoding: [0xfd,0x8c,0x02]819 i64x2.relaxed_laneselect820 821 # CHECK: f32x4.relaxed_min # encoding: [0xfd,0x8d,0x02]822 f32x4.relaxed_min823 824 # CHECK: f32x4.relaxed_max # encoding: [0xfd,0x8e,0x02]825 f32x4.relaxed_max826 827 # CHECK: f64x2.relaxed_min # encoding: [0xfd,0x8f,0x02]828 f64x2.relaxed_min829 830 # CHECK: f64x2.relaxed_max # encoding: [0xfd,0x90,0x02]831 f64x2.relaxed_max832 833 # CHECK: i16x8.relaxed_q15mulr_s # encoding: [0xfd,0x91,0x02]834 i16x8.relaxed_q15mulr_s835 836 # CHECK: i16x8.relaxed_dot_i8x16_i7x16_s # encoding: [0xfd,0x92,0x02]837 i16x8.relaxed_dot_i8x16_i7x16_s838 839 # CHECK: i32x4.relaxed_dot_i8x16_i7x16_add_s # encoding: [0xfd,0x93,0x02]840 i32x4.relaxed_dot_i8x16_i7x16_add_s841 842 # CHECK: f32.load_f16 48 # encoding: [0xfc,0x30,0x01,0x30]843 f32.load_f16 48844 845 # CHECK: f32.store_f16 32 # encoding: [0xfc,0x31,0x01,0x20]846 f32.store_f16 32847 848 # CHECK: f16x8.splat # encoding: [0xfd,0xa0,0x02]849 f16x8.splat850 851 # CHECK: f16x8.extract_lane 1 # encoding: [0xfd,0xa1,0x02,0x01]852 f16x8.extract_lane 1853 854 # CHECK: f16x8.replace_lane 1 # encoding: [0xfd,0xa2,0x02,0x01]855 f16x8.replace_lane 1856 857 # CHECK: f16x8.add # encoding: [0xfd,0xbd,0x02]858 f16x8.add859 860 # CHECK: f16x8.sub # encoding: [0xfd,0xbe,0x02]861 f16x8.sub862 863 # CHECK: f16x8.mul # encoding: [0xfd,0xbf,0x02]864 f16x8.mul865 866 # CHECK: f16x8.div # encoding: [0xfd,0xc0,0x02]867 f16x8.div868 869 # CHECK: f16x8.min # encoding: [0xfd,0xc1,0x02]870 f16x8.min871 872 # CHECK: f16x8.max # encoding: [0xfd,0xc2,0x02]873 f16x8.max874 875 # CHECK: f16x8.pmin # encoding: [0xfd,0xc3,0x02]876 f16x8.pmin877 878 # CHECK: f16x8.pmax # encoding: [0xfd,0xc4,0x02]879 f16x8.pmax880 881 # CHECK: f16x8.eq # encoding: [0xfd,0xb7,0x02]882 f16x8.eq883 884 # CHECK: f16x8.ne # encoding: [0xfd,0xb8,0x02]885 f16x8.ne886 887 # CHECK: f16x8.lt # encoding: [0xfd,0xb9,0x02]888 f16x8.lt889 890 # CHECK: f16x8.gt # encoding: [0xfd,0xba,0x02]891 f16x8.gt892 893 # CHECK: f16x8.le # encoding: [0xfd,0xbb,0x02]894 f16x8.le895 896 # CHECK: f16x8.ge # encoding: [0xfd,0xbc,0x02]897 f16x8.ge898 899 # CHECK: f16x8.abs # encoding: [0xfd,0xb0,0x02]900 f16x8.abs901 902 # CHECK: f16x8.neg # encoding: [0xfd,0xb1,0x02]903 f16x8.neg904 905 # CHECK: f16x8.sqrt # encoding: [0xfd,0xb2,0x02]906 f16x8.sqrt907 908 # CHECK: f16x8.ceil # encoding: [0xfd,0xb3,0x02]909 f16x8.ceil910 911 # CHECK: f16x8.floor # encoding: [0xfd,0xb4,0x02]912 f16x8.floor913 914 # CHECK: f16x8.trunc # encoding: [0xfd,0xb5,0x02]915 f16x8.trunc916 917 # CHECK: f16x8.nearest # encoding: [0xfd,0xb6,0x02]918 f16x8.nearest919 920 # CHECK: f16x8.madd # encoding: [0xfd,0xce,0x02]921 f16x8.madd922 923 # CHECK: f16x8.nmadd # encoding: [0xfd,0xcf,0x02]924 f16x8.nmadd925 926 # CHECK: i16x8.trunc_sat_f16x8_s # encoding: [0xfd,0xc5,0x02]927 i16x8.trunc_sat_f16x8_s928 929 # CHECK: i16x8.trunc_sat_f16x8_u # encoding: [0xfd,0xc6,0x02]930 i16x8.trunc_sat_f16x8_u931 932 # CHECK: f16x8.convert_i16x8_s # encoding: [0xfd,0xc7,0x02]933 f16x8.convert_i16x8_s934 935 # CHECK: f16x8.convert_i16x8_u # encoding: [0xfd,0xc8,0x02]936 f16x8.convert_i16x8_u937 938 end_function939