[webkit-changes] [WebKit/WebKit] 244d75: [SIMD] SIMD functions should support Linear Scan a...

Justin Michaud noreply at github.com
Wed Dec 7 16:07:00 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 244d75cd9da4e7da65f1612fac1fbf240fa72104
      https://github.com/WebKit/WebKit/commit/244d75cd9da4e7da65f1612fac1fbf240fa72104
  Author: Justin Michaud <justin_michaud at apple.com>
  Date:   2022-12-07 (Wed, 07 Dec 2022)

  Changed paths:
    M Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
    M Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h
    M Source/JavaScriptCore/b3/B3LowerToAir.cpp
    M Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackByLinearScan.cpp
    M Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp
    M Source/JavaScriptCore/b3/air/AirAllocateStackByGraphColoring.cpp
    M Source/JavaScriptCore/b3/air/AirEmitShuffle.h
    M Source/JavaScriptCore/b3/air/AirLivenessAdapter.h
    M Source/JavaScriptCore/b3/air/AirLowerMacros.cpp
    M Source/JavaScriptCore/b3/air/AirOpcode.opcodes
    M Source/JavaScriptCore/b3/air/AirRegLiveness.cpp
    M Source/JavaScriptCore/b3/air/AirTmpWidth.cpp
    M Source/JavaScriptCore/jit/RegisterSet.h
    M Source/JavaScriptCore/runtime/Options.cpp
    M Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp

  Log Message:
  -----------
  [SIMD] SIMD functions should support Linear Scan and Graph Colouring register allocators.
https://bugs.webkit.org/show_bug.cgi?id=246348

Reviewed by Yusuke Suzuki.

Today, we disable the linear scan and graph coloring register allocators
when WASM SIMD is enabled. Let's fix that by making them conservatively
treat floats as 128 bits when SIMD is enabled.

* Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::vectorNarrow):
(JSC::MacroAssemblerARM64::vectorMulSat):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp:
(JSC::B3::Air::GenerateAndAllocateRegisters::generate):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackByLinearScan.cpp:
(JSC::B3::Air::allocateRegistersAndStackByLinearScan):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp:
(JSC::B3::Air::allocateRegistersByGraphColoring):
* Source/JavaScriptCore/b3/air/AirAllocateStackByGraphColoring.cpp:
(JSC::B3::Air::allocateStackByGraphColoring):
* Source/JavaScriptCore/b3/air/AirOpcode.opcodes:
* Source/JavaScriptCore/b3/air/AirTmpWidth.cpp:
(JSC::B3::Air::TmpWidth::recompute):
* Source/JavaScriptCore/jit/RegisterSet.h:
* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::recomputeDependentOptions):
* Source/JavaScriptCore/runtime/OptionsList.h:

Canonical link: https://commits.webkit.org/257519@main




More information about the webkit-changes mailing list