From 3d45fdfd3d63da19c82bf869dbb5db150081de8b Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Sat, 29 Jun 2024 04:09:26 -0700 Subject: [PATCH] Experiment: Enable FTL on Windows part 3 --- .../JavaScriptCore/b3/air/opcode_generator.rb | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Source/JavaScriptCore/b3/air/opcode_generator.rb b/Source/JavaScriptCore/b3/air/opcode_generator.rb index 8509a6ed0eae8..526802daf7a88 100644 --- a/Source/JavaScriptCore/b3/air/opcode_generator.rb +++ b/Source/JavaScriptCore/b3/air/opcode_generator.rb @@ -702,6 +702,23 @@ def endArchs(outp, archs) writeH("OpcodeUtils") { | outp | outp.puts "#if ENABLE(B3_JIT)" + + outp.puts "#pragma push_macro(\"RotateLeft32\")" + outp.puts "#pragma push_macro(\"RotateLeft64\")" + outp.puts "#pragma push_macro(\"RotateRight32\")" + outp.puts "#pragma push_macro(\"RotateRight64\")" + outp.puts "#pragma push_macro(\"StoreFence\")" + outp.puts "#pragma push_macro(\"LoadFence\")" + outp.puts "#pragma push_macro(\"MemoryFence\")" + + outp.puts "#undef RotateLeft32" + outp.puts "#undef RotateLeft64" + outp.puts "#undef RotateRight32" + outp.puts "#undef RotateRight64" + outp.puts "#undef StoreFence" + outp.puts "#undef LoadFence" + outp.puts "#undef MemoryFence" + outp.puts "#include \"AirCustom.h\"" outp.puts "#include \"AirInst.h\"" outp.puts "#include \"AirFormTable.h\"" @@ -837,6 +854,15 @@ def endArchs(outp, archs) outp.puts "}" outp.puts "} } } // namespace JSC::B3::Air" + + outp.puts "#pragma pop_macro(\"RotateLeft32\")" + outp.puts "#pragma pop_macro(\"RotateLeft64\")" + outp.puts "#pragma pop_macro(\"RotateRight32\")" + outp.puts "#pragma pop_macro(\"RotateRight64\")" + outp.puts "#pragma pop_macro(\"StoreFence\")" + outp.puts "#pragma pop_macro(\"LoadFence\")" + outp.puts "#pragma pop_macro(\"MemoryFence\")" + outp.puts "#endif // ENABLE(B3_JIT)" }