summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang
Commit message (Collapse)AuthorAgeFilesLines
* Revert "clang: Do not provide llvm-native implicitly"Haixiao Yan13 days1-0/+3
| | | | | | | | | | | | | | | | | | | | | This reverts commit 384e8d169a2c408e2cef03ea2deb88fb82058011. The original commit removed the implicit PROVIDES declarations for llvm, llvm-native, and nativesdk-llvm from the clang recipe. However, this change breaks builds in kirkstone-clang18 environments, where mesa and lib32-llvm expect these to be provided by clang: - Mesa fails due to missing providers for llvm18.1.6 and nativesdk-llvm18.1.6. - lib32-llvm 13.0.1 fails on ARM BSPs with the following error, falling back to the core layer's outdated LLVM: error: 'RegVT' was not declared in this scope This commit was backported from scarthgap, but it is incompatible with oe-core expectations in the kirkstone branch. Reverting it restores compatibility. Signed-off-by: Haixiao Yan <haixiao.yan.cn@windriver.com>
* Revert "Drop crosssdk suffix from virtual binutils provides to match oe-core"Soumya Sambu2025-07-023-3/+3
| | | | | | | | | | This reverts commit e7b3acb82f4c4422e57884ad9427fba6bd020e8b. This change was originally made in scarthgap and later backported to kirkstone-clang18. However, oe-core kirkstone still uses 'virtual/${TARGET_PREFIX}binutils-crosssdk'. Reverting to maintain compatibility with oe-core kirkstone.
* clang_git.bb: assign PYTHON_PN to LLDB_PYTHON_EXE_RELATIVE_PATHJan Kircher2024-10-311-2/+2
| | | | Signed-off-by: Jan Kircher <jan.kircher@leica-microsystems.com>
* Revert "libcxx: Do not induce -mbranch-protection externally on arm64"Jose Quaresma2024-08-211-1/+0
| | | | | | | | | | This reverts commit 96b2f3da50c8cf814f661fba37df0a098457b016. The is required to be applied globally and not only for libcxx. Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> (cherry picked from commit 9e0ef14c505b8621baad385328293f5eb2d1202a) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
* Update libcxx_git.bbOiouuu2024-08-211-1/+1
| | | | | | | Fix syntax error, '-DD' -> '-D' (cherry picked from commit e47fd133a06e584e4947643bbcb9748b6521b3ac) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
* compiler-rt-sanitizers: Package a symlink to address headers include issueKhem Raj2024-08-141-13/+13
| | | | | | | | | | | | Instead of moving the whole install under major.minor.patch, create a symlink so both can be included Fixes https://github.com/kraj/meta-clang/issues/978 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ludovic Jozeau <ludovic.jozeau@scle.fr> (cherry picked from commit a2192126094e2152c49becdf281899626abaebed)
* clang: Upgrade to 18.1.6Khem Raj2024-08-112-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 1118c2e05e67 [libcxx][libcxxabi] Fix build for OpenBSD (#92186) * 48c1364200b5 [clang] Don't assume location of compiler-rt for OpenBSD (#92183) * 3d0752b9492e [GlobalOpt] Don't replace aliasee with alias that has weak linkage (#91483) * 92087868d5d2 [Arm64EC] Correctly handle sret in entry thunks. (#92326) * bee6966d8efa [Arm64EC] Improve alignment mangling in arm64ec thunks. (#90115) * 6456ebbc18a6 [workflows] Fix libclang-abi-tests to work with new version scheme (#91865) * a7cd0c611238 [RISCV] Add a unaligned-scalar-mem feature like we had in clang 17. * 2a4a0bf1db8b Update llvm/test/Transforms/InstCombine/bit_ceil.ll * 26ccc6b5c1c7 [InstCombine] Drop nuw flag when CtlzOp is a sub nuw (#91776) * aa2549e2bf12 Revert "[SLP]Fix a crash if the argument of call was affected by minbitwidth analysis." * c6d554618931 [GlobalIsel][AArch64] fix out of range access in regbankselect (#92072) * 9acb41b1e4bb [SystemZ] Handle address clobbering in splitMove(). (#92105) * 1665723044ec release/18.x: [libclc] Fix linking against libIRReader * 494847ba8fef [InstSimplify] Do not simplify freeze in `simplifyWithOpReplaced` (#91215) * fac122ac4391 [X86][Driver] Do not add `-evex512` for `-march=native` when the target doesn't support AVX512 (#91694) * 47b6dc45e39a [AArch64][SelectionDAG] Mask for SUBS with multiple users cannot be elided (#90911) * dff717818356 [RISCV] Use 'riscv-isa' module flag to set ELF flags and attributes. (#85155) * 3512b12a7981 [RISCV] Store RVC and TSO ELF flags explicitly in RISCVTargetStreamer. NFCI (#83344) * be239653149f [RISCV] Add canonical ISA string as Module metadata in IR. (#80760) * 6cfa40e450cf [RISCV][lld] Set the type of TLSDESC relocation's referenced local symbol to STT_NOTYPE * 1184a9cb30e6 [PPCMergeStringPool] Avoid replacing constant with instruction (#88846) * f1491c7460e7 [clang-format] Fix a crash with AlignArrayOfStructures option (#86420) * 8d65f14cb6ff [Clang][Sema] Revise the transformation of CTAD parameters of nested class templates (#91628) * be6c81751cc9 [lld][WebAssembly] Fix test on Windows, use llvm-ar instead of ar * c5b3fa491f00 Reland "[clang-repl] Keep the first llvm::Module empty to avoid invalid memory access. (#89031)" * a82ddb9d8122 [workflows] Add a job for requesting a release note on release branch PRs (#91826) * 09615ce869b0 [OpenMP] Fix child processes to use affinity_none (#91391) * 5c77c1d31d14 [llvm][lld] Pre-commit tests for RISCV TLSDESC symbols * 7dbd266e89a7 [AArc64][GlobalISel] Fix legalizer assert for G_INSERT_VECTOR_ELT * d9a7e5179a89 [InterleavedLoadCombine] Bail out on non-byte-sized vector element type (#90705) * 0a045c9d83bb [AArch64][GISEL] Consider fcmp true and fcmp false in cond code selection (#86972) (#91580) * 4a28f8e3c625 [FunctionAttrs] Fix incorrect nonnull inference for non-inbounds GEP (#91180) * 0abb89a80f5c [clang-format] Don't remove parentheses of fold expressions (#91045) * bce9393291a2 [AMDGPU] Fix GFX12 encoding of s_wait_event export_ready (#89622) * f5f572f54b32 [SelectionDAG] Mark frame index as "aliased" at argument copy elison (#89712) * dfc89f89ed14 [X86][FP16] Do not create VBROADCAST_LOAD for f16 without AVX2 (#91125) * 047cd915b86a [X86][EVEX512] Add `HasEVEX512` when `NoVLX` used for 512-bit patterns (#91106) * 58e44d3c6f67 [AMDGPU] Enhance s_waitcnt insertion before barrier for gfx12 (#90595) * d1d7131906d9 [Workflows] Re-write release-binaries workflow (#89521) * 211cdc65a1fb workflows: Fix incorrect input name in release-binaries.yml (#84604) * 0ec1bc454456 workflows: Fixes for building the release binaries (#83694) * d9661e11996d [Github] Add repository checks to release-binaries workflow (#84437) * b7e2397c54b7 [CMake][Release] Enable CMAKE_POSITION_INDEPENDENT_CODE (#90139) * ce88e86e428b [CMake][Release] Refactor cache file and use two stages for non-PGO builds (#89812) * f2c5a10e1f27 [CMake][Release] Add stage2-package target (#89517) * dd3aa6d0e9a8 Bump version to 18.1.6 (#91094) Signed-off-by: Khem Raj <raj.khem@gmail.com> (From meta-clang rev: 49b031747859cc20238c07628f1b550fcf759de9 Signed-off-by: Peter Marko <peter.marko@siemens.com>
* compiler-rt-sanitizers: Fix native build tooling pathsEric Sun2024-07-301-3/+6
| | | | | | | | | | | Native builds of compiler-rt-sanitizers fail because llvm-ranlib, llvm-ar, and llvm-nm are not found where the recipe specifies that they'll be. Other recipes (in particular: compiler-rt) only specify the locations of those tools for target and nativesdk builds, and they build fine. This commit implements the same thing for compiler-rt-sanitizers, fixing native builds. Signed-off-by: Eric Sun <ericsun2@cisco.com>
* libcxx: Do not induce -mbranch-protection externally on arm64Khem Raj2024-07-151-0/+1
| | | | | | | | | | | | | On arm64 OE-Core has moved the gcc default configuration done with --enable-standard-branch-protection to be a CFLAGS option which is appended to CC variable, this means that this option can override the package's default to not use it e.g. libunwind where the library has to be built without it. Fixes https://github.com/kraj/meta-clang/issues/963 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
* clang: Add packageconfig option for build-idKhem Raj2024-07-041-1/+2
| | | | | | | | Enable it by default, since it is needed for debuginfod to work Fixes https://github.com/kraj/meta-clang/issues/956 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: use release tarball instead of gitEtienne Cordonnier2024-05-072-5/+5
| | | | | | | | | | | | For clang 18.1.5, the llvm-project-source repository is about 3GB big, whereas the source tarball is 126MB big. Using the source tarball instead of the git repository speeds up the fetch step significantly. Also, the git repository is getting so big that depending on the network setup, it is necessary to change git http.postBuffer options in order to avoid errors such as "fetch-pack: unexpected disconnect while reading sideband packet". Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* clang: Upgrade to 18.1.5Khem Raj2024-05-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings * 617a15a9eac9 [clang codegen] Fix MS ABI detection of user-provided constructors. (#90151) * 20b9ed64ea07 [RISCV][ISel] Fix types in `tryFoldSelectIntoOp` (#90659) * ece9d35f1a70 [GlobalISel] Fix store merging incorrectly classifying an unknown index expr as 0. (#90375) * a7b8b890600a [X86] Enable EVEX512 when host CPU has AVX512 (#90479) * 4da5b1417493 [GlobalISel] Don't form anyextending atomic loads. * a96b04442c9f [AArch64] Remove invalid uabdl patterns. (#89272) * aea091b70eda [clang][CoverageMapping] do not emit a gap region when either end doesn't have valid source locations (#89564) * 58648f334d62 [X86][EVEX512] Check hasEVEX512 for canExtendTo512DQ (#90390) * 6350acdb134d [CGP] Drop poison-generating flags after hoisting (#90382) * f341c76b9461 [Clang] Handle structs with inner structs and no fields (#89126) * abf6b13085fb [IRCE] Skip icmp ptr in `InductiveRangeCheck::parseRangeCheckICmp` (#89967) * ee5bb0c95667 Fix Objective-C++ Sret of non-trivial data types on Windows ARM64 (#88671) * 6dbaa89433f7 [clang-format] Fix a regression in ContinuationIndenter (#88414) * 51ff7f38b633 [clang-format] Fix a regression in annotating TrailingReturnArrow (#86624) * b544217fb31f [AMDGPU] Fix setting nontemporal in memory legalizer (#83815) * 78b99c73ee4b [DAGCombiner] Fix miscompile bug in combineShiftOfShiftedLogic (#89616) * 1aa91720cc4f [DAGCombiner] Pre-commit test case for miscompile bug in combineShiftOfShiftedLogic * 35fea1032741 release/18.x: [clang-format] Correctly annotate braces in macros (#87953) * b9b73814ad8a [libcxx] [modules] Add _LIBCPP_USING_IF_EXISTS on aligned_alloc (#89827) * c0b48372d82a release/18.x: [clang-format] Revert breaking stream operators to previous default (#89016) * 3b4ba7277bd7 [analyzer] Fix performance of getTaintedSymbolsImpl() (#89606) * 7699b341b763 release/18.x: [clang-format] Fix a regression in annotating BK_BracedInit (#87450) * fb865928c8e0 [GlobalISel] Fix fewerElementsVectorPhi to insert after G_PHIs (#87927) * 111ae4509c96 [X86] Fix miscompile in combineShiftRightArithmetic * 76cbd417af50 [X86] Pre-commit tests (NFC) * e7c816b3cd3e [InstCombine] Fix unexpected overwriting in `foldSelectWithSRem` (#89539) * 3685a599c866 ReleaseNote: Mention SpecialCaseList change (#89141) * a981a4f7653c [X86] Always use 64-bit relocations in no-PIC large code model (#89101) * 4ddac856c55f [analyzer] Fix a security.cert.env.InvalidPtr crash * c6d63d4fc555 Bump version to 18.1.5 (#89291) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 18.1.4Khem Raj2024-04-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | * e6c3289804a6 [CMake][Release] Disable PGO (#88465) (#89000) * 028e425f86cc [MIPS] Fix the opcode of max.fmt and mina.fmt (#85609) * e3c832b37b0a Fix override keyword being print to the left side * 1deeee3f5da4 Revert "[Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072)" * 995539ce05ba [LLD] [COFF] Don't add pseudo relocs for dangling references (#88487) * db67e6fb9ad1 [libc++] Fix -Wgnu-include-next in stddef.h (#88214) * 647fbc710840 [SelectionDAG] Prevent combination on inconsistent type in `combineCarryDiamond` (#84888) * eaae766a20fd [RISCV] Support rv{32, 64}e in the compiler builtins (#88252) * c24b41d71f2e github-upload-release.py: Fix bug preventing release creation (#84571) * c837970dd7e9 [Codegen][X86] Fix /HOTPATCH with clang-cl and inline asm (#87639) * d0ddcce21d91 [InstSimplify] Make sure the simplified value doesn't generate poison in threadBinOpOverSelect (#87075) * 4056cc29dfd3 Prepend all library intrinsics with `#` when building for Arm64EC (#87542) * 6e071cf30599 [SLP]Fix a crash if the argument of call was affected by minbitwidth analysis. * d89da2ac8839 [libcxx] coerce formatter precision to int (#87738) * b6ebea7972cd [SPARC] Implement L and H inline asm argument modifiers (#87259) * bffecba7ce4c [libc++] Simplify the implementation of <stddef.h> (#86843) * 9899a2d76c8f [lit][ci] Publish lit wheels (#88072) * 3ceccbdb1995 [clang-format] Correctly annotate braces of empty ctors/dtors (#82097) * 429d62872525 [Headers] Don't declare unreachable() from stddef.h in C++ (#86748) * feba8727f805 [ConstantRange] Fix off by 1 bugs in UIToFP and SIToFP handling. (#86041) * e4259b583c92 [Float2Int] Pre-commit test for SIToFP/UIToFP ConstantRange bug. NFC * daca56d8e162 Bump version to 18.1.4 (#87715) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: add .git to repository source urlPeter Marko2024-04-101-1/+1
| | | | | | | | | | | Align the source url with oe-core (meta/recipes-devtools/llvm/llvm_git.bb) Currently when creating shallow tarball download mirror one of the biggest files is llvm and it has to be stored twice because of this difference. Signed-off-by: Peter Marko <peter.marko@siemens.com>
* clang: Upgrade to 18.1.3Khem Raj2024-04-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings * c13b7485b879 [clang] Avoid -Wshadow warning when init-capture named same as class field (#74512) * f249092ef26d [tsan] Refine fstat{,64} interceptors (#86625) * 76c721994a11 [clang][Sema] Fix a CTAD regression after 42239d2e9 (#86914) * e0f0c463b539 [mlir][transform] replace original op to loop ops (#83537) * 47aac495c895 [OpenMP][AIX] Affinity implementation for AIX (#84984) * a385a917da93 [Support] Fix color handling in formatted_raw_ostream (#86700) * 0cd4babe0342 Reapply [libcxx] [modules] Fix relative paths with absolute LIBCXX_INSTALL_MODULES_DIR (#86020) * cfaeee6a8994 release/18.x: [SystemZ] Fix overflow flag for i128 USUBO (#86491) * 767b61c159b3 [lld/ELF][X86] Respect outSecOff when checking if GOTPCREL can be relaxed (#86334) * 7c7c3d4a3a27 [ODS][NFC] Cast range.size() to int32_t in accumulation (#85629) * 0e501dbd932e [Mips] Restore wrong deletion of instruction 'and' in unsigned min/max processing. (#85902) * fbb27d16fa12 [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072) * e74c1678231a [PowerPC] provide CFI for ELF32 to unwind cr2, cr3, cr4 (#83098) * 1c7c16e58240 [NFC][PowerPC] use script to regenerate the CHECK lines * c2a57034eff0 [msan] Re-exec with no ASLR if memory layout is incompatible on Linux (#85142) * b74f6158460c [msan] Add 'MappingDesc::ALLOCATOR' type and check it is available (#85153) * 98a15dd2d728 [clang][CodeGen] Allow `memcpy` replace with trivial auto var init * 2498e3a07f3d [LoongArch] Assume no-op addrspacecasts by default (#82332) * 368dc8553c5a [SROA]: Only defer trying partial sized ptr or ptr vector types * 0e16af8e4cf3 [ARM] Update IsRestored for LR based on all returns (#82745) * 6f8016fda7d5 Pre-commit test showing bug #80287 * ef6d1ec07c69 Bump version to 18.1.3 (#86168) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Update clang to 18.1.2 releaseKhem Raj2024-03-2136-39/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings these changes * 26a1d6601d72 [X86] Add missing subvector_subreg_lowering for BF16 (#83720) * 0bf7ff1028fb [C++20] [Moduls] Avoid computing odr hash for functions from comparing constraint expression * a2c93b34dfdf [RISCV] Fix mgather -> riscv.masked.strided.load combine not extending indices (#82506) * a9d4ed71707d [RISCV] Adjust test case to show wrong stride. NFC * 42f511c95c6f [RISCV] Add test case for miscompile in gather -> strided load combine. NFC * 53ea0de61dcd [TSan] Fix atomicrmw xchg with pointer and floats (#85228) * fd9f1faf8fcb [AVR] Remove earlyclobber from LDDRdPtrQ (#85277) * 2d35ba4a8577 Revert "release/18.x: [openmp] __kmp_x86_cpuid fix for i386/PIC builds. (#846…" * df20f2fc9998 [PowerPC] Update chain uses when emitting lxsizx (#84892) * c09f6f6f4341 [llvm-shlib] Fix the version naming style of libLLVM for Windows (#85710) * cba6ebf0d0ab [llvm-shlib] Fix libLLVM-18 symlink on mingw (#85554) * bcf98bd84199 llvm-shlib: Fix libLLVM-${MAJOR}.so symlink on MacOS (#85163) * b1f1effacf32 [WebAssembly] Change the default linker for `wasm32-wasip2` (#84569) * ecc22d27e5b8 workflows: Fix baseline version for llvm abi checks (#85166) * 7fd9979eb9cf [InstCombine] Drop UB-implying attrs/metadata after speculating an instruction (#85542) * edbe7fa5fef9 [lld][LoongArch] Fix handleUleb128 * b95ea2e51bdf [lld][test] Fix sanitizer buildbot failure * 2f640ad26d17 Remove support for EXPORTAS in def files to maintain ABI compatibility for COFFShortExport * 207ecd684cc6 [Arm64EC] Copy import descriptors to the EC Map (#84834) * 79bc8b32c6ed [llvm-lib][Object] Add support for EC importlib symbols. (#81059) * 76e1800f3565 [llvm-lib][llvm-dlltool][Object] Add support for EXPORTAS name types. (#78772) * 77e1992e89d3 [llvm-readobj][Object][COFF] Print COFF import library symbol export name. (#78769) * 3a06861272d8 [libc++] Use clang-tidy version that matches the compiler we use in the CI (#85305) * 0c1dcd675291 [clangd] [HeuristicResolver] Protect against infinite recursion on DependentNameTypes (#83542) * a649e0a6e80f [clang][modules] giving the __stddef_ headers their own modules can cause redeclaration errors with -fbuiltin-headers-in-system-modules (#84127) * 12a3bf351575 workflows: Add workaround for lld failures on MacOS (#85021) (#85110) * 9b3edb592deb release/18.x: [openmp] __kmp_x86_cpuid fix for i386/PIC builds. (#84626) (#85053) * 600f7f2ba28f [clangd] Add clangd 18 release notes (#84436) * bb83f055091c [runtimes] Prefer -fvisibility-global-new-delete=force-hidden (#84917) * 122ba9f10070 [ELF] Eliminate symbols demoted due to /DISCARD/ discarded sections (#85167) * 33c6b2027698 SystemZ release notes for 18.x. (#84560) * 8c6015db5912 [X86][Inline] Skip inline asm in inlining target feature check (#83820) * 38cf35dee880 [Inline] Add test for #67054 (NFC) * c7eb919d2cbe [ValueTracking] Treat phi as underlying obj when not decomposing further (#84339) * b01c3dcf2eb5 [LAA] Add test case for #82665. * 159969b3880b [Release] Install compiler-rt builtins during Phase 1 on AIX (#81485) * 7b61ddefc28a [ArgPromotion] Remove incorrect TranspBlocks set for loads. (#84835) * 25a989ce8bf3 [ArgPromotion] Add test case for #84807. * 2fc8bea42f99 [LLD] [COFF] Set the right alignment for DelayDirectoryChunk (#84697) * fcc33dca02d1 [X86] combineAndShuffleNot - ensure the type is legal before create X86ISD::ANDNP target nodes * 39e3ba8a383e [DSE] Remove malloc from EarliestEscapeInfo before removing. (#84157) * 3f8711fc5e01 [InstCombine] Fix miscompilation in PR83947 (#83993) * 9b9aee16d4dc [Clang][LoongArch] Fix wrong return value type of __iocsrrd_h (#84100) * a9ba36c7e7d7 [Clang][LoongArch] Precommit test for fix wrong return value type of __iocsrrd_h. NFC * d77c5c3830d9 [LoongArch] Make sure that the LoongArchISD::BSTRINS node uses the correct `MSB` value (#84454) * 1de8ea75d9b3 [analyzer] Fix crash on dereference invalid return value of getAdjustedParameterIndex() (#83585) * c14bf0a13d42 [libc++] Enable availability based on the compiler instead of __has_extension (#84065) * 55193c2ba53f [InstCombine] Handle scalable splat in `getFlippedStrictnessPredicateAndConstant` * 78859f118a6b [lld][LoongArch] Support the R_LARCH_{ADD,SUB}_ULEB128 relocation types (#81133) * d8352e93c1c8 [Clang] [Sema] Handle placeholders in '.*' expressions (#83103) * eb9bc02b06cb [RISCV] Fix crash when unrolling loop containing vector instructions (#83384) * c3721c1dcff5 [ELF] Internalize enum * c14879562f46 Unbreak *tf builtins for hexfloat (#82208) * 89d543227a32 [AArch64] Skip over shadow space for ARM64EC entry thunk variadic calls (#80994) * 42c599ab365b [AArch64] Fix generated types for ARM64EC variadic entry thunk targets (#80595) * d7a9810f9c14 [AArch64] Fix variadic tail-calls on ARM64EC (#79774) * ea6c457b8dd2 [LoongArch] Override LoongArchTargetLowering::getExtendForAtomicCmpSwapArg (#83656) * 69d9b15fe872 [TableGen] Fix wrong codegen of BothFusionPredicateWithMCInstPredicate (#83990) * a91b9bd9c750 [OpenMP] fix endianness dependent definitions in OMP headers for MSVC (#84540) * 7cb67530d2e9 ReleaseNotes for LLVM binary utilities (#83751) * 94d8f150ed8b [InstCombine] Fix infinite loop in select equivalence fold (#84036) * 4c36ecbe0e16 [InstCombine] Fix shift calculation in InstCombineCasts (#84027) * e90bfdb4ddce [test] Make two sanitize-coverage tests pass with glibc 2.39+ * bf45c3a07918 [DSE] Delay deleting non-memory-defs until end of DSE. (#83411) * 16ab0812d201 [clang][fat-lto-objects] Make module flags match non-FatLTO pipelines (#83159) * 267d9b1a74c4 Allow .alt_entry symbols to pass the .cfi nesting check (#82268) * 340ba4588c80 MIPS: fix emitDirectiveCpsetup on N32 (#80534) * 439e6f81e772 [libc++][modules] Fixes naming inconsistency. (#83036) * 2ad8fbdbca06 Bump version to 18.1.2 (#84655) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Bump version to 18.1.1Khem Raj2024-03-131-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to clang 18.1 major releaseKhem Raj2024-03-0639-799/+185
| | | | | | | | | | LLVM - https://github.com/llvm/llvm-project/blob/release/18.x/llvm/docs/ReleaseNotes.rst Clang - https://github.com/llvm/llvm-project/blob/release/18.x/clang/docs/ReleaseNotes.rst libc++ - https://github.com/llvm/llvm-project/blob/release/18.x/libcxx/docs/ReleaseNotes/18.rst lld - https://github.com/llvm/llvm-project/blob/release/18.x/lld/docs/ReleaseNotes.rst extra - https://github.com/llvm/llvm-project/blob/release/18.x/clang-tools-extra/docs/ReleaseNotes.rst Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Adjust packaging to match new libLLVM sonameKhem Raj2024-03-061-3/+2
| | | | | | | | | libLLVM-18.so and libLLVM.so are symlinks to libLLVM.so.18.1, here we make libLLVM-18.so part of libLLVM package so packaging works without warnings about dev-so Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Pass LLVM_RUNTIME_TARGETSKhem Raj2024-03-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LLVM_RUNTIME_TARGETS will define the location of triple for target correctly. This is an effort to fix the case where cross compiler will lurk into host libc++ header if libcxx-native is staged for a given recipe e.g. graphviz, it works ok if --sysroot is specified because thats how it tries to find if its a cross sysroot or not but without that it has mind of its own. e.g. try x86_64-yoe-linux-musl-clang++ -stdlib=libc++ ~/tests/iosfd.cpp -v -c ... clang -cc1 version 18.1.0 based upon LLVM 18.1.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/usr/lib64/gcc/x86_64-pc-linux-gnu/13.2.1/../../../../x86_64-pc-linux-gnu/include" ignoring nonexistent directory "/include" /mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux-musl/graphviz/8.1.0/recipe-sysroot-native/usr/bin/../include/c++/v1 /usr/local/include /usr/include /mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux-musl/graphviz/8.1.0/recipe-sysroot-native/usr/lib/clang/18/include End of search list. ... See where it is looking for c++ headers. Its not an issue for OE right now, since we always specify --sysroot in CC but still would be good to handle it amicably if possible Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Allow conditional compilation of clangdPhilip Lorenz2024-02-151-9/+24
| | | | | | | clangd should not be needed in target builds. Extend PACKAGECONFIG to enable selective disabling and disable it by default for target builds. Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
* clang: Reorganize PACKAGECONFIG structurePhilip Lorenz2024-02-151-15/+20
| | | | | | | | Move common PACKAGECONFIG default values into a dedicated variable and sort values alphabetically (hopefully making it easier to figure out where to add a new value when extending the variable). Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
* Backport "std::pointer_traits should be SFINAE-friendly"Max Ihlenfeldt2024-02-142-0/+661
| | | | | | | E.g. meta-browser's Chromium recipe needs this for its 121 version update. Signed-off-by: Max Ihlenfeldt <max@igalia.com>
* compiler-rt-sanitizers: Depend on compiler-rtPhilip Lorenz2024-02-141-1/+1
| | | | | | | | | | | | | | | | When configuring with COMPILER_RT_USE_BUILTINS_LIBRARY=ON, compiler-rt expects the target builtin libraries to be available. Make sure that this really is the case by adding them to DEPENDS. Without the dependency recipe build fails during the configure task | -- Failed to find compiler-rt builtins library for x86_64-poky-linux | CMake Error at .../build/tmp/work-shared/llvm-project-source-17.0.6-r0/git/compiler-rt/cmake/Modules/AddCompilerRT.cmake:281 (message): | Cannot find builtins library for the target architecture | Call Stack (most recent call first): | .../build/tmp/work-shared/llvm-project-source-17.0.6-r0/git/compiler-rt/lib/stats/CMakeLists.txt:23 (add_compiler_rt_runtime) Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
* compiler-rt-sanitizers: Adapt to new liborc filenamePhilip Lorenz2024-02-141-1/+1
| | | | | | | | | | | The library is now named liborc which leads to conflicts when installing compiler-rt and compiler-rt-sanitizers in parallel. Installing compiler-rt-sanitizers-staticdev (17.0.6) on root * check_data_file_clashes: Package compiler-rt-sanitizers-staticdev wants to install file .../usr/lib/clang/17.0.6/lib/linux/liborc_rt-x86_64.a But that file is already provided by package * compiler-rt-staticdev Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
* llvm-config: update following the oe-core scriptDmitry Baryshkov2023-12-291-19/+19
| | | | | | | | | | | The Mesa Clover meson.build script passes two options to llvm-config script, --libs --ldflags. The script from meta-clang passes control to the native llvm-config script, which unfortunately results in the native dynamic linker option leaking to the cross build. Fix that by adopting the approach from OE-core and filter known options before calling into the native llvm-config. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
* clang: Upgrade to 17.0.6Khem Raj2023-12-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Bring in following fixes * 6009708b4367 Revert "[runtimes] Add missing test dependencies to check-all (#72955)" * 04caadc61fa2 [Driver] Enable __float128 support on X86 on FreeBSD / NetBSD (#72788) * e919a83f96fe eliminate python SyntaxWarnings from check-all output. * f6c231c15ec8 [clang-format] Fix crashes in AlignArrayOfStructures (#72520) * f74f3e6f58d3 [clang] Fix sorting module headers (#73146) * 7e30ce9528d9 [JITLink][aarch32] Change writeRegister's return type to void. * 03373fd9cb6c [CMake] Support building shared library for NetBSD * 21af3b62b632 workflows/release-binaries: Do a preliminary build to fill ccache (#72576) * 201faeca595e Add RV64 constraint to SRLIW (#69416) * e957e6dcb29d [runtimes] Add missing test dependencies to check-all (#72955) * f8575ff46f89 [clang-format] Fix a bug in aligning comments above PPDirective (#72791) * a71237b9f67f [clangd] Avoid null result in FindRecordTypeAt() * 308c816de5a4 Bump version to 17.0.6 * 442401f7c0ca remove tests from bad merge * 76c7e0e1e2d1 Use the correct namespace for looking up matching operator!= (#68922) * b5cbb35408a3 [libc++] Use correct size for deallocation of arrays in shared_ptr (#68233) * e6de86cb9ef8 Revert "Reland [clang] Canonicalize system headers in dependency file when -canonical-prefixes" (#71697) * bb66d8f8f73b [clang][WebAssembly] Link crt1 even in case of -shared Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 17.0.5Khem Raj2023-11-201-2/+2
| | | | | | | | | | | | | | | | | | | * 98bfdac5ce82 [BranchFolding] Remove dubious assert from operator< (#71639) * 12c6ee8fd204 [GlobalOpt] Cache whether CC is changeable (#71381) * 0a1274224ef8 [libc++] Fix UB in <expected> related to "has value" flag (#68552) (#68733) * 42f8800b720f [clang] fix test PR69717.cpp (#72134) * e666be92b44b [clang] Run test on x86 only * aebee698ef16 [clang] Do not clear FP pragma stack when instantiating functions (#70646) * 529aa6eadb27 [SLP]Fix PR70004: Do not change insert point for reduction gather nodes. * 69b3baf9b87e [DAG] WidenVectorOperand - add basic handling for *_EXTEND_VECTOR_INREG nodes * e7dc53b94212 [Mips] In LowerShift*Parts, xor with bits-1 instead of -1. (#71149) * a6cbdae98272 [clang-format] Correctly annotate keyword operator function name (#66904) * 094cfd14c813 Bump version to 17.0.5 * 05422e1dcf94 [Driver] Fix linking with -lm on Solaris (#65632) * 910748f4ec5a [clang-repl] Fix BUILD_SHARED_LIBS symbols from libclangInterpreter on MinGW (#71393) * 582f0469dae1 [CGExprConstant] stop calling into ConstExprEmitter for Reference type destinations (#70366) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 17.0.4 releaseKhem Raj2023-11-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings following changes/fixes * 309d55140c46 [AArch64][GlobalISel] Fix incorrect ABI when tail call not supported (#70215) * 9477268e4247 [AArch64] Add test for #70207 (NFC) * c2eab59e622c [GVN] Fix use-after-free in load PRE with select available value (#69314) * 586481468a07 [clang-tidy] Fix crash in modernize-use-trailing-return-type (#70709) * 9d0ca259eed6 [OpenMP] Fix building for 32-bit DragonFly, NetBSD, OpenBSD (#70527) * a8046f72bfb3 [OpenMP] record-replay use static-cast (#70516) * 12bbcd627f60 [flang] Add comdats to functions with linkonce linkage (#66516) * bdb1553c7639 [mlir] Add pass to add comdat to all linkonce functions (#65270) * 3347c8441588 Update release note for the fix * f6fb6a996c7f [clang][ExprConst] Fix crash on uninitialized array subobject (#67817) * 8c8abe6b93c0 [RISCV] Correct copyPhysReg for GPRPF64. (#70419) * 615beaec04f9 [SVE] Fix incorrect offset calculation when rewriting an instruction's frame index. (#70315) * bb29e1ead22f [MemCpyOpt] Combine alias metadatas when replacing byval arguments (#70580) * 2b82ec7947fe [OpenMP] Use the more appropriate function to retrieve the thread id on OpenBSD (#65553) * 8909a24d0af1 [libc++] Encode additional ODR-affecting properties in the ABI tag (#69669) * e9dcc15f514a [AArch64] Prevent argument promotion of vector with size > 128 bits (#70034) * 4b7f4152a8d1 [LoongArch] Implement COPY instruction between CFRs (#69300) * fb62a201a199 Revert "[clang-format] Fix align consecutive declarations over function pointers" * 1f6d35b36681 Fix tests for c23 <-> c2x * 030d68ef2cd7 Fix a c23 -> c2x think-o * 2a41d978b4fa [C23] Use thread_local semantics (#70107) * afbe3549af4d [clangd] Disable crashy unchecked-optional-access tidy check (#69427) * 7f790f9a39e3 [ConstraintElim] Don't decompose values wider than 64 bits (#68803) * a1c67ffd0a1f [ConstraintElim] Add test for #68751 (NFC) * ef50a367e3d5 [mlir] Avoid including <alloca.h> on DragonFly * a7101379d75e [LVI][CVP] Treat undef like a full range on abs(x, false) (#68711) * aa03fba83b17 [libcxx] [test] Add a test parameter for disabling memory intensive tests (#68214) * 71f408bc3623 workflows/release-tasks: Fix release note artifact upload (#69522) * 9ab3ce1d7a06 Bump version to 17.0.4 * 880a282a40e3 workflows/release-lit: Pass correct build directory to pypa/gh-action-pypi-publish (#69438) * 8719ee0cb39a workflows/release-lit: Fix dev suffix removal (#69397) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-clang: Replace RUNTIME with TC_CXX_RUNTIMEKhem Raj2023-10-253-7/+7
| | | | | | TC_CXX_RUNTIME is now defined in OE-core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 17.0.3 releaseKhem Raj2023-10-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | * 888437e1b600 [asan] Ensure __asan_register_elf_globals is called in COMDAT asan.module_ctor (#67745) * 2e00f4ca4e91 [clang-format][doc] Update the Linux kernel coding style URL * aeb83c3783a6 [clang-format] Fix a serious bug in git-clang-format (#65723) * 268faa377aee [LSan] Mark create_thread_leak.cpp as UNSUPPORTED: darwin. * 491a91e8eea2 [PowerPC] Use zext instead of anyext in custom and combine (#68784) * 8ce6b65c89ad [PowerPC] Add test for #68783 (NFC) * 7a23a5d43c67 [clang-format] Fix a bug in RemoveParentheses: ReturnStatement (#67911) * be4016e52779 [X86] Fix logic for optimizing movmsk(bitcast(shuffle(x))); PR67287 * 496b174053bd [X86] Add tests for incorrectly optimizing out shuffle used in `movmsk`; PR67287 * f50c6382c716 [clang] [MinGW] Explicitly always pass the -fno-use-init-array (#68571) * d10b731adcc8 [LVI][CVP] Treat undef like a full range (#68190) * 37b79e779f44 [X86] combineConcatVectorOps - only concatenate single-use subops * 5a13ce2d6020 Bump version to 17.0.3 * e7b3b94cf500 [clang] Correct behavior of `LLVM_UNREACHABLE_OPTIMIZE=OFF` for `Release` builds (#68284) * f0a687d821c1 [LLD] [COFF] Fix handling of comdat .drectve sections (#68116) * 8a8ade49ff49 workflows/release-binaries: Use more cores to avoid the 6 hour timeout (#67874) * 1090b91a2840 [AArch64] Disable loop alignment for Windows targets (#67894) * 69c8c96691c7 [Sema] Use underlying type of scoped enum for -Wformat diagnostics (#67378) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to llvmorg-17.0.2Khem Raj2023-10-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * b2417f51dbbd Fix release/export.sh to export runtimes tarball, too (#67404) * 23988a1d82d5 [libc++] Fix `std::pair`'s pair-like constructor's incorrect assumption (#66585) * 33e14ecd6aac [CodeGen] Don't treat thread local globals as large data (#67764) * 03f797b51df6 [workflow] Fix abi checker in llvm-tests. Same fix as in 99fb0af80d16b0ff886f032441392219e1cac452 (#67957) * f6cf58eed973 [clang] [MinGW] Tolerate mingw specific linker options during compilation (#67891) * b338a2830a2c [LLD] [COFF] Restore the current dir as the first entry in the search path (#67857) * 6a5be8e95b43 [LLD] [COFF] Clarify -print-search-path for the empty string element (#67856) * 71be0aafe357 [NFC] clang-format lld/COFF/Driver.cpp and lld/Common/Filesystem.cpp * 0a2d7dae6ef2 [compiler-rt] Reinstate removal of CRT choice flags from CMAKE_*_FLAGS* (#67935) * 098e653a5bed [MemCpyOpt] Merge alias metadatas when replacing arguments (#67539) * 78d201ebc3e2 [MemCpyOpt] Add test for #67539 (NFC) * e718f3240a57 [DependencyScanningFilesystem] Make sure the local/shared cache filename lookups use only absolute paths (#66122) * 45066b9fbc7b [Sema] Fix fixit cast printing inside macros (#66853) * 87ec1f460d0e Work around two more instances of __noinline__ conflicts. (#66138) * 9da5b7a93bca [lldb] Fix building LLDB standlone without framework * c056d720b534 [lldb][NFCI] Change logic to find clang resource dir in standalone builds * cb23434f9e63 [XCOFF] Do not generate the special .ref for zero-length sections (#66805) * 1b55dc9d94c3 Fix buildbot failure caused by D157623 * 28d81a2bfa0a [lld][COFF] Remove incorrect flag from EHcont table * b7eba056b93c workflows/release-tasks: Setup FileCheck and not for release-lit (#66799) * 9678f11b057c [StackColoring] Handle fixed object index * 49e9ee190080 [StackColoring] Handle SEH catch object stack slots conservatively * 17123a60b87c [X86] Add test for #66984 (NFC) * 2839aa915066 [SimpleLoopUnswitch] Fix exponential unswitch * 773f136d6faa [SimpleLoopUnswitch] Fix reversed branch during condition injection * 4362f3e4cf48 [clang] Include `expected-no-diagnostics` in newly-added test (NFC) * 5f1fcc43e592 [clang] Bail out when handling union access with virtual inheritance * 178cf5bc8732 [clang][Diagnostics] Fix wrong line number display (#65238) * 25a150b830f6 Revert "[InlineCost] Check for conflicting target attributes early" Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 17.0.2Khem Raj2023-09-261-2/+2
| | | | | | | | | | * 481358974fb0 [GVN] Also remove phi nodes from VN table (PR65447) * 9f77e96186be [GVN] Invalidate MDA when deduplicating phi nodes * a13a89402f53 Bump version to 17.0.2 * 2c04bdb24677 [SVE] Ensure SVE call operands passed via memory are correctly initialised. (#66070) * 701620d58cdf [SVE] Precommit test to show missing initialisation of call operand. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: convert CVE_CHECK_IGNORE to CVE_STATUSLee Chee Yang2023-09-251-2/+1
| | | | Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
* clang: Specify llvm-min-tblgen location during buildKhem Raj2023-09-211-2/+8
| | | | | | | | | Install and package clang-indexer and de-absolutify llvm-lit location in LLVMConfig.cmake file Package clangd-indexer tool Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Do not package tablegen built during cross-compileKhem Raj2023-09-211-17/+2
| | | | | | | | | | These tools are only needed during build and we are using them from clang-native, so they are not needed to be either built or packages in nativesdk-clang or target clang builds Fixes Issue #859 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Rename LLDB_TABLEGEN to LLDB_TABLEGEN_EXEKhem Raj2023-09-191-2/+2
| | | | | | This is needed when using clang 17+ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 17.0.1 release branchKhem Raj2023-09-1942-556/+199
| | | | | | | | | | | | | | Drop riscv multilib patch it does not work with clang 17.0 Release Notes are below https://releases.llvm.org/17.0.1/docs/ReleaseNotes.html https://releases.llvm.org/17.0.1/tools/clang/docs/ReleaseNotes.html https://releases.llvm.org/17.0.1/tools/lld/docs/ReleaseNotes.html https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/ReleaseNotes.html https://releases.llvm.org/17.0.1/projects/libcxx/docs/ReleaseNotes.html Signed-off-by: Khem Raj <raj.khem@gmail.com>
* 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>
* 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>