Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 34f0ba48fd68b5467f5b0d5c2f09a14f8d5834fa
https://github.com/WebKit/WebKit/commit/34f0ba48fd68b5467f5b0d5c2f09a14f8d5834fa
Author: Justin Michaud <[email protected]>
Date: 2023-01-25 (Wed, 25 Jan 2023)
Changed paths:
M Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
M Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h
M Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h
M Source/JavaScriptCore/b3/B3LowerMacros.cpp
M Source/JavaScriptCore/b3/B3LowerToAir.cpp
M Source/JavaScriptCore/b3/B3Opcode.cpp
M Source/JavaScriptCore/b3/B3Opcode.h
M Source/JavaScriptCore/b3/B3SIMDValue.h
M Source/JavaScriptCore/b3/B3Validate.cpp
M Source/JavaScriptCore/b3/B3Value.cpp
M Source/JavaScriptCore/b3/B3Value.h
M Source/JavaScriptCore/b3/B3ValueInlines.h
M Source/JavaScriptCore/b3/air/AirLowerMacros.cpp
M Source/JavaScriptCore/b3/air/AirOpcode.opcodes
M Source/JavaScriptCore/wasm/WasmAirIRGenerator64.cpp
M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
Log Message:
-----------
Improve VectorShuffle on arm
https://bugs.webkit.org/show_bug.cgi?id=251172
rdar://104661654
Reviewed by Yusuke Suzuki.
VectorShuffle is very hot in tfjs, so let's make it lower directly to
tbl like other engines do.
Also fix up some intel redundancy.
This is a 2x speedup on tfjs on arm.
* Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::vectorSwizzle2):
(JSC::MacroAssemblerARM64::vectorShuffle): Deleted.
* Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:
* Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::vectorShuffle): Deleted.
* Source/JavaScriptCore/b3/B3LowerMacros.cpp:
* Source/JavaScriptCore/b3/B3LowerToAir.cpp:
* Source/JavaScriptCore/b3/B3Opcode.cpp:
(WTF::printInternal):
* Source/JavaScriptCore/b3/B3Opcode.h:
* Source/JavaScriptCore/b3/B3SIMDValue.h:
* Source/JavaScriptCore/b3/B3Validate.cpp:
* Source/JavaScriptCore/b3/B3Value.cpp:
(JSC::B3::Value::effects const):
* Source/JavaScriptCore/b3/B3Value.h:
* Source/JavaScriptCore/b3/B3ValueInlines.h:
* Source/JavaScriptCore/b3/air/AirLowerMacros.cpp:
(JSC::B3::Air::lowerMacros):
* Source/JavaScriptCore/b3/air/AirOpcode.opcodes:
* Source/JavaScriptCore/wasm/WasmAirIRGenerator64.cpp:
(JSC::Wasm::AirIRGenerator64::fixupOutOfBoundsIndicesForSwizzle):
(JSC::Wasm::AirIRGenerator64::addSIMDV_VV):
(JSC::Wasm::AirIRGenerator64::addSIMDShuffle):
(JSC::Wasm::AirIRGenerator64::addSIMDSwizzleHelperX86): Deleted.
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::fixupOutOfBoundsIndicesForSwizzle):
(JSC::Wasm::B3IRGenerator::addSIMDV_VV):
(JSC::Wasm::B3IRGenerator::addSIMDShuffle):
Canonical link: https://commits.webkit.org/259388@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes