Ignore:
Timestamp:
Nov 30, 2020, 2:12:02 PM (4 years ago)
Author:
[email protected]
Message:

Add support for the Wasm i64 sign-extension-ops proposal
https://bugs.webkit.org/show_bug.cgi?id=218990

Patch by Sergey Rubanov <Sergey Rubanov> on 2020-11-30
Reviewed by Yusuke Suzuki.

JSTests:

  • wasm/spec-tests/i64.wast.js:
  • wasm/wasm.json:

Source/JavaScriptCore:

  • llint/WebAssembly.asm:
  • offlineasm/arm64.rb:
  • offlineasm/cloop.rb:
  • offlineasm/instructions.rb:
  • offlineasm/x86.rb:
  • wasm/WasmAirIRGenerator.cpp:

(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend8S>):
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend16S>):
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend32S>):

  • wasm/wasm.json:

LayoutTests:

  • workers/wasm-references/test.js:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/offlineasm/x86.rb

    r270214 r270265  
    14261426            else
    14271427                $asm.puts "movsx #{orderOperands(operands[0].x86Operand(:half), operands[1].x86Operand(:int))}"
     1428            end
     1429        when "sxb2q"
     1430            if !isIntelSyntax
     1431                $asm.puts "movsbq #{operands[0].x86Operand(:byte)}, #{operands[1].x86Operand(:quad)}"
     1432            else
     1433                $asm.puts "movsxd #{orderOperands(operands[0].x86Operand(:byte), operands[1].x86Operand(:quad))}"
     1434            end
     1435        when "sxh2q"
     1436            if !isIntelSyntax
     1437                $asm.puts "movswq #{operands[0].x86Operand(:half)}, #{operands[1].x86Operand(:quad)}"
     1438            else
     1439                $asm.puts "movsxd #{orderOperands(operands[0].x86Operand(:half), operands[1].x86Operand(:quad))}"
    14281440            end
    14291441        when "nop"
Note: See TracChangeset for help on using the changeset viewer.