binaryArithmeticTests.wast 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551
  1. ;;-------------------------------------------------------------------------------------------------------
  2. ;; Copyright (C) Microsoft Corporation and contributors. All rights reserved.
  3. ;; Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. ;;-------------------------------------------------------------------------------------------------------
  5. (module
  6. (func
  7. (export "func_i32x4_add_3")
  8. (param i32 i32 i32 i32 i32 i32 i32 i32)
  9. (result i32)
  10. (local v128 v128 v128)
  11. v128.const i32x4 0 0 0 0
  12. get_local 0
  13. i32x4.replace_lane 0
  14. get_local 1
  15. i32x4.replace_lane 1
  16. get_local 2
  17. i32x4.replace_lane 2
  18. get_local 3
  19. i32x4.replace_lane 3
  20. set_local 8
  21. v128.const i32x4 0 0 0 0
  22. get_local 4
  23. i32x4.replace_lane 0
  24. get_local 5
  25. i32x4.replace_lane 1
  26. get_local 6
  27. i32x4.replace_lane 2
  28. get_local 7
  29. i32x4.replace_lane 3
  30. set_local 9
  31. (set_local
  32. 10
  33. (i32x4.add
  34. (get_local 8)
  35. (get_local 9)
  36. )
  37. )
  38. (i32x4.extract_lane 3 (get_local 10))
  39. )
  40. (func
  41. (export "func_i32x4_sub_3")
  42. (param i32 i32 i32 i32 i32 i32 i32 i32)
  43. (result i32)
  44. (local v128 v128 v128)
  45. v128.const i32x4 0 0 0 0
  46. get_local 0
  47. i32x4.replace_lane 0
  48. get_local 1
  49. i32x4.replace_lane 1
  50. get_local 2
  51. i32x4.replace_lane 2
  52. get_local 3
  53. i32x4.replace_lane 3
  54. set_local 8
  55. v128.const i32x4 0 0 0 0
  56. get_local 4
  57. i32x4.replace_lane 0
  58. get_local 5
  59. i32x4.replace_lane 1
  60. get_local 6
  61. i32x4.replace_lane 2
  62. get_local 7
  63. i32x4.replace_lane 3
  64. set_local 9
  65. (set_local
  66. 10
  67. (i32x4.sub
  68. (get_local 8)
  69. (get_local 9)
  70. )
  71. )
  72. (i32x4.extract_lane 3 (get_local 10))
  73. )
  74. (func
  75. (export "func_i32x4_mul_3")
  76. (param i32 i32 i32 i32 i32 i32 i32 i32)
  77. (result i32)
  78. (local v128 v128 v128)
  79. v128.const i32x4 0 0 0 0
  80. get_local 0
  81. i32x4.replace_lane 0
  82. get_local 1
  83. i32x4.replace_lane 1
  84. get_local 2
  85. i32x4.replace_lane 2
  86. get_local 3
  87. i32x4.replace_lane 3
  88. set_local 8
  89. v128.const i32x4 0 0 0 0
  90. get_local 4
  91. i32x4.replace_lane 0
  92. get_local 5
  93. i32x4.replace_lane 1
  94. get_local 6
  95. i32x4.replace_lane 2
  96. get_local 7
  97. i32x4.replace_lane 3
  98. set_local 9
  99. (set_local
  100. 10
  101. (i32x4.mul
  102. (get_local 8)
  103. (get_local 9)
  104. )
  105. )
  106. (i32x4.extract_lane 3 (get_local 10))
  107. )
  108. (func
  109. (export "func_i32x4_shl_3")
  110. (param i32 i32 i32 i32 i32)
  111. (result i32)
  112. (local v128)
  113. v128.const i32x4 0 0 0 0
  114. get_local 0
  115. i32x4.replace_lane 0
  116. get_local 1
  117. i32x4.replace_lane 1
  118. get_local 2
  119. i32x4.replace_lane 2
  120. get_local 3
  121. i32x4.replace_lane 3
  122. set_local 5
  123. (set_local
  124. 5
  125. (i32x4.shl
  126. (get_local 5)
  127. (get_local 4)
  128. )
  129. )
  130. (i32x4.extract_lane 3 (get_local 5))
  131. )
  132. (func
  133. (export "func_i32x4_shr_3_s")
  134. (param i32 i32 i32 i32 i32)
  135. (result i32)
  136. (local v128)
  137. v128.const i32x4 0 0 0 0
  138. get_local 0
  139. i32x4.replace_lane 0
  140. get_local 1
  141. i32x4.replace_lane 1
  142. get_local 2
  143. i32x4.replace_lane 2
  144. get_local 3
  145. i32x4.replace_lane 3
  146. set_local 5
  147. (set_local
  148. 5
  149. (i32x4.shr_s
  150. (get_local 5)
  151. (get_local 4)
  152. )
  153. )
  154. (i32x4.extract_lane 3 (get_local 5))
  155. )
  156. (func
  157. (export "func_i32x4_shr_3_u")
  158. (param i32 i32 i32 i32 i32)
  159. (result i32)
  160. (local v128)
  161. v128.const i32x4 0 0 0 0
  162. get_local 0
  163. i32x4.replace_lane 0
  164. get_local 1
  165. i32x4.replace_lane 1
  166. get_local 2
  167. i32x4.replace_lane 2
  168. get_local 3
  169. i32x4.replace_lane 3
  170. set_local 5
  171. (set_local
  172. 5
  173. (i32x4.shr_u
  174. (get_local 5)
  175. (get_local 4)
  176. )
  177. )
  178. (i32x4.extract_lane 3 (get_local 5))
  179. )
  180. (func
  181. (export "func_i16x8_add_3_u")
  182. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  183. (result i32)
  184. (local v128 v128 v128)
  185. v128.const i32x4 0 0 0 0
  186. get_local 0
  187. i16x8.replace_lane 0
  188. get_local 1
  189. i16x8.replace_lane 1
  190. get_local 2
  191. i16x8.replace_lane 2
  192. get_local 3
  193. i16x8.replace_lane 3
  194. get_local 4
  195. i16x8.replace_lane 4
  196. get_local 5
  197. i16x8.replace_lane 5
  198. get_local 6
  199. i16x8.replace_lane 6
  200. get_local 7
  201. i16x8.replace_lane 7
  202. set_local 16
  203. v128.const i32x4 0 0 0 0
  204. get_local 8
  205. i16x8.replace_lane 0
  206. get_local 9
  207. i16x8.replace_lane 1
  208. get_local 10
  209. i16x8.replace_lane 2
  210. get_local 11
  211. i16x8.replace_lane 3
  212. get_local 12
  213. i16x8.replace_lane 4
  214. get_local 13
  215. i16x8.replace_lane 5
  216. get_local 14
  217. i16x8.replace_lane 6
  218. get_local 15
  219. i16x8.replace_lane 7
  220. set_local 17
  221. (set_local
  222. 18
  223. (i16x8.add
  224. (get_local 16)
  225. (get_local 17)
  226. )
  227. )
  228. (i16x8.extract_lane_u 3 (get_local 18))
  229. )
  230. (func
  231. (export "func_i16x8_addsaturate_3_s_u")
  232. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  233. (result i32)
  234. (local v128 v128 v128)
  235. v128.const i32x4 0 0 0 0
  236. get_local 0
  237. i16x8.replace_lane 0
  238. get_local 1
  239. i16x8.replace_lane 1
  240. get_local 2
  241. i16x8.replace_lane 2
  242. get_local 3
  243. i16x8.replace_lane 3
  244. get_local 4
  245. i16x8.replace_lane 4
  246. get_local 5
  247. i16x8.replace_lane 5
  248. get_local 6
  249. i16x8.replace_lane 6
  250. get_local 7
  251. i16x8.replace_lane 7
  252. set_local 16
  253. v128.const i32x4 0 0 0 0
  254. get_local 8
  255. i16x8.replace_lane 0
  256. get_local 9
  257. i16x8.replace_lane 1
  258. get_local 10
  259. i16x8.replace_lane 2
  260. get_local 11
  261. i16x8.replace_lane 3
  262. get_local 12
  263. i16x8.replace_lane 4
  264. get_local 13
  265. i16x8.replace_lane 5
  266. get_local 14
  267. i16x8.replace_lane 6
  268. get_local 15
  269. i16x8.replace_lane 7
  270. set_local 17
  271. (set_local
  272. 18
  273. (i16x8.add_sat_s
  274. (get_local 16)
  275. (get_local 17)
  276. )
  277. )
  278. (i16x8.extract_lane_u 3 (get_local 18))
  279. )
  280. (func
  281. (export "func_i16x8_addsaturate_3_u_u")
  282. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  283. (result i32)
  284. (local v128 v128 v128)
  285. v128.const i32x4 0 0 0 0
  286. get_local 0
  287. i16x8.replace_lane 0
  288. get_local 1
  289. i16x8.replace_lane 1
  290. get_local 2
  291. i16x8.replace_lane 2
  292. get_local 3
  293. i16x8.replace_lane 3
  294. get_local 4
  295. i16x8.replace_lane 4
  296. get_local 5
  297. i16x8.replace_lane 5
  298. get_local 6
  299. i16x8.replace_lane 6
  300. get_local 7
  301. i16x8.replace_lane 7
  302. set_local 16
  303. v128.const i32x4 0 0 0 0
  304. get_local 8
  305. i16x8.replace_lane 0
  306. get_local 9
  307. i16x8.replace_lane 1
  308. get_local 10
  309. i16x8.replace_lane 2
  310. get_local 11
  311. i16x8.replace_lane 3
  312. get_local 12
  313. i16x8.replace_lane 4
  314. get_local 13
  315. i16x8.replace_lane 5
  316. get_local 14
  317. i16x8.replace_lane 6
  318. get_local 15
  319. i16x8.replace_lane 7
  320. set_local 17
  321. (set_local
  322. 18
  323. (i16x8.add_sat_u
  324. (get_local 16)
  325. (get_local 17)
  326. )
  327. )
  328. (i16x8.extract_lane_u 3 (get_local 18))
  329. )
  330. (func
  331. (export "func_i16x8_sub_3_u")
  332. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  333. (result i32)
  334. (local v128 v128 v128)
  335. v128.const i32x4 0 0 0 0
  336. get_local 0
  337. i16x8.replace_lane 0
  338. get_local 1
  339. i16x8.replace_lane 1
  340. get_local 2
  341. i16x8.replace_lane 2
  342. get_local 3
  343. i16x8.replace_lane 3
  344. get_local 4
  345. i16x8.replace_lane 4
  346. get_local 5
  347. i16x8.replace_lane 5
  348. get_local 6
  349. i16x8.replace_lane 6
  350. get_local 7
  351. i16x8.replace_lane 7
  352. set_local 16
  353. v128.const i32x4 0 0 0 0
  354. get_local 8
  355. i16x8.replace_lane 0
  356. get_local 9
  357. i16x8.replace_lane 1
  358. get_local 10
  359. i16x8.replace_lane 2
  360. get_local 11
  361. i16x8.replace_lane 3
  362. get_local 12
  363. i16x8.replace_lane 4
  364. get_local 13
  365. i16x8.replace_lane 5
  366. get_local 14
  367. i16x8.replace_lane 6
  368. get_local 15
  369. i16x8.replace_lane 7
  370. set_local 17
  371. (set_local
  372. 18
  373. (i16x8.sub
  374. (get_local 16)
  375. (get_local 17)
  376. )
  377. )
  378. (i16x8.extract_lane_u 3 (get_local 18))
  379. )
  380. (func
  381. (export "func_i16x8_subsaturate_3_s_u")
  382. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  383. (result i32)
  384. (local v128 v128 v128)
  385. v128.const i32x4 0 0 0 0
  386. get_local 0
  387. i16x8.replace_lane 0
  388. get_local 1
  389. i16x8.replace_lane 1
  390. get_local 2
  391. i16x8.replace_lane 2
  392. get_local 3
  393. i16x8.replace_lane 3
  394. get_local 4
  395. i16x8.replace_lane 4
  396. get_local 5
  397. i16x8.replace_lane 5
  398. get_local 6
  399. i16x8.replace_lane 6
  400. get_local 7
  401. i16x8.replace_lane 7
  402. set_local 16
  403. v128.const i32x4 0 0 0 0
  404. get_local 8
  405. i16x8.replace_lane 0
  406. get_local 9
  407. i16x8.replace_lane 1
  408. get_local 10
  409. i16x8.replace_lane 2
  410. get_local 11
  411. i16x8.replace_lane 3
  412. get_local 12
  413. i16x8.replace_lane 4
  414. get_local 13
  415. i16x8.replace_lane 5
  416. get_local 14
  417. i16x8.replace_lane 6
  418. get_local 15
  419. i16x8.replace_lane 7
  420. set_local 17
  421. (set_local
  422. 18
  423. (i16x8.sub_sat_s
  424. (get_local 16)
  425. (get_local 17)
  426. )
  427. )
  428. (i16x8.extract_lane_u 3 (get_local 18))
  429. )
  430. (func
  431. (export "func_i16x8_subsaturate_3_u_u")
  432. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  433. (result i32)
  434. (local v128 v128 v128)
  435. v128.const i32x4 0 0 0 0
  436. get_local 0
  437. i16x8.replace_lane 0
  438. get_local 1
  439. i16x8.replace_lane 1
  440. get_local 2
  441. i16x8.replace_lane 2
  442. get_local 3
  443. i16x8.replace_lane 3
  444. get_local 4
  445. i16x8.replace_lane 4
  446. get_local 5
  447. i16x8.replace_lane 5
  448. get_local 6
  449. i16x8.replace_lane 6
  450. get_local 7
  451. i16x8.replace_lane 7
  452. set_local 16
  453. v128.const i32x4 0 0 0 0
  454. get_local 8
  455. i16x8.replace_lane 0
  456. get_local 9
  457. i16x8.replace_lane 1
  458. get_local 10
  459. i16x8.replace_lane 2
  460. get_local 11
  461. i16x8.replace_lane 3
  462. get_local 12
  463. i16x8.replace_lane 4
  464. get_local 13
  465. i16x8.replace_lane 5
  466. get_local 14
  467. i16x8.replace_lane 6
  468. get_local 15
  469. i16x8.replace_lane 7
  470. set_local 17
  471. (set_local
  472. 18
  473. (i16x8.sub_sat_u
  474. (get_local 16)
  475. (get_local 17)
  476. )
  477. )
  478. (i16x8.extract_lane_u 3 (get_local 18))
  479. )
  480. (func
  481. (export "func_i16x8_mul_3_u")
  482. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  483. (result i32)
  484. (local v128 v128 v128)
  485. v128.const i32x4 0 0 0 0
  486. get_local 0
  487. i16x8.replace_lane 0
  488. get_local 1
  489. i16x8.replace_lane 1
  490. get_local 2
  491. i16x8.replace_lane 2
  492. get_local 3
  493. i16x8.replace_lane 3
  494. get_local 4
  495. i16x8.replace_lane 4
  496. get_local 5
  497. i16x8.replace_lane 5
  498. get_local 6
  499. i16x8.replace_lane 6
  500. get_local 7
  501. i16x8.replace_lane 7
  502. set_local 16
  503. v128.const i32x4 0 0 0 0
  504. get_local 8
  505. i16x8.replace_lane 0
  506. get_local 9
  507. i16x8.replace_lane 1
  508. get_local 10
  509. i16x8.replace_lane 2
  510. get_local 11
  511. i16x8.replace_lane 3
  512. get_local 12
  513. i16x8.replace_lane 4
  514. get_local 13
  515. i16x8.replace_lane 5
  516. get_local 14
  517. i16x8.replace_lane 6
  518. get_local 15
  519. i16x8.replace_lane 7
  520. set_local 17
  521. (set_local
  522. 18
  523. (i16x8.mul
  524. (get_local 16)
  525. (get_local 17)
  526. )
  527. )
  528. (i16x8.extract_lane_u 3 (get_local 18))
  529. )
  530. (func
  531. (export "func_i16x8_shl_3_u")
  532. (param i32 i32 i32 i32 i32 i32 i32 i32 i32)
  533. (result i32)
  534. (local v128)
  535. v128.const i32x4 0 0 0 0
  536. get_local 0
  537. i16x8.replace_lane 0
  538. get_local 1
  539. i16x8.replace_lane 1
  540. get_local 2
  541. i16x8.replace_lane 2
  542. get_local 3
  543. i16x8.replace_lane 3
  544. get_local 4
  545. i16x8.replace_lane 4
  546. get_local 5
  547. i16x8.replace_lane 5
  548. get_local 6
  549. i16x8.replace_lane 6
  550. get_local 7
  551. i16x8.replace_lane 7
  552. set_local 9
  553. (set_local
  554. 9
  555. (i16x8.shl
  556. (get_local 9)
  557. (get_local 8)
  558. )
  559. )
  560. (i16x8.extract_lane_u 3 (get_local 9))
  561. )
  562. (func
  563. (export "func_i16x8_shr_3_s_u")
  564. (param i32 i32 i32 i32 i32 i32 i32 i32 i32)
  565. (result i32)
  566. (local v128)
  567. v128.const i32x4 0 0 0 0
  568. get_local 0
  569. i16x8.replace_lane 0
  570. get_local 1
  571. i16x8.replace_lane 1
  572. get_local 2
  573. i16x8.replace_lane 2
  574. get_local 3
  575. i16x8.replace_lane 3
  576. get_local 4
  577. i16x8.replace_lane 4
  578. get_local 5
  579. i16x8.replace_lane 5
  580. get_local 6
  581. i16x8.replace_lane 6
  582. get_local 7
  583. i16x8.replace_lane 7
  584. set_local 9
  585. (set_local
  586. 9
  587. (i16x8.shr_s
  588. (get_local 9)
  589. (get_local 8)
  590. )
  591. )
  592. (i16x8.extract_lane_u 3 (get_local 9))
  593. )
  594. (func
  595. (export "func_i16x8_shr_3_u_u")
  596. (param i32 i32 i32 i32 i32 i32 i32 i32 i32)
  597. (result i32)
  598. (local v128)
  599. v128.const i32x4 0 0 0 0
  600. get_local 0
  601. i16x8.replace_lane 0
  602. get_local 1
  603. i16x8.replace_lane 1
  604. get_local 2
  605. i16x8.replace_lane 2
  606. get_local 3
  607. i16x8.replace_lane 3
  608. get_local 4
  609. i16x8.replace_lane 4
  610. get_local 5
  611. i16x8.replace_lane 5
  612. get_local 6
  613. i16x8.replace_lane 6
  614. get_local 7
  615. i16x8.replace_lane 7
  616. set_local 9
  617. (set_local
  618. 9
  619. (i16x8.shr_u
  620. (get_local 9)
  621. (get_local 8)
  622. )
  623. )
  624. (i16x8.extract_lane_u 3 (get_local 9))
  625. )
  626. (func
  627. (export "func_i8x16_add_3_u")
  628. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  629. (result i32)
  630. (local v128 v128 v128)
  631. v128.const i32x4 0 0 0 0
  632. get_local 0
  633. i8x16.replace_lane 0
  634. get_local 1
  635. i8x16.replace_lane 1
  636. get_local 2
  637. i8x16.replace_lane 2
  638. get_local 3
  639. i8x16.replace_lane 3
  640. get_local 4
  641. i8x16.replace_lane 4
  642. get_local 5
  643. i8x16.replace_lane 5
  644. get_local 6
  645. i8x16.replace_lane 6
  646. get_local 7
  647. i8x16.replace_lane 7
  648. get_local 8
  649. i8x16.replace_lane 8
  650. get_local 9
  651. i8x16.replace_lane 9
  652. get_local 10
  653. i8x16.replace_lane 10
  654. get_local 11
  655. i8x16.replace_lane 11
  656. get_local 12
  657. i8x16.replace_lane 12
  658. get_local 13
  659. i8x16.replace_lane 13
  660. get_local 14
  661. i8x16.replace_lane 14
  662. get_local 15
  663. i8x16.replace_lane 15
  664. set_local 32
  665. v128.const i32x4 0 0 0 0
  666. get_local 16
  667. i8x16.replace_lane 0
  668. get_local 17
  669. i8x16.replace_lane 1
  670. get_local 18
  671. i8x16.replace_lane 2
  672. get_local 19
  673. i8x16.replace_lane 3
  674. get_local 20
  675. i8x16.replace_lane 4
  676. get_local 21
  677. i8x16.replace_lane 5
  678. get_local 22
  679. i8x16.replace_lane 6
  680. get_local 23
  681. i8x16.replace_lane 7
  682. get_local 24
  683. i8x16.replace_lane 8
  684. get_local 25
  685. i8x16.replace_lane 9
  686. get_local 26
  687. i8x16.replace_lane 10
  688. get_local 27
  689. i8x16.replace_lane 11
  690. get_local 28
  691. i8x16.replace_lane 12
  692. get_local 29
  693. i8x16.replace_lane 13
  694. get_local 30
  695. i8x16.replace_lane 14
  696. get_local 31
  697. i8x16.replace_lane 15
  698. set_local 33
  699. (set_local
  700. 34
  701. (i8x16.add
  702. (get_local 32)
  703. (get_local 33)
  704. )
  705. )
  706. (i8x16.extract_lane_u 3 (get_local 34))
  707. )
  708. (func
  709. (export "func_i8x16_addsaturate_3_s_u")
  710. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  711. (result i32)
  712. (local v128 v128 v128)
  713. v128.const i32x4 0 0 0 0
  714. get_local 0
  715. i8x16.replace_lane 0
  716. get_local 1
  717. i8x16.replace_lane 1
  718. get_local 2
  719. i8x16.replace_lane 2
  720. get_local 3
  721. i8x16.replace_lane 3
  722. get_local 4
  723. i8x16.replace_lane 4
  724. get_local 5
  725. i8x16.replace_lane 5
  726. get_local 6
  727. i8x16.replace_lane 6
  728. get_local 7
  729. i8x16.replace_lane 7
  730. get_local 8
  731. i8x16.replace_lane 8
  732. get_local 9
  733. i8x16.replace_lane 9
  734. get_local 10
  735. i8x16.replace_lane 10
  736. get_local 11
  737. i8x16.replace_lane 11
  738. get_local 12
  739. i8x16.replace_lane 12
  740. get_local 13
  741. i8x16.replace_lane 13
  742. get_local 14
  743. i8x16.replace_lane 14
  744. get_local 15
  745. i8x16.replace_lane 15
  746. set_local 32
  747. v128.const i32x4 0 0 0 0
  748. get_local 16
  749. i8x16.replace_lane 0
  750. get_local 17
  751. i8x16.replace_lane 1
  752. get_local 18
  753. i8x16.replace_lane 2
  754. get_local 19
  755. i8x16.replace_lane 3
  756. get_local 20
  757. i8x16.replace_lane 4
  758. get_local 21
  759. i8x16.replace_lane 5
  760. get_local 22
  761. i8x16.replace_lane 6
  762. get_local 23
  763. i8x16.replace_lane 7
  764. get_local 24
  765. i8x16.replace_lane 8
  766. get_local 25
  767. i8x16.replace_lane 9
  768. get_local 26
  769. i8x16.replace_lane 10
  770. get_local 27
  771. i8x16.replace_lane 11
  772. get_local 28
  773. i8x16.replace_lane 12
  774. get_local 29
  775. i8x16.replace_lane 13
  776. get_local 30
  777. i8x16.replace_lane 14
  778. get_local 31
  779. i8x16.replace_lane 15
  780. set_local 33
  781. (set_local
  782. 34
  783. (i8x16.add_sat_s
  784. (get_local 32)
  785. (get_local 33)
  786. )
  787. )
  788. (i8x16.extract_lane_u 3 (get_local 34))
  789. )
  790. (func
  791. (export "func_i8x16_addsaturate_3_u_u")
  792. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  793. (result i32)
  794. (local v128 v128 v128)
  795. v128.const i32x4 0 0 0 0
  796. get_local 0
  797. i8x16.replace_lane 0
  798. get_local 1
  799. i8x16.replace_lane 1
  800. get_local 2
  801. i8x16.replace_lane 2
  802. get_local 3
  803. i8x16.replace_lane 3
  804. get_local 4
  805. i8x16.replace_lane 4
  806. get_local 5
  807. i8x16.replace_lane 5
  808. get_local 6
  809. i8x16.replace_lane 6
  810. get_local 7
  811. i8x16.replace_lane 7
  812. get_local 8
  813. i8x16.replace_lane 8
  814. get_local 9
  815. i8x16.replace_lane 9
  816. get_local 10
  817. i8x16.replace_lane 10
  818. get_local 11
  819. i8x16.replace_lane 11
  820. get_local 12
  821. i8x16.replace_lane 12
  822. get_local 13
  823. i8x16.replace_lane 13
  824. get_local 14
  825. i8x16.replace_lane 14
  826. get_local 15
  827. i8x16.replace_lane 15
  828. set_local 32
  829. v128.const i32x4 0 0 0 0
  830. get_local 16
  831. i8x16.replace_lane 0
  832. get_local 17
  833. i8x16.replace_lane 1
  834. get_local 18
  835. i8x16.replace_lane 2
  836. get_local 19
  837. i8x16.replace_lane 3
  838. get_local 20
  839. i8x16.replace_lane 4
  840. get_local 21
  841. i8x16.replace_lane 5
  842. get_local 22
  843. i8x16.replace_lane 6
  844. get_local 23
  845. i8x16.replace_lane 7
  846. get_local 24
  847. i8x16.replace_lane 8
  848. get_local 25
  849. i8x16.replace_lane 9
  850. get_local 26
  851. i8x16.replace_lane 10
  852. get_local 27
  853. i8x16.replace_lane 11
  854. get_local 28
  855. i8x16.replace_lane 12
  856. get_local 29
  857. i8x16.replace_lane 13
  858. get_local 30
  859. i8x16.replace_lane 14
  860. get_local 31
  861. i8x16.replace_lane 15
  862. set_local 33
  863. (set_local
  864. 34
  865. (i8x16.add_sat_u
  866. (get_local 32)
  867. (get_local 33)
  868. )
  869. )
  870. (i8x16.extract_lane_u 3 (get_local 34))
  871. )
  872. (func
  873. (export "func_i8x16_sub_3_u")
  874. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  875. (result i32)
  876. (local v128 v128 v128)
  877. v128.const i32x4 0 0 0 0
  878. get_local 0
  879. i8x16.replace_lane 0
  880. get_local 1
  881. i8x16.replace_lane 1
  882. get_local 2
  883. i8x16.replace_lane 2
  884. get_local 3
  885. i8x16.replace_lane 3
  886. get_local 4
  887. i8x16.replace_lane 4
  888. get_local 5
  889. i8x16.replace_lane 5
  890. get_local 6
  891. i8x16.replace_lane 6
  892. get_local 7
  893. i8x16.replace_lane 7
  894. get_local 8
  895. i8x16.replace_lane 8
  896. get_local 9
  897. i8x16.replace_lane 9
  898. get_local 10
  899. i8x16.replace_lane 10
  900. get_local 11
  901. i8x16.replace_lane 11
  902. get_local 12
  903. i8x16.replace_lane 12
  904. get_local 13
  905. i8x16.replace_lane 13
  906. get_local 14
  907. i8x16.replace_lane 14
  908. get_local 15
  909. i8x16.replace_lane 15
  910. set_local 32
  911. v128.const i32x4 0 0 0 0
  912. get_local 16
  913. i8x16.replace_lane 0
  914. get_local 17
  915. i8x16.replace_lane 1
  916. get_local 18
  917. i8x16.replace_lane 2
  918. get_local 19
  919. i8x16.replace_lane 3
  920. get_local 20
  921. i8x16.replace_lane 4
  922. get_local 21
  923. i8x16.replace_lane 5
  924. get_local 22
  925. i8x16.replace_lane 6
  926. get_local 23
  927. i8x16.replace_lane 7
  928. get_local 24
  929. i8x16.replace_lane 8
  930. get_local 25
  931. i8x16.replace_lane 9
  932. get_local 26
  933. i8x16.replace_lane 10
  934. get_local 27
  935. i8x16.replace_lane 11
  936. get_local 28
  937. i8x16.replace_lane 12
  938. get_local 29
  939. i8x16.replace_lane 13
  940. get_local 30
  941. i8x16.replace_lane 14
  942. get_local 31
  943. i8x16.replace_lane 15
  944. set_local 33
  945. (set_local
  946. 34
  947. (i8x16.sub
  948. (get_local 32)
  949. (get_local 33)
  950. )
  951. )
  952. (i8x16.extract_lane_u 3 (get_local 34))
  953. )
  954. (func
  955. (export "func_i8x16_subsaturate_3_s_u")
  956. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  957. (result i32)
  958. (local v128 v128 v128)
  959. v128.const i32x4 0 0 0 0
  960. get_local 0
  961. i8x16.replace_lane 0
  962. get_local 1
  963. i8x16.replace_lane 1
  964. get_local 2
  965. i8x16.replace_lane 2
  966. get_local 3
  967. i8x16.replace_lane 3
  968. get_local 4
  969. i8x16.replace_lane 4
  970. get_local 5
  971. i8x16.replace_lane 5
  972. get_local 6
  973. i8x16.replace_lane 6
  974. get_local 7
  975. i8x16.replace_lane 7
  976. get_local 8
  977. i8x16.replace_lane 8
  978. get_local 9
  979. i8x16.replace_lane 9
  980. get_local 10
  981. i8x16.replace_lane 10
  982. get_local 11
  983. i8x16.replace_lane 11
  984. get_local 12
  985. i8x16.replace_lane 12
  986. get_local 13
  987. i8x16.replace_lane 13
  988. get_local 14
  989. i8x16.replace_lane 14
  990. get_local 15
  991. i8x16.replace_lane 15
  992. set_local 32
  993. v128.const i32x4 0 0 0 0
  994. get_local 16
  995. i8x16.replace_lane 0
  996. get_local 17
  997. i8x16.replace_lane 1
  998. get_local 18
  999. i8x16.replace_lane 2
  1000. get_local 19
  1001. i8x16.replace_lane 3
  1002. get_local 20
  1003. i8x16.replace_lane 4
  1004. get_local 21
  1005. i8x16.replace_lane 5
  1006. get_local 22
  1007. i8x16.replace_lane 6
  1008. get_local 23
  1009. i8x16.replace_lane 7
  1010. get_local 24
  1011. i8x16.replace_lane 8
  1012. get_local 25
  1013. i8x16.replace_lane 9
  1014. get_local 26
  1015. i8x16.replace_lane 10
  1016. get_local 27
  1017. i8x16.replace_lane 11
  1018. get_local 28
  1019. i8x16.replace_lane 12
  1020. get_local 29
  1021. i8x16.replace_lane 13
  1022. get_local 30
  1023. i8x16.replace_lane 14
  1024. get_local 31
  1025. i8x16.replace_lane 15
  1026. set_local 33
  1027. (set_local
  1028. 34
  1029. (i8x16.sub_sat_s
  1030. (get_local 32)
  1031. (get_local 33)
  1032. )
  1033. )
  1034. (i8x16.extract_lane_u 3 (get_local 34))
  1035. )
  1036. (func
  1037. (export "func_i8x16_subsaturate_3_u_u")
  1038. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  1039. (result i32)
  1040. (local v128 v128 v128)
  1041. v128.const i32x4 0 0 0 0
  1042. get_local 0
  1043. i8x16.replace_lane 0
  1044. get_local 1
  1045. i8x16.replace_lane 1
  1046. get_local 2
  1047. i8x16.replace_lane 2
  1048. get_local 3
  1049. i8x16.replace_lane 3
  1050. get_local 4
  1051. i8x16.replace_lane 4
  1052. get_local 5
  1053. i8x16.replace_lane 5
  1054. get_local 6
  1055. i8x16.replace_lane 6
  1056. get_local 7
  1057. i8x16.replace_lane 7
  1058. get_local 8
  1059. i8x16.replace_lane 8
  1060. get_local 9
  1061. i8x16.replace_lane 9
  1062. get_local 10
  1063. i8x16.replace_lane 10
  1064. get_local 11
  1065. i8x16.replace_lane 11
  1066. get_local 12
  1067. i8x16.replace_lane 12
  1068. get_local 13
  1069. i8x16.replace_lane 13
  1070. get_local 14
  1071. i8x16.replace_lane 14
  1072. get_local 15
  1073. i8x16.replace_lane 15
  1074. set_local 32
  1075. v128.const i32x4 0 0 0 0
  1076. get_local 16
  1077. i8x16.replace_lane 0
  1078. get_local 17
  1079. i8x16.replace_lane 1
  1080. get_local 18
  1081. i8x16.replace_lane 2
  1082. get_local 19
  1083. i8x16.replace_lane 3
  1084. get_local 20
  1085. i8x16.replace_lane 4
  1086. get_local 21
  1087. i8x16.replace_lane 5
  1088. get_local 22
  1089. i8x16.replace_lane 6
  1090. get_local 23
  1091. i8x16.replace_lane 7
  1092. get_local 24
  1093. i8x16.replace_lane 8
  1094. get_local 25
  1095. i8x16.replace_lane 9
  1096. get_local 26
  1097. i8x16.replace_lane 10
  1098. get_local 27
  1099. i8x16.replace_lane 11
  1100. get_local 28
  1101. i8x16.replace_lane 12
  1102. get_local 29
  1103. i8x16.replace_lane 13
  1104. get_local 30
  1105. i8x16.replace_lane 14
  1106. get_local 31
  1107. i8x16.replace_lane 15
  1108. set_local 33
  1109. (set_local
  1110. 34
  1111. (i8x16.sub_sat_u
  1112. (get_local 32)
  1113. (get_local 33)
  1114. )
  1115. )
  1116. (i8x16.extract_lane_u 3 (get_local 34))
  1117. )
  1118. (func
  1119. (export "func_i8x16_shl_3_u")
  1120. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  1121. (result i32)
  1122. (local v128)
  1123. v128.const i32x4 0 0 0 0
  1124. get_local 0
  1125. i8x16.replace_lane 0
  1126. get_local 1
  1127. i8x16.replace_lane 1
  1128. get_local 2
  1129. i8x16.replace_lane 2
  1130. get_local 3
  1131. i8x16.replace_lane 3
  1132. get_local 4
  1133. i8x16.replace_lane 4
  1134. get_local 5
  1135. i8x16.replace_lane 5
  1136. get_local 6
  1137. i8x16.replace_lane 6
  1138. get_local 7
  1139. i8x16.replace_lane 7
  1140. get_local 8
  1141. i8x16.replace_lane 8
  1142. get_local 9
  1143. i8x16.replace_lane 9
  1144. get_local 10
  1145. i8x16.replace_lane 10
  1146. get_local 11
  1147. i8x16.replace_lane 11
  1148. get_local 12
  1149. i8x16.replace_lane 12
  1150. get_local 13
  1151. i8x16.replace_lane 13
  1152. get_local 14
  1153. i8x16.replace_lane 14
  1154. get_local 15
  1155. i8x16.replace_lane 15
  1156. set_local 17
  1157. (set_local
  1158. 17
  1159. (i8x16.shl
  1160. (get_local 17)
  1161. (get_local 16)
  1162. )
  1163. )
  1164. (i8x16.extract_lane_u 3 (get_local 17))
  1165. )
  1166. (func
  1167. (export "func_i8x16_shr_3_s_u")
  1168. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  1169. (result i32)
  1170. (local v128)
  1171. v128.const i32x4 0 0 0 0
  1172. get_local 0
  1173. i8x16.replace_lane 0
  1174. get_local 1
  1175. i8x16.replace_lane 1
  1176. get_local 2
  1177. i8x16.replace_lane 2
  1178. get_local 3
  1179. i8x16.replace_lane 3
  1180. get_local 4
  1181. i8x16.replace_lane 4
  1182. get_local 5
  1183. i8x16.replace_lane 5
  1184. get_local 6
  1185. i8x16.replace_lane 6
  1186. get_local 7
  1187. i8x16.replace_lane 7
  1188. get_local 8
  1189. i8x16.replace_lane 8
  1190. get_local 9
  1191. i8x16.replace_lane 9
  1192. get_local 10
  1193. i8x16.replace_lane 10
  1194. get_local 11
  1195. i8x16.replace_lane 11
  1196. get_local 12
  1197. i8x16.replace_lane 12
  1198. get_local 13
  1199. i8x16.replace_lane 13
  1200. get_local 14
  1201. i8x16.replace_lane 14
  1202. get_local 15
  1203. i8x16.replace_lane 15
  1204. set_local 17
  1205. (set_local
  1206. 17
  1207. (i8x16.shr_s
  1208. (get_local 17)
  1209. (get_local 16)
  1210. )
  1211. )
  1212. (i8x16.extract_lane_u 3 (get_local 17))
  1213. )
  1214. (func
  1215. (export "func_i8x16_shr_3_u_u")
  1216. (param i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
  1217. (result i32)
  1218. (local v128)
  1219. v128.const i32x4 0 0 0 0
  1220. get_local 0
  1221. i8x16.replace_lane 0
  1222. get_local 1
  1223. i8x16.replace_lane 1
  1224. get_local 2
  1225. i8x16.replace_lane 2
  1226. get_local 3
  1227. i8x16.replace_lane 3
  1228. get_local 4
  1229. i8x16.replace_lane 4
  1230. get_local 5
  1231. i8x16.replace_lane 5
  1232. get_local 6
  1233. i8x16.replace_lane 6
  1234. get_local 7
  1235. i8x16.replace_lane 7
  1236. get_local 8
  1237. i8x16.replace_lane 8
  1238. get_local 9
  1239. i8x16.replace_lane 9
  1240. get_local 10
  1241. i8x16.replace_lane 10
  1242. get_local 11
  1243. i8x16.replace_lane 11
  1244. get_local 12
  1245. i8x16.replace_lane 12
  1246. get_local 13
  1247. i8x16.replace_lane 13
  1248. get_local 14
  1249. i8x16.replace_lane 14
  1250. get_local 15
  1251. i8x16.replace_lane 15
  1252. set_local 17
  1253. (set_local
  1254. 17
  1255. (i8x16.shr_u
  1256. (get_local 17)
  1257. (get_local 16)
  1258. )
  1259. )
  1260. (i8x16.extract_lane_u 3 (get_local 17))
  1261. )
  1262. (func
  1263. (export "func_f32x4_add_3")
  1264. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1265. (result f32)
  1266. (local v128 v128 v128)
  1267. v128.const i32x4 0 0 0 0
  1268. get_local 0
  1269. f32x4.replace_lane 0
  1270. get_local 1
  1271. f32x4.replace_lane 1
  1272. get_local 2
  1273. f32x4.replace_lane 2
  1274. get_local 3
  1275. f32x4.replace_lane 3
  1276. set_local 8
  1277. v128.const i32x4 0 0 0 0
  1278. get_local 4
  1279. f32x4.replace_lane 0
  1280. get_local 5
  1281. f32x4.replace_lane 1
  1282. get_local 6
  1283. f32x4.replace_lane 2
  1284. get_local 7
  1285. f32x4.replace_lane 3
  1286. set_local 9
  1287. (set_local
  1288. 10
  1289. (f32x4.add
  1290. (get_local 8)
  1291. (get_local 9)
  1292. )
  1293. )
  1294. (f32x4.extract_lane 3 (get_local 10))
  1295. )
  1296. (func
  1297. (export "func_f32x4_sub_3")
  1298. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1299. (result f32)
  1300. (local v128 v128 v128)
  1301. v128.const i32x4 0 0 0 0
  1302. get_local 0
  1303. f32x4.replace_lane 0
  1304. get_local 1
  1305. f32x4.replace_lane 1
  1306. get_local 2
  1307. f32x4.replace_lane 2
  1308. get_local 3
  1309. f32x4.replace_lane 3
  1310. set_local 8
  1311. v128.const i32x4 0 0 0 0
  1312. get_local 4
  1313. f32x4.replace_lane 0
  1314. get_local 5
  1315. f32x4.replace_lane 1
  1316. get_local 6
  1317. f32x4.replace_lane 2
  1318. get_local 7
  1319. f32x4.replace_lane 3
  1320. set_local 9
  1321. (set_local
  1322. 10
  1323. (f32x4.sub
  1324. (get_local 8)
  1325. (get_local 9)
  1326. )
  1327. )
  1328. (f32x4.extract_lane 3 (get_local 10))
  1329. )
  1330. (func
  1331. (export "func_f32x4_mul_3")
  1332. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1333. (result f32)
  1334. (local v128 v128 v128)
  1335. v128.const i32x4 0 0 0 0
  1336. get_local 0
  1337. f32x4.replace_lane 0
  1338. get_local 1
  1339. f32x4.replace_lane 1
  1340. get_local 2
  1341. f32x4.replace_lane 2
  1342. get_local 3
  1343. f32x4.replace_lane 3
  1344. set_local 8
  1345. v128.const i32x4 0 0 0 0
  1346. get_local 4
  1347. f32x4.replace_lane 0
  1348. get_local 5
  1349. f32x4.replace_lane 1
  1350. get_local 6
  1351. f32x4.replace_lane 2
  1352. get_local 7
  1353. f32x4.replace_lane 3
  1354. set_local 9
  1355. (set_local
  1356. 10
  1357. (f32x4.mul
  1358. (get_local 8)
  1359. (get_local 9)
  1360. )
  1361. )
  1362. (f32x4.extract_lane 3 (get_local 10))
  1363. )
  1364. (func
  1365. (export "func_f32x4_div_3")
  1366. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1367. (result f32)
  1368. (local v128 v128 v128)
  1369. v128.const i32x4 0 0 0 0
  1370. get_local 0
  1371. f32x4.replace_lane 0
  1372. get_local 1
  1373. f32x4.replace_lane 1
  1374. get_local 2
  1375. f32x4.replace_lane 2
  1376. get_local 3
  1377. f32x4.replace_lane 3
  1378. set_local 8
  1379. v128.const i32x4 0 0 0 0
  1380. get_local 4
  1381. f32x4.replace_lane 0
  1382. get_local 5
  1383. f32x4.replace_lane 1
  1384. get_local 6
  1385. f32x4.replace_lane 2
  1386. get_local 7
  1387. f32x4.replace_lane 3
  1388. set_local 9
  1389. (set_local
  1390. 10
  1391. (f32x4.div
  1392. (get_local 8)
  1393. (get_local 9)
  1394. )
  1395. )
  1396. (f32x4.extract_lane 3 (get_local 10))
  1397. )
  1398. (func
  1399. (export "func_f32x4_min_3")
  1400. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1401. (result f32)
  1402. (local v128 v128 v128)
  1403. v128.const i32x4 0 0 0 0
  1404. get_local 0
  1405. f32x4.replace_lane 0
  1406. get_local 1
  1407. f32x4.replace_lane 1
  1408. get_local 2
  1409. f32x4.replace_lane 2
  1410. get_local 3
  1411. f32x4.replace_lane 3
  1412. set_local 8
  1413. v128.const i32x4 0 0 0 0
  1414. get_local 4
  1415. f32x4.replace_lane 0
  1416. get_local 5
  1417. f32x4.replace_lane 1
  1418. get_local 6
  1419. f32x4.replace_lane 2
  1420. get_local 7
  1421. f32x4.replace_lane 3
  1422. set_local 9
  1423. (set_local
  1424. 10
  1425. (f32x4.min
  1426. (get_local 8)
  1427. (get_local 9)
  1428. )
  1429. )
  1430. (f32x4.extract_lane 3 (get_local 10))
  1431. )
  1432. (func
  1433. (export "func_f32x4_max_3")
  1434. (param f32 f32 f32 f32 f32 f32 f32 f32)
  1435. (result f32)
  1436. (local v128 v128 v128)
  1437. v128.const i32x4 0 0 0 0
  1438. get_local 0
  1439. f32x4.replace_lane 0
  1440. get_local 1
  1441. f32x4.replace_lane 1
  1442. get_local 2
  1443. f32x4.replace_lane 2
  1444. get_local 3
  1445. f32x4.replace_lane 3
  1446. set_local 8
  1447. v128.const i32x4 0 0 0 0
  1448. get_local 4
  1449. f32x4.replace_lane 0
  1450. get_local 5
  1451. f32x4.replace_lane 1
  1452. get_local 6
  1453. f32x4.replace_lane 2
  1454. get_local 7
  1455. f32x4.replace_lane 3
  1456. set_local 9
  1457. (set_local
  1458. 10
  1459. (f32x4.max
  1460. (get_local 8)
  1461. (get_local 9)
  1462. )
  1463. )
  1464. (f32x4.extract_lane 3 (get_local 10))
  1465. )
  1466. )