summaryrefslogtreecommitdiffstats
path: root/recipes-devtools
Commit message (Collapse)AuthorAgeFilesLines
* clang: try /usr/lib32/ld-linux.so.3 loader in sysroot firstMartin Jansa2023-09-072-15/+39
| | | | | | | | | | | | | * when building libclc the qemuwrapper correctly sets LD_LIBRARY_PATH to /usr/lib32 but the interpreter used by prepare_builtins has /usr/lib/ld-linux.so.3 interpreter: lib32-libclc/16.0.6 $ file build/prepare_builtins build/prepare_builtins: ELF 32-bit LSB pie executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /usr/lib/ld-linux.so.3, for GNU/Linux 5.4.0, with debug_info, not stripped causing qemu to fail with: cd lib32-libclc/16.0.6/build && lib32-libclc/16.0.6/qemuwrapper lib32-libclc/16.0.6/build/prepare_builtins -o clspv--.bc builtins.opt.clspv--.bc qemu-arm: Could not open '/usr/lib/ld-linux.so.3': No such file or directory Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* clang: ToolChains/Gnu.cpp: search also in lib32Martin Jansa2023-09-072-0/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * in some strange multilib configs we build lib32-image where 32bit libs are in /usr/lib32 and 64bit in /usr/lib64 but in such setup the clang search for GCC candidate installation doesn't check lib32 directory in sysroot and fails to find the installation X86LibDirs was already searching in lib32 for very long time: https://github.com/llvm/llvm-project/commit/621fed5f5a051a0333415aaed75b8f2ed2350dbd but ARMLibDirs didn't include it for some reason. * if we don't add lib32 for arm in getOSLibDir(), then it will find -lgcc, crtbeginS.o, crtendS.o, but still fail to find -lgcc_s, -lc, Scrt1.o, crti.o, crtn.o * fixes lib32-compiler-rt build failure: -- Configuring incomplete, errors occurred! CMake Error at TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native/usr/share/cmake-3.26/Modules/CMakeTestCCompiler.cmake:67 (message): The C compiler "TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native/usr/bin/arm-oemllib32-linux-gnueabi/arm-oemllib32-linux-gnueabi-clang" is not able to compile a simple test program. It fails with the following output: Change Dir: TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build/CMakeFiles/CMakeScratch/TryCompile-rWXyQZ Run Build Command(s):ninja -v cmTC_84d18 && [1/2] TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native/usr/bin/arm-oemllib32-linux-gnueabi/arm-oemllib32-linux-gnueabi-clang --target=arm-oemllib32-linux-gnueabi --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -target arm-oemllib32-linux-gnueabi -march=armv7ve -mthumb -mfpu=neon-vfpv4 -mfloat-abi=softfp -mlittle-endian --dyld-prefix=/usr -Qunused-arguments -funwind-tables -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Werror=return-type -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -fPIE -MD -MT CMakeFiles/cmTC_84d18.dir/testCCompiler.c.o -MF CMakeFiles/cmTC_84d18.dir/testCCompiler.c.o.d -o CMakeFiles/cmTC_84d18.dir/testCCompiler.c.o -c TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build/CMakeFiles/CMakeScratch/TryCompile-rWXyQZ/testCCompiler.c [2/2] : && TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native/usr/bin/arm-oemllib32-linux-gnueabi/arm-oemllib32-linux-gnueabi-clang --target=arm-oemllib32-linux-gnueabi --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -target arm-oemllib32-linux-gnueabi -march=armv7ve -mthumb -mfpu=neon-vfpv4 -mfloat-abi=softfp -mlittle-endian --dyld-prefix=/usr -Qunused-arguments -funwind-tables -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Werror=return-type -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -target arm-oemllib32-linux-gnueabi -march=armv7ve -mthumb -mfpu=neon-vfpv4 -mfloat-abi=softfp -mlittle-endian --dyld-prefix=/usr -Qunused-arguments -funwind-tables -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Werror=return-type -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -Wl,-z,relro,-z,now -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ -fuse-ld=lld -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -Wl,-z,relro,-z,now -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ -fuse-ld=lld CMakeFiles/cmTC_84d18.dir/testCCompiler.c.o -o cmTC_84d18 && : FAILED: cmTC_84d18 : && TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native/usr/bin/arm-oemllib32-linux-gnueabi/arm-oemllib32-linux-gnueabi-clang --target=arm-oemllib32-linux-gnueabi --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -target arm-oemllib32-linux-gnueabi -march=armv7ve -mthumb -mfpu=neon-vfpv4 -mfloat-abi=softfp -mlittle-endian --dyld-prefix=/usr -Qunused-arguments -funwind-tables -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Werror=return-type -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -target arm-oemllib32-linux-gnueabi -march=armv7ve -mthumb -mfpu=neon-vfpv4 -mfloat-abi=softfp -mlittle-endian --dyld-prefix=/usr -Qunused-arguments -funwind-tables -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Werror=return-type -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 --sysroot=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -Wl,-z,relro,-z,now -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ -fuse-ld=lld -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fmacro-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work-shared/llvm-project-source-16.0.6-r0/git=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/build=/usr/src/debug/lib32-compiler-rt/16.0.6-r0 -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/lib32-recipe-sysroot= -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi4_64-oemllib32-linux-gnueabi/lib32-compiler-rt/16.0.6/recipe-sysroot-native= -Wl,-z,relro,-z,now -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ -fuse-ld=lld CMakeFiles/cmTC_84d18.dir/testCCompiler.c.o -o cmTC_84d18 && : arm-oemllib32-linux-gnueabi-ld.lld: error: cannot open Scrt1.o: No such file or directory arm-oemllib32-linux-gnueabi-ld.lld: error: cannot open crti.o: No such file or directory arm-oemllib32-linux-gnueabi-ld.lld: error: cannot open crtbeginS.o: No such file or directory arm-oemllib32-linux-gnueabi-ld.lld: error: unable to find library -lgcc arm-oemllib32-linux-gnueabi-ld.lld: error: unable to find library -lgcc_s arm-oemllib32-linux-gnueabi-ld.lld: error: unable to find library -lc arm-oemllib32-linux-gnueabi-ld.lld: error: unable to find library -lgcc arm-oemllib32-linux-gnueabi-ld.lld: error: unable to find library -lgcc_s arm-oemllib32-linux-gnueabi-ld.lld: error: cannot open crtendS.o: No such file or directory arm-oemllib32-linux-gnueabi-ld.lld: error: cannot open crtn.o: No such file or directory clang-16: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* python3: Add clang to rdeps for python3-ptestsKhem Raj2023-08-261-0/+4
| | | | | | | | cppext test needs full toolchain as it tries to build an extention with C, using clang ensures that a function compiler bits are pulled into ptest image when using TOOLCHAIN = "clang" Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-project-source: Remove "MULTILIBS" from do_patch dependeciesKhem Raj2023-08-191-1/+1
| | | | | | | MULTILIBS maybe defined by distros/projects and in some cases not, this would result in rebuilding clang-native for no reason. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt,compiler-rt-sanitizers: Correct target tuple for armhfKhem Raj2023-08-012-2/+2
| | | | | | | | It will fails on clang-17+ | CMake Error at /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-17.0.0-r0/git/compiler-rt/cmake/Modules/CheckSectionExists.cmake:72 (message): | error: unknown target triple 'armhf' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-config: fix script for multilib buildNaveen Saini2023-06-221-1/+5
| | | | | | | | | | | | | | | | | | | | | | From multilib build: | CMake Error at cmake/FindLLVM.cmake:79 (message): | Failed running | tmp-glibc/work/x86-64-v3-oe-linux/ispc/1.20.0-r0/recipe-sysroot/usr/bin/crossscripts/llvm-config;--libfiles;engine;ipo;bitreader;bitwriter;instrumentation;linker;option;frontendopenmp;windowsdriver;x86 | Call Stack (most recent call first): | cmake/FindLLVM.cmake:116 (run_llvm_config) | CMakeLists.txt:377 (get_llvm_libfiles) Currently hardcoded to /lib, which causing multilib build failure. An easy solution could be set and export YOCTO_ALTERNATE_LIBDIR to $baselib in recipe, but it would require to add this in all affected recipes. Other approach is to handle in llvm-config script itself. Unfortunately $baselib is not available in env for the llvm-config script, so extracting baselib value from $base_libdir as its being exported and available in env and then set YOCTO_ALTERNATE_LIBDIR accordingly. Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
* clang: Add missing SOBKhem Raj2023-06-211-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Backport patch to fix lld link failures on riscv64Khem Raj2023-06-1840-58/+135
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Apply upstream D152570Dan McGregor2023-06-162-0/+87
| | | | | | | This fixes real file names appearing in lambda names that are used as arguments to function templates. Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
* clang: Bump version to 16.0.6Khem Raj2023-06-161-2/+2
| | | | | | | * 7cbf1a259152 [lld][WebAssembly] Fix stub library parsing with windows line endings * 10c3bdc04183 Bump version to 16.0.6 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to llvmorg-16.0.5 tagKhem Raj2023-06-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * 185b81e034ba [clang] Fix crash when passing a braced-init list to a parentehsized aggregate init expression * 42f2e6efd844 [AA] Fix comparison of AliasResults (PR63019) * 57c54b25929c [GVN] Add test for PR63019 (NFC) * 726af32b5cee [X86][BF16] Fix 2 crashes with vector broadcast * 4fd1b8691da0 [Analysis][LoongArch] Add sign extension for i32 parameters and returns * 74b5a0af52eb [lld][WebAssembly] Initial support for stub libraries * 9c865c230791 [lld][WebAssembly] Implement --why-extract flag from the ELF backend * ad815b672d22 [Clang][Sema] Fix invalid cast when validating SVE types within CheckVariableDeclarationType. * cf85b3e5662d [clang] Fix crash when handling nested immediate invocations * e32cbe930f5b [CMake][AIX] Fixing AIX rpath * b98da4c71edd [CMake] Don't set absolute paths as install runpaths on ELF platforms in llvm_setup_rpath() * 87e99dec85b6 Revert DSE workarounds, this was causing some problems in main. * 84078877549b [clang] Fix overly aggressive lifetime checks for parenthesized aggregate initialization * 3a69d8111157 [CMake] Set compatibility policy for lists in LLVM-Config.cmake. * 35bd94a4b791 [clang-format] Handle <chrono> ud suffixes in IntegerLiteralSeparator * 9d0a2a41081b [BOLT][CMake] Use correct output paths and passthrough necessary options * 094f77145b95 [Hexagon] Add patterns for bspap/bitreverse for scalar vectors * 07808f6947a9 [llvm-mca] Fix duplicate symbols error * 17ceb9512a52 Reland "[Driver] Support multi /guard: options" * cd932165e595 Revert "[Driver] Support multi /guard: options" * 8c6c56dca37b [X86] Don't crash on instruction prefetch intrinsics without PREFETCHI support. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Do not provide llvm-native implicitlyKhem Raj2023-05-261-3/+0
| | | | | | | Document a way to let clang provide llvm as well. This helps this layer pass the yocto check layer test Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 16.0.4+Khem Raj2023-05-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings in * 5729e63ac7b4 Fix ArgsAsWritten being null for ConceptSpecializationExpr in certain circumstances when parsing ASTs * 2eb26b66c639 workflows/release-tasks: Remove stray backslash * 812ea0780cfa Bump version to 16.0.5 * ae42196bc493 clangd] Fix builds after 4ddae8b941398a6579d3 * 21f3dfbc2673 [clangd] Fix test failure when it's built with compiler flags unknown by clang * 82b4446f25d4 [Clang][BPF] Type print btf_type_tag properly * e24a8596a81b [SelectionDAG][RISCV] Remove code for handling too small shift type from SimplifyDemandedBits. * 46e68a277715 [Driver] Support multi /guard: options * d5cce0a7781b [cmake] Disable GCC lifetime DSE * 57262bbd32c3 [clang-tidy][test] Add trailing -- to suppress compile_commands.json read * df309b120853 fix stack probe lowering for x86_intrcc * 1a04a5f1cf15 [flang] Fix optional assertion in PFTBuilder * bef3459fcde7 [clang] Fix default initializers being ignored when initializing templated aggregate types * 83c2387c87e6 Reapply "[SystemZ] Bugfix in expansion of memmem operations." * 3c1576cc0c54 Bump version to 16.0.4 * da3cd333bea5 compiler-rt] [test] Mark dfsan tests XFAIL on glibc-2.37 * 0c7669bc2bbf [clang][driver] Pass `-femulated-tls` through to the linker in LTO mode * 753307debc04 [RuntimeDyld] Disable some ppc64 tests on 32-bit architectures. * 93e555fbd794 [InstCombine] Fix buggy `(mul X, Y)` -> `(shl X, Log2(Y))` transform PR62175 * ff9dc9c4fb11 [clang] Fix 2 bugs with parenthesized aggregate initialization * 3cc0a562969b Clear read_fd_set if EINTR received * 5db6c9daf033 [SimplifyCFG] Don't merge invoke if this makes immarg non-constant (PR61265) * 33b41a6564f9 [clang] Fix a crash with parenthesized aggregate initialization and base classes * 7a26555f8d48 [LLD][COFF] Add /inferasanlibs to lld-link as ignored flag * 4676274c9eb2 [LLD][COFF] Print object file name for unsupported directives * e86119670799 [CodeGen][MachineLastInstrsCleanup] fix INLINEASM_BR hazard * ec79a4730428 [CodeGen] precommit machine-latecleanup test Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix upstream status of ↵Khem Raj2023-05-121-1/+1
| | | | | | 0037-clang-Call-printName-to-get-name-of-Decl.patch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-config: add --libfiles optionNaveen Saini2023-05-121-0/+5
| | | | | | | | | --libfiles Fully qualified library filenames for makefile depends. This option is being used by ispc cmake. https://github.com/ispc/ispc/blob/main/cmake/FindLLVM.cmake#L116 Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
* LLVM officially supports LoongArch starting from 16.0.0zqz2023-05-101-1/+2
|
* rename add_more_target_vendors to add_distro_vendorEtienne Cordonnier2023-05-102-2/+2
| | | | | | The function was renamed in 9d190cb3b3 Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* Drop crosssdk suffix from virtual binutils provides to match oe-coreKhem Raj2023-05-033-3/+3
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on release/16.x branchKhem Raj2023-05-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings these set of changes * bd6783b38076 [compiler-rt] Fix invalid triple on ARM build * ccbab5979b7b [compiler-rt] Fix scudo build on ARM * 464bda7750a3 workflows/release-tasks: Always run apt-get update before installing deps * 64a7c127cea8 workflows/release-binaries: Install missing dependencies * 12f17d196eff [docs] Add missing Clang release note. * 6e5368c3967a workflows/release-binaries: Add missing output variable * 57c2b1e9232a Bump version to 16.0.3 * 18ddebe1a1a9 Remove UB-implying metadata when promoting speculative instruction. * dbcd2e9330cd [runtimes][asan] Fix swapcontext interception * ec006fb244ff [nfc][asan] Reformat the file * c4ac4533ea2b [test][asan] Simplify test * f2b0bf320824 llvm-exegesis: Only run target specfic tests on native hosts * b32dda29731d github: Add manual workflow to build and upload release binaries * ef4c1777ee80 [flang] Complex numbers in function arguments on Windows * 840ac8c52fd1 [clang-format] Fix regression with AlignTrailingComments set to true * 70e4662aa499 Revert "[clang-format] Handle object instansiation in if-statements" * bf80902fdd43 [StackProtector] don't check stack protector before calling nounwind functions * 82432ac5cc7d [libunwind][LoongArch] Restore $r1 before $r4 in `jumpto` * ecbc5ca533cd [libunwind][test] Add test to check for unw_resume() * 1c76740cb3b9 [AArch64] Basic target(+crypto) handling * b5aa566a7e53 [Support] Improve Windows performance of buffered raw_ostream * 74e76ab7b6f8 [LinkerWrapper] Switch to add_clang_tool() macro Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: fix reproducibily issueDan McGregor2023-04-272-0/+71
| | | | | | | | | Clang gives a name to the constructors of anonymous structures in debug info that's based on the filename of the structure's definition. It didn't respect the debug-prefix-map setting, causimg QA warnings in several recipes, notably libcxx. Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
* Add missing scan-build runtime dependenciesmzink892023-04-221-0/+12
| | | | | | * The perl scan-build script need some perl-modules to be executable Signed-off-by: Michel Zink <m.zink@rational-online.com>
* bindgen-cli: regenerate with updated bbclassKhem Raj2023-04-072-74/+144
| | | | | | | * it's needed for compatibility with updated fetcher from: https://patchwork.yoctoproject.org/project/bitbake/patch/20230405122125.3358972-1-enrico.scholz@sigma-chemnitz.de/ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Clang: Update to llvmorg-16.0.1 tagKhem Raj2023-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings following changes * cd89023f7979 [SPARC] Attempt to fix bug introduced by D142458 * c57b104e95c1 [SPARC] Implement hooks for conditional branch relaxation * c3591d714b49 [Local] Handle size mismatch between pointer/int in copyRangeMetadata() * dae44c8ccc84 [clang-format] Don't annotate left brace of struct as FunctionLBrace * 86b0c6e40502 [SelectionDAG] Correctly reduce BV to shuffle with zero on big endian * b27338656d7d [llvm-rc] Fix the reference to the option for disabling preprocessing in a message * b9857e6711a2 [llvm-rc] Look for "clang-<major>" when locating a suitable preprocessor * 35551022bf04 [llvm-rc] Respect the executable specified in the --preprocessor command * 1fa1bc9c2dff [libc++] Don't try to provide source_location on AppleClang 1403 * 555e0e732d48 [RISCV] Support emulated TLS * 356cb7e0d016 [clang-format] Add MinDigits suboptions to IntegerLiteralSeparator * 6bf663061947 [clang-format] Don't format already formatted integer literals * 7b133944eb89 [RISCV] Allow llvm-objdump to disassemble objects with unrecognised versions of known extensions * 110b4fd2d9cf Revert "[dsymutil] dsymutil produces broken lines info (probably) with LTO on mac" * 1e33c7482b45 [clang][MinGW] Add asan DLL lib before other libs and objects * e59e0b9bd374 ARMFrameLowering.cpp - fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC. * 79e743f16cd9 [ARM] Handle generating SEH unwind info for t2STR_PRE/t2LDR_POST * c163d43e2207 [libc++] Mark a test relying on `typeid` as unsupported without RTTI. * 9ec8096d0d50 [release/16.x][libc++] Revert the bitset sort optimization * 34e907fdba13 [libc++] Fix CI on release/16.x * e16f668f5ed0 [clang-format] Handle '_' in ud-suffix for IntegerLiteralSeparator Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Move clang-cl from clang-tools -> clang packageKhem Raj2023-03-301-5/+1
| | | | | | | | | | | | clang-cl is a symlink to clang, if we package it into clang-tools then it created an automatic dependency on the package providing clang binary which is clang in this case. So when someone wants to install just clang-tools, it will drag the compiler along as well, which may not be desired, this fixes the problem. Fixes https://github.com/kraj/meta-clang/issues/676 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* castxml: Fix nativesdk buildKhem Raj2023-03-301-13/+0
| | | | | | | | | There is no need to enforce clang for nativesdk here let it use defaults. Fixes https://github.com/kraj/meta-clang/issues/686 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* castxml: Upgrade to 0.6.1Khem Raj2023-03-301-3/+1
| | | | | | It supports clang-16 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* recipes: Update patch statusKhem Raj2023-03-301-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update patch statusKhem Raj2023-03-3036-45/+65
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 16.0.1 releaseKhem Raj2023-03-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings following bugfixes * 42d1b276f779 Bump version to 16.0.1 * ebafcb86c35c [CMake] Respect variables for specifying host tools even without LLVM_USE_HOST_TOOLS set * 8de1b29840b5 [llvm-objdump] Fix help message for --print-imm-hex * 1ca4b5cfaa70 [sanitizer][win] Change cmdline check to allow double backslashs * 973cea755440 [BOLT] Search section based on relocation symbol * 140c68db4fe4 [libc++] Avoid ODR violations in __exception_guard * a18482ac5089 [BOLT][AArch64] Replace NOP with adrp in AdrRelaxationPass to preserve relative offsets. * c2ef3257df81 [BOLT][NFC] Remove C-style out of bounds array ref * 1c1ab11d6e1e [RISCV][MC] Adjust conditions to emit R_RISCV_ADD*/R_RISCV_SUB* pairs * 34194d85544f [test] Add some interesting cases to MC/RISCV/riscv64-64b-pcrel.s * ee1493c713d6 [test] Improve MC/RISCV/riscv64-64b-pcrel.s to demonstrate regression due to D132262 * 4f243f137859 [test] Improve MC/RISCV/riscv64-64b-pcrel.s * 1f9ea2d3f045 [X86] AMD Genoa (znver4) Scheduler model update * 0b4106274631 [BOLT] Reject symbols pointing to section end * 14ed120b2307 No longer issue static lambda pedantic warning for pre-c++2b compat * 32b8cc7031f0 [BOLT] Fix data reoder for aarch64 * 867c59c2da17 [Coroutines] Pass size parameter for deallocation function when qualified * 6dc69d034845 [libc++][ranges] Fix incorrect integer typedef in `elements_view` test. * 99af55f91f5d [libc++][format] Fix a missing include in tests. * 8a80823218a8 [libunwind][PowerPC] Fix saving/restoring VSX registers on LE systems * c5b23ab2a31a JITLink: Add missing EHFrame NULL terminator on aarch64/ELF * 2352a1b1e917 Reapply [lld][flang] Add exceptions for Flang runtime libraries on MinGW. * 37ea87b88d07 No longer issue pedantic warning about pre-c++2b compat * a70565f7de2e [libunwind][Modules] Add unwind_arm_ehabi.h and unwind_itanium.h to the unwind module) * 56edf062bdb6 [dsymutil] dsymutil produces broken lines info (probably) with LTO on mac * bec9a607690b [compiler-rt] Add missing #else clause to fix the build on NetBSD. * 3c0850337bd8 [X86] Fix encoding for ATOMIC_LOGIC_OP * ba22382d514b [X86] Add negative test for D145930 * 2861fa247395 [Driver][FreeBSD] Simplify ARM handling * 1172ed57d823 [analyzer] Fix crashing getSValFromInitListExpr for nested initlists * 830229ee918d [WebAssembly] Add auto-upgrade for renamed intrinsics * b5f9ea64b207 [X86] Support load/store for bf16 in avx * bb6a97c15aa2 [AArch64] fix bug #55005 handle DW_CFA_GNU_NegateRAState * aef3508f89c4 [flang] Fixed uninitialized std::unique_ptr dereference. * fbf716ffe163 [flang] Fixed restrictions checking for OpenACC loop-associated constructs. * 2ecbe73ceeda [flang] Fix dereference of std::optional with no value * 0e227de08e32 [LLDB][ObjectFileELF] Correct the return type of Reloc{Offset,Addend}32 * 7d28293f17fa [LLDB][ObjectFileELF] Correct the return type of RelocOffset64 and RelocAddend64 * 6d3b7679ef21 [LLDB][ObjectFileELF] Support LoongArch64 in ApplyReloctions * a824efcd0158 [BPF] Improve pruning to avoid generate more types in BTF * ab86d147e852 [libunwind][AArch64] Unbreak building with GNU assembler * 526102b37e59 [InstCombine] Canonicalize icmp eq pow2 more thoroughly * 7049d5895700 [InstCombine] Add additional test for icmp eq/ne with bool load (NFC) * b3ea3484c063 [Pipelines] Restore old DAE position in LTO pipeline * 72cb90bd7b62 [PhaseOrdering] Add test for DAE/GlobalDCE interaction (NFC) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: fix installed-vs-shipped qa issueKai Kang2023-03-281-1/+1
| | | | | | | | It fails to run task do_package of compiler-rt with [installed-vs-shipped] issue when ${libdir} does not equal ${nonarch_libdir}. Update do_install script to fix the issue. Signed-off-by: Kai Kang <kai.kang@windriver.com>
* spirv-llvm-translator: Turn shared libs offKhem Raj2023-03-201-9/+2
| | | | | | It does not build them with 16.0.0+ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* spirv-llvm-translator: Update to latest 16.0.0 branchKhem Raj2023-03-201-8/+6
| | | | | | Try to compile with clang 16 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Disable building testsKhem Raj2023-03-201-4/+6
| | | | | | It fails to configure in lit tests during cross compile Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Do not include tests in buildKhem Raj2023-03-201-4/+8
| | | | | | | | | Install uses MAJOR_VERSION only but clang still searches in ${MAJOR_VER}.${MINOR_VER}.${PATCH_VER} for it, so this inconsistency needs to be fixed until them we just move the install from ${MAJOR_VER} -> ${MAJOR_VER}.${MINOR_VER}.${PATCH_VER} Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 16.0.0Khem Raj2023-03-2041-429/+340
| | | | | | | | Changes are described here [1] [1] https://discourse.llvm.org/t/llvm-16-0-0-release/69326 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bindgen-cli: Add missing SRC_URI sha256sum for all dependency cratesKhem Raj2023-03-192-2/+66
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libclc: Define llvm tools needed during buildKhem Raj2023-03-121-0/+5
| | | | | | | | | It pokes at target llvm.cmake and gets the path LLVM_TOOLS_BINARY_DIR pointing to target sysroot however during cross builds it should be looking for tools for cross building in native sysroot Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: ignore CVE-2022-26345Ross Burton2023-03-101-0/+3
| | | | | | | This CVE appears to be specific to Intel's packaging of OpenMP in oneAPI, so ignore it. Signed-off-by: Ross Burton <ross.burton@arm.com>
* bindgen-cli: Add the build dependency crate:// linksZoltán Böszörményi2023-03-082-7/+70
| | | | | | | | | | | | | | | "inherit cargo-update-recipe-crates" was misunderstood, as in that it doesn't add the build dependencies transparently during the build. Instead, "bitbake -c update_crates recipe-name" must be run and the resulting recipe-name-crates.inc file must be included in the recipe. Update the recipe with using the crate:// link for bindgen-cli. Otherwise "bitbake -c update_crates recipe-name" got confused and produced empty output when using the source in a subdirectory from the rust-bindgen GIT repo. Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
* castxml: Upgrade to tip of trunkKhem Raj2023-03-081-1/+3
| | | | | | To fix compile with clang16 its needed Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bindgen-cli: New recipe for version 0.64.0Zoltán Böszörményi2023-03-061-0/+23
| | | | | | It is used by Mesa to build Rusticl. Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
* openmp: Fix build with 64bit file offset on 32bit archesKhem Raj2023-03-051-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Pass LLVM_CONFIG_PATH to target and nativesdk buildsKhem Raj2023-02-221-0/+3
| | | | | | | | This ensures that it does not end up building NATIVE tools and using them during build, which obviously wont work when buildhost != targethost or iow cross-compiling Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Remove clang-offload-wrapperKhem Raj2023-02-221-2/+1
| | | | | | This has been deleted in clang 16+ via https://reviews.llvm.org/D130020 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Use LLVM_ENABLE_RUNTIMES to build C++ runtime libsKhem Raj2023-02-221-1/+2
| | | | | | This is new way of building it from 16.x onwards Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Move .so symlinks to -dev package fixes multilib buildKhem Raj2023-02-151-2/+2
| | | | | | | | Fixes ERROR: lib32-clang-15.0.7-r0 do_package_qa: QA Issue: non -dev/-dbg/nativesdk- package lib32-liblldb contains symlink .so '/usr/lib/liblldbIntelFeatures.so' non -dev/-dbg/nativesdk- package lib32-liblldb contains symlink .so '/usr/lib/liblldb.so' [dev-so] ERROR: lib32-clang-15.0.7-r0 do_package_qa: Fatal QA errors were found, failing task. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Provide missing tools during cross compileKhem Raj2023-02-101-2/+9
| | | | | | | Enable ompd gdb plugin build and add py3 to depndencies as it is required by the plugin Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: fix clang recipe for multilib buildlumpyh2023-02-061-1/+1
| | | | | | | | | when building clang for multilib, bitbake complains about liblldb containing a .so symlink this patch fixes this Signed-off-by: lumpyh <lumpy.hega@gmx.de>
* runtime: Enable PIC for static archives with clang runtime libsKhem Raj2023-02-065-0/+8
| | | | | | | This helps in compling shared libraries which may use e.g. static libc++.a during link Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Correctly specify https in HOMEPAGEKhem Raj2023-02-061-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>