Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Andreas_Schwab:riscv:chromium
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.old 2022-10-01 13:53:03.367797474 +0200 +++ src/base/allocator/partition_allocator/src/partition_alloc/BUILD.gn 2022-10-05 14:23:53.999860356 +0200 @@ -90,6 +90,33 @@ if (!is_debug || partition_alloc_optimiz _add_configs += [ "//build/config/compiler:no_optimize" ] } +if (use_starscan) { + static_library("partition_alloc_asm") { + if (gcc_lto) { + configs -= [ "//build/config/compiler:gcc_lto" ] + } + if (current_cpu == "x64") { + assert(pcscan_stack_supported) + sources = [ "starscan/stack/asm/x64/push_registers_asm.cc" ] + } else if (current_cpu == "x86") { + assert(pcscan_stack_supported) + sources = [ "starscan/stack/asm/x86/push_registers_asm.cc" ] + } else if (current_cpu == "arm") { + assert(pcscan_stack_supported) + sources = [ "starscan/stack/asm/arm/push_registers_asm.cc" ] + } else if (current_cpu == "arm64") { + assert(pcscan_stack_supported) + sources = [ "starscan/stack/asm/arm64/push_registers_asm.cc" ] + } else if (current_cpu == "riscv64") { + assert(pcscan_stack_supported) + sources = [ "starscan/stack/asm/riscv64/push_registers_asm.cc" ] + } else { + assert(!pcscan_stack_supported) + # To support a trampoline for another arch, please refer to v8/src/heap/base. + } + } +} + component("raw_ptr") { # `gn check` is unhappy with most `#includes` when PA isn't # actually built. @@ -497,25 +524,10 @@ if (is_clang_or_gcc) { # The Android NDK supports PR_MTE_* macros as of NDK r23. defines += [ "HAS_PR_MTE_MACROS" ] } + deps = [ ":allocator_base" ] if (use_starscan) { - if (current_cpu == "x64") { - assert(pcscan_stack_supported) - sources += [ "starscan/stack/asm/x64/push_registers_asm.cc" ] - } else if (current_cpu == "x86") { - assert(pcscan_stack_supported) - sources += [ "starscan/stack/asm/x86/push_registers_asm.cc" ] - } else if (current_cpu == "arm") { - assert(pcscan_stack_supported) - sources += [ "starscan/stack/asm/arm/push_registers_asm.cc" ] - } else if (current_cpu == "arm64") { - assert(pcscan_stack_supported) - sources += [ "starscan/stack/asm/arm64/push_registers_asm.cc" ] - } else if (current_cpu == "riscv64") { - assert(pcscan_stack_supported) - sources += [ "starscan/stack/asm/riscv64/push_registers_asm.cc" ] - } else { - # To support a trampoline for another arch, please refer to v8/src/heap/base. - assert(!pcscan_stack_supported) + if (current_cpu == "x64" || current_cpu == "x86" || current_cpu == "arm" || current_cpu == "arm64" || current_cpu == "riscv64") { + deps += [ ":partition_alloc_asm" ] } } if (use_freelist_pool_offsets) { @@ -536,7 +548,6 @@ if (is_clang_or_gcc) { ":memory_tagging", "//build/config/compiler: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