1
0
Files
nodejs-electron/swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch
Bruno Pitrus 27bbbd6d17 Accepting request 1059202 from home:dziobian:gulgul-ultron:19
- Update to 22.0.2
  * ABI break: NODE_MODULE_VERSION is now 110. Native modules may need recompiling
  * Chromium to 108.0.5359.179
  * Node v16.17.1
  * V8 v10.8
  * Added WebContents input-event event.
  * Deprecated BrowserWindow scroll-touch-* events.
  * The deprecated new-window event has been removed.
  * Added contextBridge.exposeInIsolatedWorld(worldId, key, api) to expose
    an API to an isolatedWorld within a renderer from a preload script.
  * Added webContents.close() method.
  * Added new UtilityProcess API to launch chromium child process with node integration.
  * Added new WebContents event content-bounds-updated.
  * Added support for navigator.mediaDevices.getDisplayMedia via a new
    session handler, ses.setDisplayMediaRequestHandler.
  * Added support for serialPort.forget() as well as a new event
    serial-port-revoked emitted when a given origin is revoked.
- Drop patches applied upstream
  * argument_spec-missing-isnan-isinf.patch
  * chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch
  * content_language_parser-missing-string.patch
  * gtk_ui_platform_stub-incomplete-type-LinuxInputMethodContext.patch
  * node-system-libs.patch
  * pending_beacon_dispatcher-virtual-functions-cannot-be-constexpr.patch
  * std_lib_extras-missing-intptr_t.patch
  * system-abseil-missing-shims.patch
- Re-add electron_serial_delegate-ambiguous-Observer.patch due to upstream reintroducing the invalid code
- Add patches to fix build errors
  * chromium-108-abseil-shims.patch
  * crashpad-elf_image_reader-ProgramHeaderTableSpecific-expected-unqualified-id.patch
  * document_loader-private-DecodedBodyData.patch
  * first_party_set_parser-IssueWithMetadata-no-known-conversion.patch
  * print_dialog_gtk-no-kEnableOopPrintDriversJobPrint.patch
  * swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch
- Conditionally reverse upstream changes to fix build with old harfbuzz
  * harfbuzz-replace-chromium-scoped-type.patch
- Switch to bundled libjxl on Fedora 36 due to system version being too old

OBS-URL: https://build.opensuse.org/request/show/1059202
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs-electron?expand=0&rev=57
2023-01-18 06:07:26 +00:00

59 lines
2.2 KiB
Diff

Compiler complains about missing symbol on arm64:
[ 1362s] ../../third_party/swiftshader/src/Reactor/LLVMJIT.cpp: In member function 'void rr::JITBuilder::runPasses()':
[ 1362s] ../../third_party/swiftshader/src/Reactor/LLVMJIT.cpp:942:34: error: 'AddressSanitizerPass' is not a member of 'llvm'; did you mean 'AddressSanitizerOptions'?
[ 1362s] 942 | pm.addPass(llvm::AddressSanitizerPass(llvm::AddressSanitizerOptions{}));
[ 1362s] | ^~~~~~~~~~~~~~~~~~~~
[ 1362s] | AddressSanitizerOptions
The offending code is dead, and this patch proves it.
--- src/third_party/swiftshader/src/Reactor/LLVMJIT.cpp.old 2022-11-30 10:29:13.429851800 +0000
+++ src/third_party/swiftshader/src/Reactor/LLVMJIT.cpp 2022-11-30 21:19:08.387147100 +0000
@@ -930,18 +930,19 @@
{
pm.addPass(llvm::createModuleToFunctionPassAdaptor(std::move(fpm)));
}
-
+#if __has_feature(memory_sanitizer)
if(__has_feature(memory_sanitizer) && msanInstrumentation)
{
llvm::MemorySanitizerOptions msanOpts(0 /* TrackOrigins */, false /* Recover */, false /* Kernel */, true /* EagerChecks */);
pm.addPass(llvm::MemorySanitizerPass(msanOpts));
}
-
+#endif
+#if __has_feature(address_sanitizer)
if(__has_feature(address_sanitizer) && ADDRESS_SANITIZER_INSTRUMENTATION_SUPPORTED)
{
pm.addPass(llvm::AddressSanitizerPass(llvm::AddressSanitizerOptions{}));
}
-
+#endif
pm.run(*module, mam);
#else // Legacy pass manager
llvm::legacy::PassManager passManager;
@@ -961,18 +962,19 @@
passManager.add(llvm::createSROAPass());
passManager.add(llvm::createInstructionCombiningPass());
}
-
+#if __has_feature(memory_sanitizer)
if(__has_feature(memory_sanitizer) && msanInstrumentation)
{
llvm::MemorySanitizerOptions msanOpts(0 /* TrackOrigins */, false /* Recover */, false /* Kernel */);
passManager.add(llvm::createMemorySanitizerLegacyPassPass(msanOpts));
}
-
+#endif
+#if __has_feature(address_sanitizer)
if(__has_feature(address_sanitizer) && ADDRESS_SANITIZER_INSTRUMENTATION_SUPPORTED)
{
passManager.add(llvm::createAddressSanitizerFunctionPass());
}
-
+#endif
passManager.run(*module);
#endif
}