google / fleetbench

Benchmarking suite for Google workloads
Apache License 2.0
116 stars 10 forks source link

Build failure with gcc on arm #22

Open pcc opened 7 months ago

pcc commented 7 months ago

bazel run --config=opt -k fleetbench/swissmap:swissmap_benchmark fails like so:

WARNING: Build options --copt and --platform_suffix have changed, discarding analysis cache (this can be expensive, see https://bazel.build/advanced/performance/iteration-speed).
INFO: Analyzed target //fleetbench/swissmap:swissmap_benchmark (82 packages loaded, 2088 targets configured).
ERROR: /mnt/disk2/pcc/fleetbench/cache/bazel/_bazel_pcc/6ebf5179f821c2a2e8b4f49bd226762e/external/com_google_tcmalloc/tcmalloc/BUILD:94:11: Compiling tcmalloc/tcmalloc.cc failed: (Exit 1): gcc failed: error executing CppCompile command (from target @@com_google_tcmalloc//tcmalloc:tcmalloc) /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG -ffunction-sections ... (remaining 37 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from external/com_google_tcmalloc/tcmalloc/cpu_cache.h:50,
                 from external/com_google_tcmalloc/tcmalloc/allocation_sampling.h:33,
                 from external/com_google_tcmalloc/tcmalloc/tcmalloc.cc:81:
external/com_google_tcmalloc/tcmalloc/internal/percpu_tcmalloc.h:813:36: error: 'always_inline' function might not be inlinable [-Werror=attributes]
  813 | ABSL_ATTRIBUTE_ALWAYS_INLINE void* TcmallocSlab<NumClasses>::Pop(
      |                                    ^~~~~~~~~~~~~~~~~~~~~~~~
during RTL pass: expand
In function 'bool tcmalloc::tcmalloc_internal::subtle::percpu::TcmallocSlab_Internal_Push(size_t, void*)',
    inlined from 'bool tcmalloc::tcmalloc_internal::subtle::percpu::TcmallocSlab<NumClasses>::Push(size_t, void*) [with long unsigned int NumClasses = 172]' at external/com_google_tcmalloc/tcmalloc/internal/percpu_tcmalloc.h:706:36,
    inlined from 'bool tcmalloc::tcmalloc_internal::cpu_cache_internal::CpuCache<Forwarder>::DeallocateFast(void*, size_t) [with Forwarder = tcmalloc::tcmalloc_internal::cpu_cache_internal::StaticForwarder]' at external/com_google_tcmalloc/tcmalloc/cpu_cache.h:735:24:
external/com_google_tcmalloc/tcmalloc/internal/percpu_tcmalloc.h:630:3: internal compiler error: 'asm' clobber conflict with output operand
  630 |   asm volatile(
      |   ^~~
0x194b0fb internal_error(char const*, ...)
        ???:0
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://github.com/archlinuxarm/PKGBUILDs/issues> for instructions.
INFO: Found 1 target...
Target //fleetbench/swissmap:swissmap_benchmark failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 35.533s, Critical Path: 27.80s
INFO: 52 processes: 3 internal, 49 linux-sandbox.
ERROR: Build did NOT complete successfully
ERROR: Build failed. Not running target
rjogrady commented 7 months ago

This is https://github.com/google/tcmalloc/issues/200.