Fail build Chromium dev channel 121.0.6103.3 in SKIA part

187 views
Skip to first unread message

sL1pKn07 SpinFlo

unread,
Nov 9, 2023, 1:03:04 PM11/9/23
to skia-discuss
Hi

i just try to build chromium dev channel 121.0.6103.3 and gets:
[2569/60982] CXX obj/skia/skcms/skcms.o
FAILED: obj/skia/skcms/skcms.o  
/tmp/makepkg/chromium-dev/src/chromium/third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/skia/skcms/skcms.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_OZONE=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_LIBCPP
_ENABLE_SAFE_MODE=1 -DCR_CLANG_REVISION=\"llvmorg-18-init-9505-g10664813-1\" -DCOMPONENT_BUILD -DCR_LIBCXX_REVISION=a12821e5f87e0054c1885dc8982cbe53f2c24899 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -I../../third_party/skia/modules/skcms -I../.. -Igen -I../../buildtools/third_party/libc++ -w -std=c11 -Wall -Wextra -Wim
plicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wno-deprecated-this-c
apture -Wno-invalid-offsetof -Wno-vla-extension -Wno-thread-safety-reference-return -Wno-delayed-template-parsing-in-cxx20 -Wshadow -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/cr
ashreports -mllvm -instcombine-lower-dbg-declare=0 -mllvm -split-threshold-for-reg-with-hint=0 -ffp-contract=off -fcomplete-member-pointers -m64 -msse3 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -O2 -fdata-sections -ffunctio
n-sections -fno-unique-section-names -fno-math-errno -fno-omit-frame-pointer -g0 -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -std=c++20 -Wno-trigraphs -gsimple-template-names -fno-exceptions -fno-rtti -nostdinc++ -isystem../../third_party/libc++/src/include -isystem../../third_party/lib
c++abi/src/include -fvisibility-inlines-hidden  -D__DATE__=  -D__TIME__=  -D__TIMESTAMP__= -march=native -O2 -pipe -fno-plt          -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security            -Wno-builtin-macro-redefined -g -ffile-prefix-map=/tmp/makepkg/chromium-dev/src=/usr/src/debug/chromium-dev -c ../../third_party/s
kia/modules/skcms/skcms.cc -o obj/skia/skcms/skcms.o
In file included from ../../third_party/skia/modules/skcms/skcms.cc:2372:
../../third_party/skia/modules/skcms/src/Transform_inl.h:795:9: error: AVX vector return of type 'F' (aka 'Vec<16, float>') without 'evex512' enabled changes the ABI
 795 |     a = F_from_U8(load<U8>(src + 1*i));
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:584:12: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 584 |     return cast<F>(v) * (1/255.0f);
     |            ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:799:17: error: AVX vector return of type 'F' (aka 'Vec<16, float>') without 'evex512' enabled changes the ABI
 799 |     r = g = b = F_from_U8(load<U8>(src + 1*i));
     |                 ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:805:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 805 |     r = cast<F>((abgr >> 12) & 0xf) * (1/15.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:806:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 806 |     g = cast<F>((abgr >>  8) & 0xf) * (1/15.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:807:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 807 |     b = cast<F>((abgr >>  4) & 0xf) * (1/15.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:808:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 808 |     a = cast<F>((abgr >>  0) & 0xf) * (1/15.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:814:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 814 |     r = cast<F>(rgb & (uint16_t)(31<< 0)) * (1.0f / (31<< 0));
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:815:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 815 |     g = cast<F>(rgb & (uint16_t)(63<< 5)) * (1.0f / (63<< 5));
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:816:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 816 |     b = cast<F>(rgb & (uint16_t)(31<<11)) * (1.0f / (31<<11));
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:838:17: error: AVX vector return of type 'unsigned int __attribute__((ext_vector_type(16)))' (vector of 16 'unsigned int' values) without 'evex512' enabled changes the ABI
 838 |     r = cast<F>(load_3<U32>(rgb+0) ) * (1/255.0f);
     |                 ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:838:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 838 |     r = cast<F>(load_3<U32>(rgb+0) ) * (1/255.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:839:17: error: AVX vector return of type 'unsigned int __attribute__((ext_vector_type(16)))' (vector of 16 'unsigned int' values) without 'evex512' enabled changes the ABI
 839 |     g = cast<F>(load_3<U32>(rgb+1) ) * (1/255.0f);
     |                 ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:839:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 839 |     g = cast<F>(load_3<U32>(rgb+1) ) * (1/255.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:840:17: error: AVX vector return of type 'unsigned int __attribute__((ext_vector_type(16)))' (vector of 16 'unsigned int' values) without 'evex512' enabled changes the ABI
 840 |     b = cast<F>(load_3<U32>(rgb+2) ) * (1/255.0f);
     |                 ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:840:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 840 |     b = cast<F>(load_3<U32>(rgb+2) ) * (1/255.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:845:16: error: AVX vector return of type 'unsigned int __attribute__((ext_vector_type(16)))' (vector of 16 'unsigned int' values) without 'evex512' enabled changes the ABI
 845 |     U32 rgba = load<U32>(src + 4*i);
     |                ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:847:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 847 |     r = cast<F>((rgba >>  0) & 0xff) * (1/255.0f);
     |         ^
../../third_party/skia/modules/skcms/src/Transform_inl.h:848:9: error: AVX vector return of type 'float __attribute__((ext_vector_type(16)))' (vector of 16 'float' values) without 'evex512' enabled changes the ABI
 848 |     g = cast<F>((rgba >>  8) & 0xff) * (1/255.0f);
     |         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[2618/60982] RUST local_rustc_sysroot/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore.rlib
ninja: build stopped: subcommand failed.

what means and what i can fix it?


As note my CPUs is a dual Xeon E5-2587W (Broadwell-EP) and my CXX/C Flags sets -march as native

Greetings

John Stiles

unread,
Nov 9, 2023, 1:38:32 PM11/9/23
to skia-d...@googlegroups.com
Please take a look at this bug (which seems to match your description) and see if you can resolve it with these suggestions:
https://gitlab.com/wg1/jpeg-xl/-/issues/50




--
You received this message because you are subscribed to the Google Groups "skia-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to skia-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/skia-discuss/a3c25a4f-37a3-4ed0-b3c9-1ede75e31d58n%40googlegroups.com.

sL1pKn07 SpinFlo

unread,
Nov 9, 2023, 3:02:40 PM11/9/23
to skia-discuss

Hi. 

not works. adds -Wno-error=psabi or -Wno-psapi (or both) in global CXXFLAGS/CFLAGS/LDFLAGS or in third_party/skia/modules/skcms/BUILD.gn same issue

maybe i need change -march=native to -mtune=generic?

greetings 

John Stiles

unread,
Nov 9, 2023, 5:10:48 PM11/9/23
to skia-d...@googlegroups.com
Does Chromium build for you if you don't set custom flags?
If it doesn't build out of the box, we should look at that. If it doesn't build after you've tweaked a bunch of compile flags, there's not much I can do :)
It shouldn't really be necessary to add anything like -march=native; we already make sure the really perf-critical rendering stuff is doing the right thing for various CPUs.


sL1pKn07 SpinFlo

unread,
Nov 9, 2023, 6:33:33 PM11/9/23
to skia-discuss
Hi

builds for me since dic 5 2022, the last time i touch my flags file, throughs several versions, the last one 120.0.6090.0 yesterday. so is not flag problem

seems a regression in latest commits since 120.0.6090.0 release. so, i need bisect skcms commits for found the culprit

if have another idea, my ears is open

greetings

John Stiles

unread,
Nov 9, 2023, 6:35:53 PM11/9/23
to skia-d...@googlegroups.com
No need to bisect, it's almost certainly this CL: https://skia-review.googlesource.com/c/skcms/+/774641
However, I need to ask again—if you just build Chromium out of the box with no tweaks/adjustments, does it work?



sL1pKn07 SpinFlo

unread,
Nov 10, 2023, 1:53:50 PM11/10/23
to skia-d...@googlegroups.com
Hi

just found revert the patch https://skia-review.googlesource.com/c/skcms/+/774641/8/skcms.cc is detected as already reverted because that PR/CL is not applied in chromium 121.0.6103.3 because is much newer than included in this version of chromium (latest commit in 121.0.6103.3 tag is 7days older)

CL 774641 (e9cc5) is 4days old 

Screenshot_20231110_191210.png


Screenshot_20231110_191430.png
Screenshot_20231110_191346.png

i'm going to build 121.0.6115.2 for see if this issue is fixed

greetings

sL1pKn07 SpinFlo

unread,
Nov 10, 2023, 2:13:45 PM11/10/23
to skia-d...@googlegroups.com
Hi. nope same issue in 121.0.6115.2

trying without cflags/cxxflags :/

for the record. systemwide use:

#########################################################################
# ARCHITECTURE, COMPILE FLAGS
#########################################################################
#
CARCH="x86_64"
CHOST="x86_64-pc-linux-gnu"

#-- Compiler and Linker Flags
#CPPFLAGS=""
#CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
CFLAGS="-march=native -O2 -pipe -fno-plt -fexceptions \
       -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
       -fstack-clash-protection -fcf-protection"
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
LTOFLAGS="-flto=auto"
#RUSTFLAGS="-C opt-level=2"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"
MAKEFLAGS="-j48"
#-- Debugging flags
DEBUG_CFLAGS="-g"
DEBUG_CXXFLAGS="$DEBUG_CFLAGS"
#DEBUG_RUSTFLAGS="-C debuginfo=2"


and chromium:

# Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn).
CFLAGS+=' -Wno-builtin-macro-redefined'
CXXFLAGS+=' -Wno-builtin-macro-redefined'
CPPFLAGS+=' -D__DATE__=  -D__TIME__=  -D__TIMESTAMP__='

# Let Chromium set its own symbol level
CFLAGS=${CFLAGS/-g }
CXXFLAGS=${CXXFLAGS/-g }

# https://github.com/ungoogled-software/ungoogled-chromium-archlinux/issues/123
CFLAGS=${CFLAGS/-fexceptions}
CFLAGS=${CFLAGS/-fcf-protection}
CXXFLAGS=${CXXFLAGS/-fexceptions}
CXXFLAGS=${CXXFLAGS/-fcf-protection}

# This appears to cause random segfaults when combined with ThinLTO
# https://bugs.archlinux.org/task/73518
CFLAGS=${CFLAGS/-fstack-clash-protection}
CXXFLAGS=${CXXFLAGS/-fstack-clash-protection}

# https://crbug.com/957519#c122
CXXFLAGS=${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}

# Seems bundled clang don't like Debug flag -fvar-tracking-assignments.
DEBUG_CFLAGS=${DEBUG_CFLAGS/-fvar-tracking-assignments}
DEBUG_CXXFLAGS=${DEBUG_CXXFLAGS/-fvar-tracking-assignments}

gn settings:

use_gtk=false use_gio=false enable_remoting=false use_qt=true use_qt6=false moc_qt5_path="/usr/bin" custom_toolchain="//build/toolchain/linux/unbundle:default" host_toolchain="//build/toolchain/linux/unbundle:default" is_debug=false symbol_level=0 is_official_build=false chrome_pgo_phase=0 is_component_build=true enable_widevine=true enable_hangout_services_extension=true ffmpeg_branding="ChromeOS" proprietary_codecs=true google_api_key="AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM" disable_fieldtrial_testing_config=true blink_enable_generated_code_formatting=false blink_symbol_level=0 use_cups=true use_kerberos=true use_pulseaudio=true link_pulseaudio=true use_vaapi=true rtc_use_pipewire=true rtc_link_pipewire=true use_dbus=true use_sysroot=false use_gold=false treat_warnings_as_errors=false enable_nacl=true use_custom_libcxx=true enable_platform_hevc=true enable_platform_ac3_eac3_audio=true enable_platform_mpeg_h_audio=true enable_platform_dolby_vision=true enable_mse_mpeg2ts_stream_parser=true is_clang=true clang_use_chrome_plugins=false enable_pseudolocales=false dcheck_always_on=false dcheck_is_configurable=false use_system_harfbuzz=true use_system_freetype=false use_system_lcms2=true use_system_libpng=true use_system_libsync=false use_system_libopenjpeg2=true use_system_libffi=true v8_use_libm_trig_functions=true angle_link_glx=true angle_enable_gl_desktop_frontend=true angle_enable_swiftshader=false angle_use_custom_libvulkan=false enable_swiftshader=false enable_swiftshader_vulkan=false dawn_use_swiftshader=false


greetings
Reply all
Reply to author
Forward
0 new messages