tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

pairwise-x64-ion-codegen.js (1171B)


      1 // |jit-test| skip-if: !wasmSimdEnabled() || !hasDisassembler() || wasmCompileMode() != "ion" || !getBuildConfiguration("x64") || getBuildConfiguration("simulator"); include:codegen-x64-test.js
      2 
      3 // Tests for SIMD add pairwise instructions.
      4 
      5 if (!isAvxPresent()) {
      6 
      7     codegenTestX64_IGNOREDxv128_v128(
      8          [['i16x8.extadd_pairwise_i8x16_s', `
      9 movdqax ${RIPR}, %xmm0
     10 pmaddubsw %xmm1, %xmm0`],
     11           ['i16x8.extadd_pairwise_i8x16_u', `
     12 movdqa %xmm1, %xmm0
     13 pmaddubswx ${RIPR}, %xmm0`],
     14           ['i32x4.extadd_pairwise_i16x8_s', `
     15 movdqa %xmm1, %xmm0
     16 pmaddwdx ${RIPR}, %xmm0`],
     17           ['i32x4.extadd_pairwise_i16x8_u', `
     18 movdqa %xmm1, %xmm0
     19 pxorx ${RIPR}, %xmm0
     20 pmaddwdx ${RIPR}, %xmm0
     21 padddx ${RIPR}, %xmm0`]]);
     22 
     23 } else {
     24 
     25     codegenTestX64_IGNOREDxv128_v128(
     26          [['i16x8.extadd_pairwise_i8x16_s', `
     27 movdqax ${RIPR}, %xmm0
     28 pmaddubsw %xmm1, %xmm0`],
     29           ['i16x8.extadd_pairwise_i8x16_u', `
     30 vpmaddubswx ${RIPR}, %xmm1, %xmm0`],
     31           ['i32x4.extadd_pairwise_i16x8_s', `
     32 vpmaddwdx ${RIPR}, %xmm1, %xmm0`],
     33           ['i32x4.extadd_pairwise_i16x8_u', `
     34 vpxorx ${RIPR}, %xmm1, %xmm0
     35 pmaddwdx ${RIPR}, %xmm0
     36 padddx ${RIPR}, %xmm0`]]);
     37 
     38 }