Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_WASM_OPCODES_H_ | 5 #ifndef V8_WASM_OPCODES_H_ |
| 6 #define V8_WASM_OPCODES_H_ | 6 #define V8_WASM_OPCODES_H_ |
| 7 | 7 |
| 8 #include "src/globals.h" | 8 #include "src/globals.h" |
| 9 #include "src/machine-type.h" | 9 #include "src/machine-type.h" |
| 10 #include "src/runtime/runtime.h" | 10 #include "src/runtime/runtime.h" |
| (...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 283 V(I32AsmjsUConvertF64, 0xe3, i_d) | 283 V(I32AsmjsUConvertF64, 0xe3, i_d) |
| 284 | 284 |
| 285 #define FOREACH_SIMD_0_OPERAND_OPCODE(V) \ | 285 #define FOREACH_SIMD_0_OPERAND_OPCODE(V) \ |
| 286 V(F32x4Splat, 0xe500, s_f) \ | 286 V(F32x4Splat, 0xe500, s_f) \ |
| 287 V(F32x4Abs, 0xe503, s_s) \ | 287 V(F32x4Abs, 0xe503, s_s) \ |
| 288 V(F32x4Neg, 0xe504, s_s) \ | 288 V(F32x4Neg, 0xe504, s_s) \ |
| 289 V(F32x4Sqrt, 0xe505, s_s) \ | 289 V(F32x4Sqrt, 0xe505, s_s) \ |
| 290 V(F32x4RecipApprox, 0xe506, s_s) \ | 290 V(F32x4RecipApprox, 0xe506, s_s) \ |
| 291 V(F32x4RecipSqrtApprox, 0xe507, s_s) \ | 291 V(F32x4RecipSqrtApprox, 0xe507, s_s) \ |
| 292 V(F32x4Add, 0xe508, s_ss) \ | 292 V(F32x4Add, 0xe508, s_ss) \ |
| 293 V(F32x4AddHoriz, 0xe5b9, s_ss) \ | |
|
georgia.kouveli
2017/04/20 14:53:06
Perhaps pairwise add would be a better name than h
bbudge
2017/04/21 20:18:58
Intel and MIPS naming is horizontal, though they a
| |
| 293 V(F32x4Sub, 0xe509, s_ss) \ | 294 V(F32x4Sub, 0xe509, s_ss) \ |
| 294 V(F32x4Mul, 0xe50a, s_ss) \ | 295 V(F32x4Mul, 0xe50a, s_ss) \ |
| 295 V(F32x4Div, 0xe50b, s_ss) \ | 296 V(F32x4Div, 0xe50b, s_ss) \ |
| 296 V(F32x4Min, 0xe50c, s_ss) \ | 297 V(F32x4Min, 0xe50c, s_ss) \ |
| 297 V(F32x4Max, 0xe50d, s_ss) \ | 298 V(F32x4Max, 0xe50d, s_ss) \ |
| 298 V(F32x4MinNum, 0xe50e, s_ss) \ | 299 V(F32x4MinNum, 0xe50e, s_ss) \ |
| 299 V(F32x4MaxNum, 0xe50f, s_ss) \ | 300 V(F32x4MaxNum, 0xe50f, s_ss) \ |
| 300 V(F32x4RecipRefine, 0xe592, s_ss) \ | 301 V(F32x4RecipRefine, 0xe592, s_ss) \ |
| 301 V(F32x4RecipSqrtRefine, 0xe593, s_ss) \ | 302 V(F32x4RecipSqrtRefine, 0xe593, s_ss) \ |
| 302 V(F32x4Eq, 0xe510, s1x4_ss) \ | 303 V(F32x4Eq, 0xe510, s1x4_ss) \ |
| 303 V(F32x4Ne, 0xe511, s1x4_ss) \ | 304 V(F32x4Ne, 0xe511, s1x4_ss) \ |
| 304 V(F32x4Lt, 0xe512, s1x4_ss) \ | 305 V(F32x4Lt, 0xe512, s1x4_ss) \ |
| 305 V(F32x4Le, 0xe513, s1x4_ss) \ | 306 V(F32x4Le, 0xe513, s1x4_ss) \ |
| 306 V(F32x4Gt, 0xe514, s1x4_ss) \ | 307 V(F32x4Gt, 0xe514, s1x4_ss) \ |
| 307 V(F32x4Ge, 0xe515, s1x4_ss) \ | 308 V(F32x4Ge, 0xe515, s1x4_ss) \ |
| 308 V(F32x4SConvertI32x4, 0xe519, s_s) \ | 309 V(F32x4SConvertI32x4, 0xe519, s_s) \ |
| 309 V(F32x4UConvertI32x4, 0xe51a, s_s) \ | 310 V(F32x4UConvertI32x4, 0xe51a, s_s) \ |
| 310 V(I32x4Splat, 0xe51b, s_i) \ | 311 V(I32x4Splat, 0xe51b, s_i) \ |
| 311 V(I32x4Neg, 0xe51e, s_s) \ | 312 V(I32x4Neg, 0xe51e, s_s) \ |
| 312 V(I32x4Add, 0xe51f, s_ss) \ | 313 V(I32x4Add, 0xe51f, s_ss) \ |
| 314 V(I32x4AddHoriz, 0xe5ba, s_ss) \ | |
| 313 V(I32x4Sub, 0xe520, s_ss) \ | 315 V(I32x4Sub, 0xe520, s_ss) \ |
| 314 V(I32x4Mul, 0xe521, s_ss) \ | 316 V(I32x4Mul, 0xe521, s_ss) \ |
| 315 V(I32x4MinS, 0xe522, s_ss) \ | 317 V(I32x4MinS, 0xe522, s_ss) \ |
| 316 V(I32x4MaxS, 0xe523, s_ss) \ | 318 V(I32x4MaxS, 0xe523, s_ss) \ |
| 317 V(I32x4Eq, 0xe526, s1x4_ss) \ | 319 V(I32x4Eq, 0xe526, s1x4_ss) \ |
| 318 V(I32x4Ne, 0xe527, s1x4_ss) \ | 320 V(I32x4Ne, 0xe527, s1x4_ss) \ |
| 319 V(I32x4LtS, 0xe528, s1x4_ss) \ | 321 V(I32x4LtS, 0xe528, s1x4_ss) \ |
| 320 V(I32x4LeS, 0xe529, s1x4_ss) \ | 322 V(I32x4LeS, 0xe529, s1x4_ss) \ |
| 321 V(I32x4GtS, 0xe52a, s1x4_ss) \ | 323 V(I32x4GtS, 0xe52a, s1x4_ss) \ |
| 322 V(I32x4GeS, 0xe52b, s1x4_ss) \ | 324 V(I32x4GeS, 0xe52b, s1x4_ss) \ |
| 323 V(I32x4SConvertF32x4, 0xe52f, s_s) \ | 325 V(I32x4SConvertF32x4, 0xe52f, s_s) \ |
| 324 V(I32x4UConvertF32x4, 0xe537, s_s) \ | 326 V(I32x4UConvertF32x4, 0xe537, s_s) \ |
| 325 V(I32x4SConvertI16x8Low, 0xe594, s_s) \ | 327 V(I32x4SConvertI16x8Low, 0xe594, s_s) \ |
| 326 V(I32x4SConvertI16x8High, 0xe595, s_s) \ | 328 V(I32x4SConvertI16x8High, 0xe595, s_s) \ |
| 327 V(I32x4UConvertI16x8Low, 0xe596, s_s) \ | 329 V(I32x4UConvertI16x8Low, 0xe596, s_s) \ |
| 328 V(I32x4UConvertI16x8High, 0xe597, s_s) \ | 330 V(I32x4UConvertI16x8High, 0xe597, s_s) \ |
| 329 V(I32x4MinU, 0xe530, s_ss) \ | 331 V(I32x4MinU, 0xe530, s_ss) \ |
| 330 V(I32x4MaxU, 0xe531, s_ss) \ | 332 V(I32x4MaxU, 0xe531, s_ss) \ |
| 331 V(I32x4LtU, 0xe533, s1x4_ss) \ | 333 V(I32x4LtU, 0xe533, s1x4_ss) \ |
| 332 V(I32x4LeU, 0xe534, s1x4_ss) \ | 334 V(I32x4LeU, 0xe534, s1x4_ss) \ |
| 333 V(I32x4GtU, 0xe535, s1x4_ss) \ | 335 V(I32x4GtU, 0xe535, s1x4_ss) \ |
| 334 V(I32x4GeU, 0xe536, s1x4_ss) \ | 336 V(I32x4GeU, 0xe536, s1x4_ss) \ |
| 335 V(I16x8Splat, 0xe538, s_i) \ | 337 V(I16x8Splat, 0xe538, s_i) \ |
| 336 V(I16x8Neg, 0xe53b, s_s) \ | 338 V(I16x8Neg, 0xe53b, s_s) \ |
| 337 V(I16x8Add, 0xe53c, s_ss) \ | 339 V(I16x8Add, 0xe53c, s_ss) \ |
| 338 V(I16x8AddSaturateS, 0xe53d, s_ss) \ | 340 V(I16x8AddSaturateS, 0xe53d, s_ss) \ |
| 341 V(I16x8AddHoriz, 0xe5bb, s_ss) \ | |
| 339 V(I16x8Sub, 0xe53e, s_ss) \ | 342 V(I16x8Sub, 0xe53e, s_ss) \ |
| 340 V(I16x8SubSaturateS, 0xe53f, s_ss) \ | 343 V(I16x8SubSaturateS, 0xe53f, s_ss) \ |
| 341 V(I16x8Mul, 0xe540, s_ss) \ | 344 V(I16x8Mul, 0xe540, s_ss) \ |
| 342 V(I16x8MinS, 0xe541, s_ss) \ | 345 V(I16x8MinS, 0xe541, s_ss) \ |
| 343 V(I16x8MaxS, 0xe542, s_ss) \ | 346 V(I16x8MaxS, 0xe542, s_ss) \ |
| 344 V(I16x8Eq, 0xe545, s1x8_ss) \ | 347 V(I16x8Eq, 0xe545, s1x8_ss) \ |
| 345 V(I16x8Ne, 0xe546, s1x8_ss) \ | 348 V(I16x8Ne, 0xe546, s1x8_ss) \ |
| 346 V(I16x8LtS, 0xe547, s1x8_ss) \ | 349 V(I16x8LtS, 0xe547, s1x8_ss) \ |
| 347 V(I16x8LeS, 0xe548, s1x8_ss) \ | 350 V(I16x8LeS, 0xe548, s1x8_ss) \ |
| 348 V(I16x8GtS, 0xe549, s1x8_ss) \ | 351 V(I16x8GtS, 0xe549, s1x8_ss) \ |
| 349 V(I16x8GeS, 0xe54a, s1x8_ss) \ | 352 V(I16x8GeS, 0xe54a, s1x8_ss) \ |
| 350 V(I16x8AddSaturateU, 0xe54e, s_ss) \ | 353 V(I16x8AddSaturateU, 0xe54e, s_ss) \ |
| 351 V(I16x8SubSaturateU, 0xe54f, s_ss) \ | 354 V(I16x8SubSaturateU, 0xe54f, s_ss) \ |
| 352 V(I16x8MinU, 0xe550, s_ss) \ | 355 V(I16x8MinU, 0xe550, s_ss) \ |
| 353 V(I16x8MaxU, 0xe551, s_ss) \ | 356 V(I16x8MaxU, 0xe551, s_ss) \ |
| 354 V(I16x8LtU, 0xe553, s1x8_ss) \ | 357 V(I16x8LtU, 0xe553, s1x8_ss) \ |
| 355 V(I16x8LeU, 0xe554, s1x8_ss) \ | 358 V(I16x8LeU, 0xe554, s1x8_ss) \ |
| 356 V(I16x8GtU, 0xe555, s1x8_ss) \ | 359 V(I16x8GtU, 0xe555, s1x8_ss) \ |
| 357 V(I16x8GeU, 0xe556, s1x8_ss) \ | 360 V(I16x8GeU, 0xe556, s1x8_ss) \ |
| 358 V(I16x8SConvertI32x4, 0xe598, s_ss) \ | 361 V(I16x8SConvertI32x4, 0xe598, s_ss) \ |
| 359 V(I16x8UConvertI32x4, 0xe599, s_ss) \ | 362 V(I16x8UConvertI32x4, 0xe599, s_ss) \ |
| 360 V(I16x8SConvertI8x16Low, 0xe59a, s_s) \ | 363 V(I16x8SConvertI8x16Low, 0xe59a, s_s) \ |
| 361 V(I16x8SConvertI8x16High, 0xe59b, s_s) \ | 364 V(I16x8SConvertI8x16High, 0xe59b, s_s) \ |
| 362 V(I16x8UConvertI8x16Low, 0xe59c, s_s) \ | 365 V(I16x8UConvertI8x16Low, 0xe59c, s_s) \ |
| 363 V(I16x8UConvertI8x16High, 0xe59d, s_s) \ | 366 V(I16x8UConvertI8x16High, 0xe59d, s_s) \ |
| 364 V(I8x16Splat, 0xe557, s_i) \ | 367 V(I8x16Splat, 0xe557, s_i) \ |
| 365 V(I8x16Neg, 0xe55a, s_s) \ | 368 V(I8x16Neg, 0xe55a, s_s) \ |
| 366 V(I8x16Add, 0xe55b, s_ss) \ | 369 V(I8x16Add, 0xe55b, s_ss) \ |
| 367 V(I8x16AddSaturateS, 0xe55c, s_ss) \ | 370 V(I8x16AddSaturateS, 0xe55c, s_ss) \ |
| 371 V(I8x16AddHoriz, 0xe5bc, s_ss) \ | |
| 368 V(I8x16Sub, 0xe55d, s_ss) \ | 372 V(I8x16Sub, 0xe55d, s_ss) \ |
| 369 V(I8x16SubSaturateS, 0xe55e, s_ss) \ | 373 V(I8x16SubSaturateS, 0xe55e, s_ss) \ |
| 370 V(I8x16Mul, 0xe55f, s_ss) \ | 374 V(I8x16Mul, 0xe55f, s_ss) \ |
| 371 V(I8x16MinS, 0xe560, s_ss) \ | 375 V(I8x16MinS, 0xe560, s_ss) \ |
| 372 V(I8x16MaxS, 0xe561, s_ss) \ | 376 V(I8x16MaxS, 0xe561, s_ss) \ |
| 373 V(I8x16Eq, 0xe564, s1x16_ss) \ | 377 V(I8x16Eq, 0xe564, s1x16_ss) \ |
| 374 V(I8x16Ne, 0xe565, s1x16_ss) \ | 378 V(I8x16Ne, 0xe565, s1x16_ss) \ |
| 375 V(I8x16LtS, 0xe566, s1x16_ss) \ | 379 V(I8x16LtS, 0xe566, s1x16_ss) \ |
| 376 V(I8x16LeS, 0xe567, s1x16_ss) \ | 380 V(I8x16LeS, 0xe567, s1x16_ss) \ |
| 377 V(I8x16GtS, 0xe568, s1x16_ss) \ | 381 V(I8x16GtS, 0xe568, s1x16_ss) \ |
| (...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 775 default: | 779 default: |
| 776 return "<unknown>"; | 780 return "<unknown>"; |
| 777 } | 781 } |
| 778 } | 782 } |
| 779 }; | 783 }; |
| 780 } // namespace wasm | 784 } // namespace wasm |
| 781 } // namespace internal | 785 } // namespace internal |
| 782 } // namespace v8 | 786 } // namespace v8 |
| 783 | 787 |
| 784 #endif // V8_WASM_OPCODES_H_ | 788 #endif // V8_WASM_OPCODES_H_ |
| OLD | NEW |