Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Slowroll:Base:1
nodejs-electron
partition_alloc-no-lto.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File partition_alloc-no-lto.patch of Package nodejs-electron
Compile files which declare functions in inline assembly without LTO due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57703 --- src/base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2024-07-24 12:50:43.409128966 +0200 +++ src/base/allocator/partition_allocator/src/partition_alloc/BUILD.gn 2024-07-26 13:37:20.891041131 +0200 @@ -107,6 +107,31 @@ source_set("build_config") { ] } +static_library("allocator_core_asm") { + if (gcc_lto) { + configs -= [ "//build/config/compiler:gcc_lto" ] + } + if (current_cpu == "x64") { + assert(stack_scan_supported) + sources = [ "stack/asm/x64/push_registers_asm.cc" ] + } else if (current_cpu == "x86") { + assert(stack_scan_supported) + sources = [ "stack/asm/x86/push_registers_asm.cc" ] + } else if (current_cpu == "arm") { + assert(stack_scan_supported) + sources = [ "stack/asm/arm/push_registers_asm.cc" ] + } else if (current_cpu == "arm64") { + assert(stack_scan_supported) + sources = [ "stack/asm/arm64/push_registers_asm.cc" ] + } else if (current_cpu == "riscv64") { + assert(stack_scan_supported) + sources = [ "stack/asm/riscv64/push_registers_asm.cc" ] + } else { + # To support a trampoline for another arch, please refer to v8/src/heap/base. + assert(!stack_scan_supported) + } +} + component("raw_ptr") { # `gn check` is unhappy with most `#includes` when PA isn't # actually built. @@ -522,24 +547,9 @@ if (is_clang_or_gcc) { # The Android NDK supports PR_MTE_* macros as of NDK r23. defines += [ "HAS_PR_MTE_MACROS" ] } - if (current_cpu == "x64") { - assert(stack_scan_supported) - sources += [ "stack/asm/x64/push_registers_asm.cc" ] - } else if (current_cpu == "x86") { - assert(stack_scan_supported) - sources += [ "stack/asm/x86/push_registers_asm.cc" ] - } else if (current_cpu == "arm") { - assert(stack_scan_supported) - sources += [ "stack/asm/arm/push_registers_asm.cc" ] - } else if (current_cpu == "arm64") { - assert(stack_scan_supported) - sources += [ "stack/asm/arm64/push_registers_asm.cc" ] - } else if (current_cpu == "riscv64") { - assert(stack_scan_supported) - sources += [ "stack/asm/riscv64/push_registers_asm.cc" ] - } else { - # To support a trampoline for another arch, please refer to v8/src/heap/base. - assert(!stack_scan_supported) + deps = [ ":allocator_base" ] + if (current_cpu == "x64" || current_cpu == "x86" || current_cpu == "arm" || current_cpu == "arm64" || current_cpu == "riscv64") { + deps += [ ":allocator_core_asm" ] } # TODO(crbug.com/40274683): once we evaluate pool offset freelists, @@ -563,7 +573,6 @@ if (is_clang_or_gcc) { ":memory_tagging", ":wexit_time_destructors", ] - deps = [ ":allocator_base" ] public_configs = [] if (is_android) { # tagging.cc requires __arm_mte_set_* functions.
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor