summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/common.inc
Commit message (Collapse)AuthorAgeFilesLines
* clang: Add env override for libdirKhem Raj2022-03-241-1/+1
| | | | | | | | | | | | | This is useful when using clang cross compiler and the packages rely on llvm-config to detect paths and various attributes of clang/llvm install Update to latest on 14.x as well * 3f43d803382d [libc++] Re-enable workaround for pre-ranges CTAD in std::span * add3ab7f4c8a [libc++] Add workaround to avoid breaking users of <span> when <ranges> are disabled * 329fda39c507 NFC: Mention auto-vec support for SVE in release notes. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on 14.xKhem Raj2022-03-101-28/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable __int128 for compiler-rt/ppc32 Drop redundant ppc patch which is fixed upstream already Brings these fixes * e879b2bf82ef [libcxxabi] [test] Depend on unwind only if available * 569b773323a3 [libcxx][CI] Set Arm triples to match native clang build's default * f7007c570a21 Lambdas are not necessarily locals. This resolves DR48250. * eb84577cbc23 Revert "[release] Use the Bootstrapping build for building LLVM releases" * d843bde69aab [clang][driver] Fix float128 diagnostics with glibc >= 2.32 * ba9ff030d302 [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP * da3953fb0315 [NFC][PhaseOrdering] Add some tests from D119839 * 8b51e5ee0a2e [NewPM][Inliner] Make inlined calls to functions in same SCC as callee exponentially expensive * 6a713120502a [llvm] [bindings/OCaml] Remove unused dep on ounit2 * 2de2a2bba998 [LICM][PhaseOrder] Don't speculate in LICM until after running loop rotate * 7d1cd3380add [NFC][PhaseOrdering] Improve test coverage for D119975 * 1f4613675051 [NFC][PhaseOrdering] spurious-peeling.ll: also test -O1/-O2 results * 36bf1a9e628d [NFC][PhaseOrdering] Precommit tests from D119965 * 67555104d23a [MachineSink] Disable if there are any irreducible cycles * 1e4fd59253c6 [CodeGen] Add test for PR53990 (NFC) * bfaed485756a [BOLT][CMAKE] Remove CMake 3.13.4 incompatible parameter * 43b4544023b7 [LLD] [COFF] Order .debug_* sections at the end, to avoid leaving gaps if stripped * e6d2aa9b0f13 [MC][WebAssembly] Fix crash when relocation addend underlows U32 * f6a4df3a0a3d [WebAssembly] Covert llvm/test/MC/WebAssembly/reloc-code.ll to asm. NFC * 9d54fe21c67f [docs] Add RISC-V release notes for LLVM 14 * 1e3d5ccab6b6 Add cmake to source release tarballs * 0205cc086e50 [OpenMP][FIX] Ensure custom state machine works * 0826716786cd [Mips] support "sp" named register * 09546e1b5103 [libc++][doc] Update the release notes. * 8f9f84c6873e [docs] clang/docs/ReleaseNotes.rst: Add blank line * aab33202d239 [docs] PowerPC release notes formatting/grammar fixes * acf67b7a0dfc [docs] Tweak wording of note re: LTO on AIX * ce1e90fc8dba [docs] Add PowerPC release notes for LLVM 14 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 14.0.0-rc2+Khem Raj2022-03-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 65d53279b1fd RISCV] More correctly ignore Zfinx register classes in getRegForInlineAsmConstraint. * f1e7f848bf3e [clang][tests] Fix ve-toolchain tests with CLANG_DEFAULT_UNWINDLIB * 6d5afef3a7e6 [examples][BuildingAJIT] Use the right layer when adding code in Chapter 3. * 4fde843cd5c0 [ORC] Set ResolverBlockAddr in EPCIndirectionUtils::writeResolverBlock. * a98c04d58930 [Attributor][FIX] Use liveness information of the right function * 261253aa60cc [Clang][docs] Add preprocessor changes to ReleaseNotes. * 967296bfefee [RISCV] Fix inline asm errors in zfinx * 4c9110a5f37b [MIPS] Recognize DT_MIPS_XHASH dynamic table tag * ce3d57ad61db Revert "[BPF] Fix a BTF type pruning bug" * 19149538e9a9 [BPF] Fix a BTF type pruning bug * da33d400682a [SLP] Don't try to vectorize pair with insertelement * 3001b0d51963 [fir] Fix FlangOptimizerTests link on Solaris * 41d4f89e38b7 [X86ISelLowering] permit BlockAddressSDNode "i" constraints for PIC * d245bcf536a3 [Mangler] Mangle aliases to fastcall/vectorcall functions correctly * 0372676278dd [AArch64][SME] Remove term 'streaming-sve' from assembler diagnostics. * f58ab3285021 [Attributor][FIX] Pipe UsedAssumedInformation through more interfaces * 4327d39b15b2 [libcxx] Add an explicit option to build against system-libcxxabi * 3d913ec92308 [llvm] [cmake] Fix finding modern ounit2 * b3e9abd9683b [libunwind] Further fix for 32-bit PowerPC processors without AltiVec * d09f84adff1e [compiler-rt] Force ABI to libcxxabi when building cxustom libc++ * e08bab88c900 [Driver][DragonFly] -r: imply -nostdlib like GCC * 21f87ad9f590 [Driver][NetBSD] -r: imply -nostdlib like GCC * 779871c3515a [mlir-tblgen] Fix non-deterministic generating static verifier in DRR. * 4de8e5698278 [RISCV] Fix parseBareSymbol to not double-parse top-level operators * b29813fbbbaf [OpenMP] Use executable path when searching for lld * 14c432b6a17a [OpenMP] Add search path for llvm-strip * 453361d5ac01 [DSE] Fall back to CFG scan for unreachable terminators. * 03cf88fc94da [DSE] Extract a common PDT check (NFC) * ee0ae47691d3 [RISCV] Avoid infinite loop between DAGCombiner::visitMUL and RISCVISelLowering::transformAddImmMulImm * 61e78c64a38a [libunwind] Only include cet.h if __CET__ defined * 5f5b687460c3 Fix warning introduced by 47eff645d8e873ba531014751c1c06a716a367e9 * 64534d2f406c [InstCombine] Bail out of load-store forwarding for scalable vector types * 4fe93c000b20 [SLP] Fix assert from non-constant index in insertelement * a2398c560144 [Driver][OpenBSD] Enable unwind tables on all architectures * aadd03a2accd [clang][ASTReader] Fix memory leak while reading FriendTemplateDecls * 8a323ada234b [clang][SemaTemplate] Fix a stack use after scope * d61805a8b686 [libc++] Fix double file closing in `std::filesystem::remove_all()`. * f8ca5fabdb54 [ELF][X86] Don't create IBT .plt if there is no PLT entry * 8400036358c8 [libunwind][test] remember_state_leak.pass.sh.s: link with -no-pie * df3182a7df19 [clang] [test] Skip hip-fpie-option.hip if default-pie * cdd8cca0c33c [ELF] Support some absolute/PC-relative relocation types for REL format * e89602b7b2ec [clang-tidy] Fix `readability-suspicious-call-argument` crash for arguments without name-like identifier * 1f7e8b1c6893 [Docs] Added note about LLDB Win/Arm64 binary release * bdbca8f3d0b2 [asan][test] asan_prelink_test.cpp: use -fno-pie -no-pie * 3e10605abcb2 [Driver][test] Remove soon irrelevant pie tests * 2a492dfd6b4e [Driver][test] Make hexagon-toolchain-elf.c work with CLANG_DEFAULT_PIE_ON_LINUX=on * 443f68c280ac [clang][test] Make mips-vector-return.c work with CLANG_DEFAULT_PIE_ON_LINUX=on * 500889f56bce [MIPS] Add `-no-pie` option to the clang driver's tests depend on it Drop 0036-Avoid-infinite-loop-between-DAGCombiner-visitMUL-and.patch which is upstreamed now. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 14.xKhem Raj2022-02-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport a fix to avoid compiler hangs on RISCV [1] This brings following changes * 2fe5bf57172c [Driver] Use libatomic for 32-bit SPARC atomics support * 46266b3518b6 [mlir][sparse] Rename index_t to index_type again * 03d9a4094763 [AArch64][SVE] Fix selection failure during lowering of shuffle_vector * 8b5b29c4c2c5 Fix incorrect TypeSize->uint64_t cast in InductionDescriptor::isInductionPHI * 8c33ea3ab0ef [SVE][CodeGen] Bail out for scalable vectors in AArch64TargetLowering::ReconstructShuffle * 1362f8bdfce7 [AArch64][SVE] Fix selection failure caused by fp/int convert using non-Neon types * 88f8980a4d95 [AArch64][SVE] Add structured load/store opcodes to getMemOpInfo * cefe6876d6e5 [llvm-objcopy][COFF] Fix section name encoding * 3367c24735c3 [COFF] Move section name encoding into BinaryFormat * 9672d11441fd [MLIR][Presburger] Disambiguate call to floor * 08ad9ae10f32 [InstSimplify] Strip offsets once in computePointerICmp() * 5593af72d0c5 [Attributor][FIX] Heap2Stack needs to use the alloca AS * b3d3501aa128 [OpenMP][FIX] Eliminate race on the IsSPMD global * 9bf8897c84f7 [OpenMP] Add RTL function to externalization RAII * 56ac6dbc7369 [RuntimeDyld] Fix building on OpenBSD * fef110bf8b2b [clangd] Fix building SerializationTests unit test on OpenBSD * 13fdc7afa856 [Attributor][FIX] Reachability needs to account for readonly callees * f3cfaf8bc8eb [MemoryBuiltins][FIX] Adjust index type size properly wrt. AS casts * c06cc1c3a7f8 [libc++] Fix std::__debug_less in c++17. * 7d8e83dab37a [funcattrs] check reachability to improve noreturn * e1b3afbbdef1 [SLP] Simplify indices processing for insertelements * 1e340705f142 [PowerPC] Add default handling for single element vectors, and split/promote vNi1 vectors. * 908c1bae6e7f [RISCV] Fix incorrect extend type in vwmulsu combine. [1] https://github.com/llvmbot/llvm-project/pull/95 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to upcoming clang14 release branchKhem Raj2022-02-161-38/+35
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: for x86_64, correct GCC install search path for OpenEmbedded HostChangqing Li2021-12-091-0/+2
| | | | | | | | | | | | | | | | | | | Build on OpenEmbedded Host, compiler-rt-native do_configure failed with following error: compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin/clang -target x86_64-linux -isystem/path/to/x86_64-linux/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/include -O2 -pipe /path/to/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c` | /build/tmp-glibc/hosttools/ld: cannot find crtbeginS.o: No such file or directory | /build/tmp-glibc/hosttools/ld: cannot find -lgcc | /build/tmp-glibc/hosttools/ld: cannot find -lgcc | clang-13: error: linker command failed with exit code 1 (use -v to see invocation) Since OpenEmbedded Host's gcc install path is different with clang's default search form, patch for OpenEmbedded Host's gcc library install path. Signed-off-by: Changqing Li <changqing.li@windriver.com>
* clang: Update to latest on 13.x releaseKhem Raj2021-11-011-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | bump minor release to 13.0.1 Drop patch to remove git from PACKAGE_VERSION, this is already eliminated from upstream Following changes are part of this change * 08e3a5ccd952 [IntelJITListener] Fix order in JitListener/multiple.ll * 26e2c97bf14c [openmp] [elf_common] Fix linking against LLVM dylib * eb845520ac3c compiler-rt: Fix arch detection for ppc64le * ec4829efcc94 fixes bug #51926 where dangling comma caused overrun * 73daeb3d507f [CUDA] Make sure <string.h> is included with original __THROW defined. * 3ee9a2b63cfd [Support][mips] Remove unnecessary includes from Memory.inc * 47f53eec6485 [Mips] Add glue between CopyFromReg, CopyToReg and RDHWR nodes for TLS * 914355ee793c [CMake] Re-enable use --gc-sections on OpenBSD * 2ac023cd540a [clang] Omit most AttributedStatements from the CFG * 30c05f43b662 [runtimes] Properly handle the sysroot/triple/gcc-toolchain * a797306b7721 [clang-format] [PR51640] - New AfterEnum brace wrapping changes have cause C# behaviour to change * 0a5ae011cd23 [HIP] Fix test rcom-detect.hip * 1a40203f8e94 workflows: Update lldb workaround to latest version of Mac OS X * 8a93745a7121 Remove "In Progress" text from release notes * 449f3049b507 [GHA] Cancel intermediate builds on PRs * cf15ccdeb6d5 Bump version to 13.0.1 * fd1d8c2f04dd [cte] Release notes for clangd-13 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add patch to handle RISCV multilibsKhem Raj2021-10-201-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 13.xKhem Raj2021-09-101-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop upstreamed patches Brings following changes * Workaround incorre ct types when lowering fixed length gather/scatter * f17d60d62028 Inform pass manager when child loops are deleted * f56129fe78d5 Fine grain control over some sym bol visibility * dc10ff25f54b [AArch64][SME] Fix imm bug in mov vector to tile aliases * b77c810feba0 Revert "[HardwareLoops] Change order of SCEV expression construction for Init LoopCount." * 02dece03f93d [clang] fix transformation of template arguments of 'auto' type constraints * 297e9237db53 [SelectionDAGBuilder] Bugfix in visitInlineAsm() * bc3cbd744d70 [llvm-objdump] Fix 'llvm-objdump -dr' for executables with relocations * 912ad5830cc1 Add llvm-ml to LLVM_TOOLCHAIN_TOOLS (PR50536) * b46abdb7b8fe [clang][Driver] Pick the last --driver-mode in case of multiple ones * 197d9d91aec1 [AArch64][sve] Prevent incorrect function call on fixed width vector * 427df19c4791 Update counter offset to account for binary ids * 09f659449b83 libunwind: add missing break statements in EHABI * a98b397504f8 [SCEV] Fix applyLoopGuards() with range check idiom (PR51760) * 9b3867e959fa [DAGCombine] Prevent the transform of combine for multi-use operand * 49dacda603b3 [tests] precommit tests for D107692 * 8aa8ed9d4b5f Fix for commit d8cd7806310c51af912a647a6ca46de62ff13214. * 2a1d8b5016eb [clang] OpenBSD does not support C11 atomics or threads. * a52b7bf7d123 PR50294: Fix a performance regression from 2c9dbcd. * c30b2813a1d5 [clang] fix error recovery ICE on copy elision when returing invalid variable * 6668e31250ba Support linking against OpenMP runtime on OpenBSD. * be305271bfb6 OpenBSD also needs execinfo * a5e968b66a59 [clang] Allow the OpenBSD driver to link the libclang_rt.profile library. * 181739213aa0 [docs] Update release notes with items related to Flang * c45fa58f171e [libomptarget][amdcgn] Only add opt/llvm-link dependency if TARGET is availab le * 7f3d00c9b49b [libomptarget][amdcgn] Add build dependency for llvm-link and opt * 3b1fa4aef006 [RISCV] Fix reporting of incorrect commutable operand indices * 1c3fcc8ae92e [libc++][NFC] Mark values in gdb pretty print comparison functions as live to prevent values being optimized out. * c8905f1bb304 [Orc] Enable debug object tests only on x86_64 hosts * 7a4a5d413624 [Linker] Support weak symbols in nodeduplicate COMDAT group Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix llvm-link and opt dependency build failure in libompKhem Raj2021-09-021-1/+2
| | | | | | | | | | | Update to latest 13.x as well * 9e41dc71b8d4 [docs] Mention that the legacy PM is deprecated and will be removed after 14 * 73c36a9be558 [OpenMP][FIX] Allow declare variant to work with reference types * bcb43617cb7f [NewPM] Add missing LTO ArgPromotion pass * 703ee975d26a [AlignFromAssume] Bailout w/non-constant alignments (pr51680) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update towards 13.x RC2Khem Raj2021-08-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert a patch in openmp which added opt dependency, which fails to find opt when ding standalone builds see https://reviews.llvm.org/D107156 Changes in this bump * 34ff6a75f583 [docs] Update release notes for OpenMP 5.1 loop transformations. * 34300c3c00f5 [libc++] Fix incorrect bypassing of <wctype.h> * 198edf09f58e [libc++] XFAIL align.pass.cpp for PowerPC LE * 4094728a8147 [libc++abi] Apply simplify scan_eh_tab to SjLj * 4e692c97a8c1 [LoopIdiom] Don't transform loop into memmove when load from body has more than one use * c22eb9a4a5dd [NFC][LoopIdiom] Add reproducer of wrong memmove transformation * d069343fa526 Revert "[RISCV] Fix reporting of incorrect commutable operand indices" * 1828e57eb586 ThinLTO: Fix inline assembly references to static functions with CFI * 7161e4f3345f [clang-tidy] Hotfix default parameter value in 'bugprone-easily-swappable-parameters' * a7933290f72a [RISCV] Fix reporting of incorrect commutable operand indices * c9afa3a749f0 [Coverage][llvm-cov] Correctly export branch coverage in LCOV format * e8ce80e31d93 [profile] Don't use pragma comment linker on mingw * 4f857ea56b4f [profile] Add underscore to /alternatename for Win/x86 * d3d9dc586933 [profile] Build with -fms-extensions in MinGW mode * cf035cac186b [scudo][standalone] Link tests against libatomic if libatomic exists * 1f0b043ae709 [libomptarget] Apply D106710 to amdgcn devicertl * ab2d8f074974 [libomptarget][amdcgn] Add build dependency for opt * 3020229e73ec [clang] Replace asm with __asm__ in cuda header * d6944303acfd [openmp] Annotate tmp variables with omp_thread_mem_alloc * 47bbdbecb039 [AMDGPU][OpenMP] Wrap amdgcn declare variant inside ifdef * 573858e9805e [AMDGPU][OpenMP] Use llvm-link to link ocml libraries * 512c57ea97ae [OpenMP][AMDGCN] Initial math headers support * d1923cb0aec2 [AMDGPU][OpenMP] Support linking of math libraries * 7f2f829479dc Revert sharing subprograms across CUs * ae5ed5d23bb1 [libc++] Bypass calling exception-throwing functions in the dylib with -fno-exceptions * 23ba3732246a [libc++][PowerPC] Fix a test case failure when compiled with libcxx * 80878ccb3286 [libc++] Fix XFAIL annotation * 10a4a861837d [lldb] Add tests for TypeSystemMap::GetTypeSystemForLanguage * 535b7fb2201a [lldb] Avoid unhandled Error in TypeSystemMap::GetTypeSystemForLanguage * ddc49d0f1f2b [clang] [MSVC] Implement __mulh and __umulh builtins for aarch64 * 34f839fc9d4c Revert "[clang][fpenv][patch] Change clang option -ffp-model=precise to select ffp-contract=on" * b643ee1b9c1a [AArch64] Fix comparison peephole opt with non-0/1 immediate (PR51476) * 98feb20df14e [profile] Only use NT_GNU_BUILD_ID if supported * fcd5126bfba8 [X86][AVX] Extract SUBV_BROADCAST constant bits from just the lower subvector range (PR51281) * f3e1d94de69d [ARM][atomicrmw] Fix CMP_SWAP_32 expand assert * 15b8be0b832a [libc++] Skip logic for detecting C11 features when using_if_exists is supported * 404024f9adc1 [libc++] Split off tests for aligned_alloc & friends into separate test files * c40c3bfa9a87 [libc++] Convert test-suite workarounds for some C11 features to XFAILs * 0c25e0174861 [Flang] Fix build failure on MacOS * 2e4c11ee3209 [PowerPC] Disable CTR Loop generate for fma with the PPC double double type. * 08dd644d078a ReleaseNotes: add lld/ELF notes * 2153cad11ba2 [DAGCombiner] Stop visitEXTRACT_SUBVECTOR creating illegal BITCASTs post legalisation. * 87d56ad4411d [LLD] [MinGW] Add more options for disabling flags in the executable * b9be17a7ecf9 [clang] fix crash on template instantiation of invalid requires expressions * d86e569e8119 [clang] [hexagon] Add resource include dir * 24d8b6565a2e [Attributor][FIX] Guard constant casts with type size checks * 5b60faae3f10 [InstCombine] avoid infinite loops from min/max canonicalization * f4006c59497d [InstSimplify] fold min/max with limit constant * ba048518e08f [InstSimplify] add tests for min/max idioms; NFC * 0dd4f002e1d3 [OpenMP]Fix PR50336: Remove temporary files in the offload bundler tool * a57d98111e63 [LoopVectorize] Improve vectorisation of some intrinsics by treating them as uniform * 740f08210e5d [NFC] Clean up tests in test/Transforms/LoopVectorize/assume.ll * 1bbe8ef81549 [lld-macho] Fill out release notes for 13.x Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 13.x release branchKhem Raj2021-08-121-1/+2
| | | | | | Fix libcxx/locale builds on musl Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 13.0.0/trunkKhem Raj2021-06-301-2/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: drop git suffix from version variablesChangqing Li2021-06-281-0/+1
| | | | | | | | | | | other recipe like intel-graphics-compiler, config failed with below error: [IGC] Could not find the LLVM dylib. Aborting. with a suffix in library name make other recipe cannot found it. Backport a patch from 12.0.0 to fix this. Signed-off-by: Changqing Li <changqing.li@windriver.com>
* openmp: Fix build on non-x86 targetsKhem Raj2021-06-241-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest master/13.0Khem Raj2021-06-161-12/+11
| | | | | | Drop 0024-compiler-rt-Include-stddef.h.patch its accepted upstream Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on main/13.0 branchKhem Raj2021-06-141-0/+1
| | | | | | | Fix compiler-rt build on armv6 reported in https://github.com/YoeDistro/yoe-distro/issues/555 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Fix hwsan builds with llvm libunwindKhem Raj2021-06-081-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libunwind: Implement unw_backtraceKhem Raj2021-06-081-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libunwind: Install headers and pkgconfig fileKhem Raj2021-06-081-0/+1
| | | | | | | This ensures it can replace nongnu libunwind Use it only when selecting RUNTIME = "llvm" Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Fix build on mipsKhem Raj2021-06-081-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Link with static C++ runtime when availableKhem Raj2021-06-081-0/+1
| | | | | | This fixes build on ARM Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix x86 tuple for include search pathsKhem Raj2021-06-081-0/+1
| | | | | | | | | | | | This ensures that search path for c++ headers is using right directory structure as per Openembedded gcc and sysroot install e.g. ignoring nonexistent directory "/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux-musl/compiler-rt/13.0.0-r0/recipe-sysroot/usr/lib/i686-yoe-linux-musl/11.1.0/../../../include/ c++/11.1.0/i386-linux-gnu" Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix sanitizer build on musl/x86_64Khem Raj2021-06-081-0/+1
| | | | | | backtrace APIs are glibc specific so do not use them Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to trunk/13.0 future seriesKhem Raj2021-06-081-29/+24
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Import missing patch for Reporter.pyJan-Simon Möller2021-05-251-0/+1
| | | | | | | | | | | Upstream removed Reporter.py and added it back later. Backport the patch. Create 0033-Import-upstream-patch-to-re-add-Reporter.py.patch Upstream status: Backport of https://github.com/llvm/llvm-project/commit/3263c81589eca689341ab5084723bdb7fe4a1286 Signed-off-by: Jan-Simon Möller <dl9pf@gmx.de>
* clang: Enable dwarf-5 default debug infoKhem Raj2021-05-041-2/+4
| | | | | | This matches with GCC 11 which is also defaulting to DWARF-5 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix build on armv6Khem Raj2021-03-251-0/+1
| | | | | | Fixes Issue #445 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm: Recognise yoe and poky vendors as OE based distroKhem Raj2021-03-011-0/+1
| | | | | | This helps llvm decide correctly on gcc installation structure Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 12.0.0 RC2Khem Raj2021-03-011-6/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Merge llvm-common into clangZoltán Böszörményi2021-02-181-0/+1
| | | | Signed-off-by: Zoltán Böszörményi <zboszor@pr.hu>
* llvm-project-source: Add patch to make libclc explicitly use python3Zoltán Böszörményi2021-02-131-0/+1
| | | | Signed-off-by: Zoltán Böszörményi <zboszor@pr.hu>
* llvm-project-source: Add a patch to fix LLVM bug 48921Zoltán Böszörményi2021-02-131-0/+1
| | | | | | | | | | The patch was taken from https://bugs.llvm.org/show_bug.cgi?id=48921 Unfortunately, LLVM 11 is already closed so the patch was only accepted into LLVM 12. Also reported at https://gitlab.freedesktop.org/mesa/mesa/-/issues/4107 Signed-off-by: Zoltán Böszörményi <zboszor@pr.hu>
* clang: for x86_64, set Yocto GCC install search pathHongxu Jia2021-01-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Under Yocto host, while using clang-native to build, it searches install host gcc failed which causing include file not found [snip] |clang++ -target x86_64-linux -MMD -MF src/base/files/file_path_constants.o.d -I../../../tools/gn/src -I. \ -isystem/tmp-glibc/work/x86_64-linux/gn-native/87.0.4280.141-r0/recipe-sysroot-native/usr/include -O2 -pipe \ -std=c++17 -c ../../../tools/gn/src/base/files/file_path_constants.cc -o src/base/files/file_path_constants.o |../../../tools/gn/src/base/files/file_path_constants.cc:7:10: fatal error: 'iterator' file not found |#include <iterator> | ^~~~~~~~ [snip] Set three Yocto based GCC triple: poky, oe-core and wind river Before aplly the patch [snip] $ ../recipe-sysroot-native/usr/bin/clang++ -v clang version 11.0.1 (https://github.com/llvm/llvm-project 43ff75f2c3feef64f9d73328230d34dac8832a91) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /buildarea/raid5/hjia/wrlinux-20/build_master-wr_browser_2021012017/build-gn-native/tmp-glibc/work/x86_64-linux/gn-native/87.0.4280.141-r0/chromium-87.0.4280.141/../recipe-sysroot-native/usr/bin [snip] After aplly the patch: [snip] $ clang-11 -v clang version 11.0.1 (https://github.com/llvm/llvm-project 22c3241ff9a6224261df48d0258957fd8acc3d64) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /buildarea/raid5/hjia/wrlinux-20/build_master-wr_browser_2021012017/build/tmp-glibc/work/x86_64-linux/clang-native/11.0.1-r0/build/bin Found candidate GCC installation: /usr/lib//x86_64-wrs-linux/10.1.0 Found candidate GCC installation: /usr/lib/gcc/x86_64-wrs-linux/10.1.0 Selected GCC installation: /usr/lib//x86_64-wrs-linux/10.1.0 Candidate multilib: .;@m64 Selected multilib: .;@m64 [snip] BTW, it is hardly to insert a triple by the replacement of TARGET_SYS (=${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}), since TARGET_VENDOR is different between clang and clang-native Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
* clang: Use python3 explicitly in scriptsKhem Raj2020-10-151-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 11.x release branchKhem Raj2020-08-211-9/+9
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: honor --dyld-prefix when searching for dynamic linkerOleksandr Ocheretnyi2020-07-021-0/+1
| | | | | | | | | | * Commit 1ce5b0090e18 ("clang: Search for dynamic linker.") does not honor --dyld-prefix option, so it fails to find the linker when --dyld- prefix is used for usrmerge. Add DyldPrefix when searching for dynamic linker. Fixes: 1ce5b0090e18 ("clang: Search for dynamic linker.") Signed-off-by: Oleksandr Ocheretnyi <oocheret@cisco.com>
* fix build errors when using libLLVMInterpreterAnuj Mittal2020-04-031-0/+1
| | | | | | | | | | | | | | | | | Don't use the full path to libffi and avoid linking to the one from clang's sysroot. Prevents errors like: Log data follows: | DEBUG: Executing shell function do_compile | NOTE: VERBOSE=1 cmake --build /build/build/tmp/work/corei7-64-poky-linux/opencl-clang/10.0.0-r0/build --target all -- | ninja: error: '/build/build/tmp/work/corei7-64-poky-linux/clang/10.0.0-r0/recipe-sysroot/usr/lib/libffi.so', needed by 'libopencl-clang.so.10', missing and no known rule to make it | WARNING: exit code 1 from a shell command. | ERROR: Execution of '/build/build/tmp/work/corei7-64-poky-linux/opencl-clang/10.0.0-r0/temp/run.do_compile.72389' failed with exit code 1: | ninja: error: '/build/build/tmp/work/corei7-64-poky-linux/clang/10.0.0-r0/recipe-sysroot/usr/lib/libffi.so', needed by 'libopencl-clang.so.10', missing and no known rule to make it | WARNING: exit code 1 from a shell command. | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* clang: Fix default resources directory when cross compilingJim Broadus2020-03-281-0/+1
| | | | | | | | | | | | By default, clang looks for resourses relative to the binary location: ${location}/../lib/clang/${version}/ However, the default bindir defined in cross.bbclass is a subdirectory of bin, so clang forms a directory that looks like /usr/bin/lib/clang/10.0.0/ Apply a patch to use ${location}/../../lib/clang/${version} if the directory name of ${location}/.. is "bin". Signed-off-by: Jim Broadus <jbroadus@xevo.com>
* clang: Update to latest 10.xKhem Raj2020-03-051-1/+0
| | | | | | Drop -lz patch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 10.x releaseKhem Raj2020-03-041-3/+3
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade clang to 10.x release (RC2)Khem Raj2020-02-211-22/+16
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang,llvm: cmake: Fix configure for packages using find_package()Ovidiu Panait2020-02-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Currently, when a package (i.e. bcc [https://github.com/iovisor/bcc.git]) that depends on LLVM/Clang tries to run cmake find_package() during do_configure, it will fail with a similar error: | The imported target "llvm-tblgen" references the file | ".../recipe-sysroot/usr/bin/llvm-tblgen" | | but this file does not exist. Possible reasons include: | * The file was deleted, renamed, or moved to another location. | * An install or uninstall procedure did not complete successfully. | * The installation package was faulty and contained | ".../recipe-sysroot/usr/lib/cmake/LLVMExports.cmake" | but not all the files it references. This is due to the fact that currently the exported cmake scripts look for target binaries in sysroot. Work around this by not exporting the target binaries in Exports-* cmake files. Upstream-Status: Innapropriate [oe-specific] Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* clang: Search for dynamic linker.Daniel McGregor2020-01-201-1/+1
| | | | | | | Use the sysroot for a hint as to where to find the dynamic linker. This allows multilib distros to use the appropriate runtime linker path. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
* libcxx: Correct link failure due to missing __divti3Jeremy Puhlman2020-01-161-0/+1
| | | | | | Add libgcc as defined by $CC to link of libc++. Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
* compiler-rt: Fix build with glibc 2.31Khem Raj2019-12-231-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Use cmake variable for libdlKhem Raj2019-12-111-0/+1
| | | | | | | | This ensures that clang can link with libdl on platforms where needed Fixes issue #241 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix multilib clang compile failing if lib is in the toolchain pathMichael Davis2019-12-051-0/+1
| | | | | Signed-off-by: Michael Davis <michael.davis@essvote.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Uodate to 9.0.1-rc1Khem Raj2019-11-231-5/+4
| | | | | | | Drop 0021-Driver-Prioritize-SYSROOT-usr-include-over-RESOURCE_.patch as its already applied upstream Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm: Check for built-in atomic<double> during configureKhem Raj2019-11-181-0/+1
| | | | | | | | | This helps in deciding on linking libatomic, therefore its important to check for atomic<double> because on x86, clang decides to not use built-in whereas gcc does, so clangd e.g. links ok when using gcc but fails when using clang with gcc-runtime on x86 Signed-off-by: Khem Raj <raj.khem@gmail.com>