summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* clang: Bump to 15.0.2Khem Raj2022-09-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Brings these changes * 451e3b68306d Bump version to 15.0.2 * 9d3635c8675f Exclude check-polly-unittests and check-polly-isl from check-all * a26ef3c19ede [Hexagon] Add defaulted operator= to classes with defaulted copy ctor * f1ad3abf75f0 [MachineCycle][NFC] add a cache for block and its top level cycle * 8d802f78fa8c [libc++] Keep unary_function and binary_function in C++17 for one more release * 5d9fa4d16e0e SPIRV: Fix compilation in NDEBUG. * b73d2c8c720a [LV] Keep track of cost-based ScalarAfterVec in VPWidenPointerInd. * 38b5fa73d585 [LV] Move new epilog-vectorization-widen-inductions.ll to AArch64 dir. * c079a29305bb [LV] Add tests for epilogue vectorization with widened inductions. * d64394b81d6e [libc++] Always query the compiler to find whether a type is always lockfree * c6d2e8bcc033 [docs] Fix build-docs.sh * 43b5b04f27f1 [libcxx] Bump libc++ version to 15.0.1 * d4bada99c069 [CodeGen] Don't zero callee-save registers with zero-call-used-regs (PR57692) * 433f2aaa32bd [lit] Set shlibpath_var on OpenBSD * 063556d02def [clang(d)] Include/Exclude CLDXC options properly * 046d5b917bcd [Libomptarget] Revert changes to AMDGPU plugin destructors Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix libclang package files listMichal Wojcik2022-09-271-1/+1
| | | | | | | Use libclang.so.* wildcard to include all .so files (not only dangling symlink ./usr/lib/libclang.so.15 -> libclang.so.15.0.1). Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
* compiler-rt-sanitizers: fix multiple installations for orc libMamta Shukla2022-09-201-1/+2
| | | | | | | remove libclang_rt.orc and c_orc.h header since it is being installed by both compiler-rt and compiler-rt-sanitizer when built for arm. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com>
* clang: Upgrade to latest on release/15.xKhem Raj2022-09-1538-230/+45
| | | | | | | | | | | | | | | | | | | | | | Drop objdump patch and git suffix patch as they are applied upstream brings in these changes * 29d395a1b7a8 [llvm-objdump] Change printSymbolVersionDependency to use ELFFile API * 4936d7ce4852 [llvm-objdump][test] Add verneed-invalid.test * 99882208e234 [compiler-rt] Handle non-canonical triples with new runtime lib layout * 8b75172a754e (origin/release/15.x) [NFC] Fix exception in version-check.py script * 3637f345d2ab Bump version to 15.0.1 * c0141f3c300f Downgrade implicit int and implicit function declaration to warning only * 6fe69891d15c [MachO] Don't fold compact unwind entries with LSDA * a5ae700c67ec [MachO] Fix dead-stripping __eh_frame * c51a59d8a947 [libc++][format] Updates feature-test macros. * 92e7ef99303f [LLD][COFF] Fix writing a map file when range extension thunks are inserted * c643956d69b1 [mlir] Fix building CRunnerUtils on OpenBSD with 15.x * 1a5c5e0f67be [DwarfEhPrepare] Assign dummy debug location for inserted _Unwind_Resume calls (PR57469) * 3a08ad21ce89 [Clang] Fix crash in coverage of if consteval. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lldb: Add missing rdep on lldb-serverKhem Raj2022-09-151-1/+1
| | | | | | lldb server is needed for native debugging with lldb on target Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix llvm-objdump crash on aarch64/muslKhem Raj2022-09-132-0/+158
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Fix arm buildsKhem Raj2022-09-121-2/+4
| | | | | | | | | | | | With clang-15, it exposed an error building, where it is trying to link with libgcc even when llvm unwninder is available in distro. Therefore use DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON, other options are to match the recipe with compiler-rt recipe. Fix missing option -DCOMPILER_RT_ENABLE_STATIC_UNWINDER when building with static libcxx Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Fix build on mipsKhem Raj2022-09-122-0/+33
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-config: Replace TARGET_* flags with normal equivalent flagsKhem Raj2022-09-121-4/+4
| | | | | | | TARGET_* are not exported in recipes and hence are not available to this script during build. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Depend on zstdKhem Raj2022-09-121-1/+1
| | | | | | | It could be made as a packageconfig but its useful to enable it by default Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Populate cmake needed binaries in sysrootKhem Raj2022-09-121-1/+8
| | | | | | | Some of cmake checks in packages depending upon clang check for presense of these tools during build, therefore populate them into sysroot Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Use host built clang-pseudo-gen and clang-tidy-confusable-chars-gen toolsKhem Raj2022-09-121-2/+12
| | | | | | | These tools are needed during build but when building target version of clang they must be used from clang-native Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Link with libatomic on mips/riscv32Khem Raj2022-09-121-0/+3
| | | | | | these arches need 64bit atomics which are not available as builtins Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add compiler-rt and libcxx to build time depends for targetKhem Raj2022-09-121-1/+1
| | | | | | These are not staged into sysroot otherwise and cmake fails to configure Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang, llvm-rutime: Turn per target runtime off and use RelWithDebInfo for buildKhem Raj2022-09-126-4/+15
| | | | | | | | | | | clang can now build multiarch runtimes like debian's setup, but not all arches work equally well, e.g. arm32 bit can not handle arm and armhf case, so lets disable it for now. Use DCMAKE_BUILD_TYPE=RelWithDebInfo as it is needed to set DCMAKE_BUILD_TYPE in 15.x Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to clang 15.0.0 releaseKhem Raj2022-09-1242-478/+264
| | | | | | | | | | | | | | | | | | Drop upstreamed patches and forward port the remaining to latest sourcess llvm: Fix libzstd detection with zstd cmake files Release Notes [1] [2] [3] [4] [5] [6] [1] https://github.com/llvm/llvm-project/blob/release/15.x/clang/docs/ReleaseNotes.rst [2] https://releases.llvm.org/15.0.0/docs/ReleaseNotes.html [3] https://releases.llvm.org/15.0.0/tools/clang/docs/ReleaseNotes.html [4] https://releases.llvm.org/15.0.0/tools/lld/docs/ReleaseNotes.html [5] https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html [6] https://releases.llvm.org/15.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizer: fix nativesdk-compiler-rt-sanitizers buildMamta Shukla2022-09-091-1/+1
| | | | Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com>
* libcxx: Enable installing libc++.so as linker scriptKhem Raj2022-08-301-3/+1
| | | | | | | This ensures that -stdlib=libc++ option works as expected by adding both -lc++ -c++abi to linker command in sequence Signed-off-by: Khem Raj <raj.khem@gmail.com>
* sanitizer: Fix build with glibc 2.36Khem Raj2022-08-072-0/+63
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 14.0.6Khem Raj2022-07-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring in following changes * f28c006a5895 Bump version to 14.0.6 * aa586b6f5f55 [clang][AVR] Implement standard calling convention for AVR and AVRTiny * ec42d3c069c7 [AVR] Add more devices * c12386ae247c [MC][AArch64] Enable '+v8a' when nothing specified for MCSubtargetInfo * 4d5dad43b2eb [analyzer] Fix null pointer deref in CastValueChecker * 5b296385298f PR45879: Fix assert when constant evaluating union assignment. * deb573739df9 [clang-tidy] `bugprone-use-after-move`: Fix handling of moves in lambda captures * d0cd5a872f8d [clang-format] Fix SpacesInLineCommentPrefix deleting tokens. * 3cd9df8443f8 [clang-format] Fix PointerAlignment: Right not working with tab indentation. * d350783a0520 [LoopIdiom] Merge TBAA of adjacent stores when creating memset * 198626ad43fd [MIPS] Address instruction selection failure for abs.[sd] * b75bf750fdc2 [LoopIdiom] Fix bailout for aliasing in memcpy transform. * 2e857fe6e390 [ARM] Fix MVE getShuffleCost legalized type check * a517f3439671 [Support] Add missing <cstdint> header to Base64.h * 4d039a7a7189 [Support] Add missing <cstdint> header to Signals.h * 483db58f3eb5 compiler-rt: Allow build without __c11_atomic_fetch_nand * 576e5b39ae4d [clang-tidy] Fix #55134 (regression introduced by 5da7c04) * 99b5eb2d3a61 [Local] Don't remove invoke of non-willreturn function * 885724c60cdc [SimplifyCFG] Add test for invoke of nounwind non-willreturn function (NFC) * 2f0a69c32a4c [OpenMP] Fix partial unrolling off-by-one. * 79147e4722cc [clang][CUDA][Windows] Fix compilation error on Windows with `uint32_t __nvvm_get_smem_pointer` * ec0332328bd6 [clang] Fix some clang->llvm type cache invalidation issues * 10d442522b1a [clang][AVR] Implement standard calling convention for AVR and AVRTiny * 09ec80e16f47 [PowerPC] Treat llvm.fmuladd intrinsic as using CTR Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: backport a patch fixing ARMv5 cross-compileMing Liu2022-07-052-0/+66
| | | | | | | | | | | | | Compiler-rt cross-compile for ARMv5 fails because D99282 made it an error if DMB is used for any pre-ARMv6 targets. More specifically, the "#error only supported on ARMv6+" added in D99282 will cause compilation to fail when any source file which includes assembly.h are compiled for pre-ARMv6 targets. Since the only place where DMB is used is syn-ops.h (which is only included by arm/sync_fetch_and_* and these files are excluded from being built for older targets), this patch moves the definition there to avoid the issues described above. Signed-off-by: Ming Liu <liu.ming50@gmail.com>
* clang: Fix native and nativesdk builds for hf targetsEsben Haabendal2022-07-053-3/+6
| | | | | | | | | | Setting the ${HF} variable based on ${TUNE_CCARGS_MFLOAT} does only make sense for target builds, as it defines arguments for target. Without this fix, building with hf machine configuration will cause problems, as native and nativesdk triplets will be include "hf", something like "x86_64hf-linux", which is wrong and not recognized by LLVM build/configuration system. Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Build clang_rt.profile library when possibleEsben Haabendal2022-06-011-1/+1
| | | | | | | | | | | | | To enable clang_rt.profile library do something like the following in local.conf or your distro configuration. PACKAGECONFIG:pn-compiler-rt = "profile" The clang_rt.profile library is used to collect coverage information. It is a static library, so does not introduce any additional footprint in target images. Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* clang: Update to 14.0.4+Khem Raj2022-05-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This brings * b950bd2ce7ff Bump version to 14.0.5 * 29f1039a7285 [CUDA][HIP] Externalize kernels with internal linkage * e6de9ed37308 [CUDA][HIP] Externalize kernels in anonymous name space * fecfc8394484 AST: Move __va_list tag back to std conditionally on AArch64. * 725d57c39039 AST: Make getEffectiveDeclContext() a member function of ItaniumMangleContextImpl. NFCI. * 0009cdbd8a3a [clang][NFC] Remove IgnoreLinkageSpecDecls * 53eaee6bf3b3 [clang][NFC] Standard substitution checking cleanup * c81f3d00cbd4 [AVR] Generate 'rcall' instead of 'call' on avr2 and avr25 * 5f6fe6b93e85 [AVR] Fix incorrect calling convention for varargs functions * 42fe7ccbeb44 [SystemZ] Bugfix for symbolic displacements. * f45a01e4a170 [libc++][CI] added XFAIL LIBCXX-AIX-FIXME to new runnning test cases after install locale fileset on AIX OS. * 55e34f3b49b1 [libc++] Always enable the ranges concepts * 5f66e721ec1d [ELF][ARM] Fix unneeded thunk for branches to hidden undefined weak * 3bfae7816bdb Fix crash getting name of a template decl * 76c1c1dd2a01 [OpenMP] Fix library path missing when using OpenMP * 588b95a2b88e [ELF][AArch64] Fix unneeded thunk for branches to hidden undefined weak * e70d79f1e8c0 [ELF] Ignore --no-add-needed * 7a42b2fd5be3 [BOLT] Compact legacy profiles * d6319246f89b [CodeGen] Use ABI alignment for C++ new expressions * daef3113e819 [compiler-rt] Add NO_EXEC_STACK_DIRECTIVE on s390x * c65b0cd2421d [GlobalIsel] Fix fallback if stack protector isn't supported. * cda300eab8dd [Driver][Solaris] -r: imply -nostdlib like GCC * 9827a185b611 [Driver][Ananas] -r: imply -nostdlib like GCC * 087082a828ff [cmake] Increase -fms-compatibility-version in Windows toolchain file * c56415735060 [SystemZ] Bugfix in SystemZTargetLowering::combineINT_TO_FP() * be653f6292e7 [X86] combineX86ShuffleChain - don't fold to truncate(concat(V1,V2)) if it was already a PACK op * 52528806579b [AArch64] Ampere1 does not support MTE * 53433dd0b503 [AArch64] Support for Ampere1 core * c6d56a324ef8 [AArch64] Add native CPU detection for Ampere1 * 60c8e02c9d12 [IPSCCP] Support unfeasible default dests for switch. * 0108630f8bc5 [InstCombine] Fix scalable-vector bitwise select matching * 39e909731a11 [InstCombine] add scalable vector test for logical select; NFC * cd597588217a [HIP] Fix HIP include path * 50d4a84152c6 Fix test for c7ee0b8bda8b32a800bc01e9151b364446a6e1b1 * 869c1d7d0902 [Clang] Fix the guaranteed alignment of memory returned by malloc/new on OpenBSD * 5c4cf01f47da [Driver][Linux] Remove D.Dir+"/../lib" from default search paths for LLVM_ENABLE_RUNTIMES builds * f3f90ec42ae6 [MC][ELF] Improve st_size propagation rule * 9ed930e5cd74 [MC][test] Improve offset.s * 5eb22621bcd2 Bump version to 14.0.4 * 019d4f1ceb96 [libc++abi] Remove XFAIL on arm64 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 14.0.3Khem Raj2022-04-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings these changes * 1f9140064dfb Bump version to 14.0.3 * 2e7e14177186 workflows: Add a test to ensure that the LLVM version is correct * 0e27d08cdeb3 [RISCV] Fix crash for section alignment with .option norvc * a36801750327 [asan] Always skip first object from dl_iterate_phdr * 1f4c7b2a9120 [RISCV] Don't emit fractional VIDs with negative steps * e19be4195b87 [RISCV] Add another test showing incorrect BUILD_VECTOR lowering * 9efcce92b55b [RISCV] Fix lowering of BUILD_VECTORs as VID sequences * 21ce6cfd1d93 [RISCV] Add tests showing incorrect BUILD_VECTOR lowering * 58d5fbe2c20b [llvm-mt] Add support /notify_update * 50c6ba751fa2 [RISCV] Only try LUI+SH*ADD+ADDI for int materialization if LUI+ADDI+SH*ADD failed. * dc30b0d3320d [ELF] --emit-relocs: fix missing STT_SECTION when the first input section is synthetic * 324127d8da95 [libcxx] Add some missing xlocale wrapper functions for OpenBSD * ebf29ba9f0a3 [LV] Remove stray debug dump added in 0d2efbb8b82c. * 0d2efbb8b82c [LV] Always use add to add scalar iv and (startidx + step) for ints. * e7a9fd4f57d6 [LV] Add test case for PR54427. * 9a3e81e1f91f [InstCombine] canonicalize select with signbit test * b83c4a2dc0fb [x86] Fix infinite loop inside DAG combiner with lzcnt feature. * 0fbe860711be [Clang][Fortify] drop inline decls when redeclared * 571c7d8f6dae Reland "[llvm][AArch64] Insert "bti j" after call to setjmp" * 0f56ce0fb207 [DebugInfo][InstrRef] Avoid a crash from mixed variable location modes * e8f03f2057ee Force GHashCell to be 8-byte-aligned. * 09fba23d41f7 [compiler-rt] Implement __clear_cache on FreeBSD/powerpc * 33504b3bbe10 [PowerPC] Allow absolute expressions in relocations * 3400d0293a14 [CMake] Update cache file for Win to ARM Linux cross toolchain builders. NFC. * 6c41c8edb0cc [CMake] Replace `TARGET_TRIPLE` with `TOOLCHAIN_TARGET_TRIPLE` for Win-to-Arm cross toolchain cache file. NFC. * b6dbee34387d [CMake] Update cache file for Win to ARM cross tooolchain. NFC. * 46d19f3a8699 [CMake] Use CMAKE_SYSROOT to build libs for Win to ARM cross tooolchain. NFC. * e11b929a3c97 [LLD][COFF] Fix TypeServerSource matcher with more than one collision * d800180f6bee [lld][COFF] Fix TypeServerSource lookup on GUID collisions * 8c3445ac1c8b [AArch64][LOH] Don't ignore regmasks in bundles by iterating over instrs. * 43ee392dd462 [InstCombine] try to fold low-mask of ashr to lshr * 5ea5e3c01b7b [InstCombine] add tests for low-mask of ashr; NFC * fe8a27acd716 [LV] Handle zero cost loops in selectInterleaveCount. * 2c4d288eae8b [RISCV][NFC] Add missing lit.local.cfg in test/CodeGen/MIR/RISCV/ * d0f27fb44952 [RISCV] Fixing stack offset for RVV object with vararg in stack. * b6e91d4a331e [RISCV] Pre-commit for fixing stack offset for RVV object * 87599bdabbd1 [RISCV] Store/restore RISCVMachineFunctionInfo into MIR YAML file * 5c9eed741dbd [libc++] Make __dir_stream visibility declaration consistent * c62053979489 [AArch64] Fix the upper limit for folded address offsets for COFF * 6697c5bc3a1e [compiler-rt] [scudo] Use -mcrc32 on x86 when available * 8475349bd639 [AARCH64] ssbs should be enabled by default for cortex-x1, cortex-x1c, cortex-a77 * d4e3c50b2bda [libc++] Define `namespace views` in its own detail header. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Fix nativesdk buildingEsben Haabendal2022-04-251-0/+7
| | | | Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Fix nativesdk buildingEsben Haabendal2022-04-251-1/+6
| | | | Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Build builtins only for the default targetEsben Haabendal2022-04-201-1/+2
| | | | | | | | | | | | | | | | We were never really supposed to build for multiple target architectures in one compiler-rt build, so let's use the feature created to do exactly that. This also happens to fix building for ARM softfp ABI builds, where the target architecture guessing logics ends up with: -- Builtin supported architectures: arm;armv6m And later on bailing out because of duplicate ninja rules: ninja: error: build.ninja:56765: multiple rules generate lib/clang/14.0.0/lib/linux/libclang_rt.builtins-arm.a [-w dupbuild=err] Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* libclc: Export YOCTO_ALTERNATE_EXE_PATH and YOCTO_ALTERNATE_LIBDIRKhem Raj2022-04-101-0/+3
| | | | | | They need to be explicitly exported Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on 14.x release branchKhem Raj2022-04-1038-174/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | brings in these fixes * ec13fed5867f [X86] lowerV8I16Shuffle - use explicit SmallVector<SDValue, 4> width to avoid MSVC AVX alignment bug * aaf0c921a54a [clang-repl] Add an accessor to our underlying execution engine * d150523f0776 [AArch64] Use correct calling convention for each vararg * fd98b0f1a6a1 [SelectionDAG] Don't create illegally-typed nodes while constant folding * d53e2603383a [AArch64] Allow .variant_pcs before the symbol is registered * 67a290460c37 [VectorCombine] Insert addrspacecast when crossing address space boundaries * 353068233f21 [ELF] Fix llvm_unreachable failure when COMMON is placed in SHT_PROGBITS output section * 311a622edd31 [Object][test] Fix invalid.test * 1007cb795a3c [llvm-objdump] --private-headers: change errors to warnings for dynamic section dumping * c9ec4902c3e3 [llvm-objdump][test] dos2unix some files * 5b9dd016bec7 [SelectionDAG][RISCV] Make RegsForValue::getCopyToRegs explicitly zero_extend constants. * e9b26b5b2a70 [RISCV] Add test case for miscompile caused by treating ANY_EXTEND of constants as SIGN_EXTEND. * a4681df0202c [libcxx] [test] Avoid spurious test breakage in clang-cl-dll configs with newer CMake * db07d9f098b3 [MC] Fix llvm_unreachable when a STB_GNU_UNIQUE symbol needs a relocation * 22d7bee01a5a [PPCISelLowering] Avoid emitting calls to __multi3, __muloti4 * 23d08271a4b2 Add cmake/ to release tarballs via concatenation * b69247dcbd80 [libcxx] random_device, specify optimal entropy properties for all OS's using arc4random() * 63e7af77ec42 [Clang][NeonEmitter] emit ret decl first for -Wdeclaration-after-statement * f3b89727716a [Driver][OpenBSD] Disable unwind tables on Arm * fe5c24e93754 [docs] Fix typo in tutorial * 99c0f85ef992 Re-commit: Driver: Don't warn on -mbranch-protection when linking * 0547ffef5d39 workflows: Consolidate tests to reduce the number of build jobs * bd8dc965cff1 Bump version to 14.0.1 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Enable ompt-tools and offloading-pluginKhem Raj2022-04-101-1/+3
| | | | | | Account for 64bit builtin atomic which are missing on mips Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add a patch to fix llvm-objdumpKhem Raj2022-03-262-0/+136
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Exclude powerpcKhem Raj2022-03-251-0/+1
| | | | | | | ppc is not yet supported by openmp see https://github.com/llvm/llvm-project/blob/main/openmp/runtime/cmake/LibompGetArchitecture.cmake#L16 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-config: Set YOCTO_ALTERNATE_LIBDIR and YOCTO_ALTERNATE_EXE_PATHKhem Raj2022-03-241-3/+2
| | | | | | If they are set by recipe in env, respect that Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add env override for libdirKhem Raj2022-03-2438-70/+102
| | | | | | | | | | | | | 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>
* libcxx: Drop duplicate setting of LLVM_LIBDIR_SUFFIXKhem Raj2022-03-241-2/+0
| | | | | | LLVM_LIBDIR_SUFFIX is already computed fine in clang.inc Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-project-source: Emit all default MULTILIB_GLOBAL_VARIANTSKhem Raj2022-03-181-2/+3
| | | | | | | | | | This ensures that signature of do_patch does not change between multilib and non-multilib builds of clang-native, this essentially hardcodes the multilib variants to lib32 lib64 libx32 which is 99.9% usecase, if you fall into 0.1% then go ahead and modify MULTILIB_VARIANTS in a bbappend file and it will be fine. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 14.0.0 RC4Khem Raj2022-03-131-1/+1
| | | | | | | | | | | | | Brings in these changes * 69ba522c58d0 [Hexagon] Fix crash with shuffle_vector of v128f16 * ac3398a0b003 Revert "[CMake] Include runtimes test suites in check-all" * df2fcea78fb8 Revert "Revert "Revert "[release] Use the Bootstrapping build for building LLVM releases""" * 893b864cb855 Revert "GCC ABI Compatibility: Preserve alignment of non-pod members in packed structs" * a9415df334f0 Revert "Revert "[release] Use the Bootstrapping build for building LLVM releases"" * e54a7bf0c0f1 [CMake] Include runtimes test suites in check-all Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lldb: Disable builds for ppc32Khem Raj2022-03-101-0/+1
| | | | | | | | ppc32 build fails, disable for now NativeThreadLinux.cpp:(.text._ZN12lldb_private13process_linux17NativeThreadLinuxC2ERNS0_18NativeProcessLinuxEy+0x84): undefined reference to `lldb_private::process_linux::NativeRegisterContextLinux::CreateHostNativeRegisterContextLinux(lldb_private::ArchSpec const&, lldb_private::process_linux::NativeThreadLinux&)' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on 14.xKhem Raj2022-03-1038-88/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0338-98/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-2438-41/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: Update to latest 14.xKhem Raj2022-02-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 42a797ef011b [ELF] Fix .strtab corruption when a symbol name is empty * 4dc3cb8e3255 ReleaseNotes: add BOLT subsection * 192d9680c1b1 [RISCV] add the MC layer support of Zfinx extension * 1e348e6042fc [OpenCL] Guard atomic_double with cl_khr_int64_* * 880717cc801d clang-analyzer plugins require LLVM_ENABLE_PLUGINS also * 9bc22aa50780 [OpenMP][CUDA] Refine the logic to determine grid size * ecdd25c86511 [Debuginfod] [Symbolizer] Break debuginfod out of libLLVM. * b0ae8076cf4c [SDAG] enable binop identity constant folds for fmul/fdiv * 6311bae1b424 [X86] Add test cases for fmul/fdiv with select. * 812894f74a8a [runtimes] Move warning messages for FOO_SYSROOT & friends above their default value * c561bf0daa95 [runtimes] Add release note for deprecation of FOO_SYSROOT & friends * 8b10e0a84047 [runtimes] Deprecate FOO_SYSROOT & friends * 89309e187631 [lld] One more formatting fix for the release notes * 9e1f13d14e19 [lld] Fix RST formatting in release notes * 5264342c242b [Docs][OpenCL] Update OpenCL 3.0 status in docs. * e8712accba11 [Docs][OpenCL] Release 14 notes. * b54c95790b8a [Docs] Release 14 notes for SPIR-V in clang. * fc2dbf90d12a [libc++] Mark test as unsupported with apple-clang * edf64474d662 [ELF][PPC64] Fix assertion failure for branches to hidden undefined weak for -no-pie * 2fc17e919f0c [libc++] Temporarily silence failing debug mode test * dfc24b8522ba [libc++][NFC] Work around false positive ODR violations from ASan. * 199e05e34bb8 [libc++] Add missing UNSUPPORTED for the has-no-incomplete-ranges test * 7fdca71be63a [libc++] Guard much of std::ranges under _LIBCPP_HAS_NO_INCOMPLETE_RANGES. * e493f08f8222 [lld-macho] Fill out release notes for 14.x * ea97fc6b564e [OpenMP][FIX] The `llvm.amdgcn.s.barrier` is actually not aligned * 062111fe8073 InferAddressSpaces: Fix assert on inferred source for inttoptr/ptrtoint Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Provide cross names for common llvm binutilsKhem Raj2022-02-203-8/+20
| | | | | | These provide the cross tool prefixed with CROSS_COMPILE tuples Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Install unwind_itanium.h and unwind_arm_ehabi.hKhem Raj2022-02-161-2/+4
| | | | | | | When building libunwind, install new headers which are refactored from unwind.h in clang 14.0.0 onwards Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to upcoming clang14 release branchKhem Raj2022-02-1645-672/+265
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 13.0.1-rc3Khem Raj2022-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in this uprev * 75e33f71c2da [X86] combineVectorHADDSUB - remove the broken HOP(x,x) merging code (PR51974) * 6349865a8f37 [CMake] Don't use -fno-semantic-interposition with Clang<=13 * b3dcd156472f [ARM] Define ComplexPatternFuncMutatesDAG * 1f1854ce0fe5 [Driver][test] Fix undefined-libs.cpp when CLANG_DEFAULT_UNWINDLIB is libunwind * fc043d8a256b Revert "[lld][CMake] Add LLD_DEFAULT_NOSTART_STOP_GC" * 5869ea6c6254 [sanitizer] msan build fix on non linux platforms * b9a243d1cac2 (tag: llvmorg-13.0.1-rc2) [Coroutines] Enhance symmetric transfer for constant CmpInst * 9d9efb1f67ff [lld][CMake] Add LLD_DEFAULT_NOSTART_STOP_GC * 52a400d8e4c4 [InlineCost] model calls to llvm.is.constant* more carefully * eaeb7dcf3249 ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to signal no callee pop. * eecd0f055baa Have lit preserve SOURCE_DATE_EPOCH * bfb1bd1b9906 [Clang][Sema] Avoid crashing for va_arg expressions with bool argument * 1ac6bb3c4dd4 [Clang][CFG] check children statements of asm goto * 12aaa8553f82 [InstCombine] Remove attributes after hoisting free above null check * 35df3f98639e [DIArgList] Re-unique after changing operands to fix non-determinism * 0f915e755eae [RegAllocFast] Fix nondeterminism in debuginfo generation * 33f7aa65f5d7 [DSE] Fix invalid removal of store instruction * 426297cce9d5 [DSE] Add test case showing bug PR52774. * 0d44201451f0 [MachineOutliner] Don't outline functions starting with PATCHABLE_FUNCTION_ENTER/FENTRL_CALL * 69fcfdedc505 [AArch64][GlobalISel] Fix an crash in RBS due to a new regclass being added. * d31f8cc6884b [AArch64] Avoid crashing on invalid -Wa,-march= values * 67b5bc26bde8 [DebugInfo] Check DIEnumerator bit width when comparing for equality Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nativesdk-clang-glue: delete spdx tasksAndres Beltran2022-01-121-0/+2
| | | | | | | | | | Extending poky's create-spdx class for SDKs results in a dependency loop: nativesdk-clang-glue.bb:do_create_spdx ->clang_git.bb:do_create_spdx -> clang-crosssdk_git.bb:do_create_spdx -> nativesdk-clang-glue.bb:do_create_spdx. Delete spdx tasks from nativesdk-clang-blue.bb Signed-off-by: Andres Beltran <abeltran@microsoft.com>
* clang-tools-extra: apply upstream patchSerikzhan Kazi2022-01-121-0/+31
| | | | | | | run-clang-tidy.py is being run on unique files only when using this patch Signed-off-by: Serikzhan Kazi <doze-tile-ruse-exit@mbition.io>
* clang: Update to latest 13.x relaseKhem Raj2021-12-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This brings in * 9468a0f95385 [PowerPC] Define XL-compatible macros only for AIX and Linux * ae24102617c9 [X86] Don't add implicit REP prefix to VIA PadLock xstore * c95753ff5c11 [NFC][X86] Add MC tests for all untested VIA PadLock instructions * d9f927f2cfe8 [sanitizer] Disable test incompartible with recert GLIBC * abc0cf92bb14 [sanitizer] Intercept lstat on Linux * b40f07b048c4 [msan] Add stat-family interceptors on Linux * 59289a837b00 [AA] Handle callbr instructions in alias analysis * 5b2990a6ff77 [ELF] #undef PPC to support GCC powerpc32 build * bdd28a2a138f [sanitizer] Don't test __pthread_mutex_lock with GLIBC 2.34 * 2c6c3e4b713b [asan] Fix "no matching function" on GCC * c1b51f098751 [msan] Disabled test failing on new GLIBC * 578e500fe5ba [Sparc] Create an error when `__builtin_longjmp` is used * cd4ebb2918ae [LazyCallGraph] Skip blockaddresses * d4a57c84834c workflows: Update workaround for lldb on Mac OS * d96358a28193 [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures * c446ac46746e [Passes] Fix relative lookup table converter pass * 9fb79e6940b2 [PowerPC] Handle base load with reservation mnemonic * e68f640deecc [ELF][PPC32] Make R_PPC32_PLTREL retain .got * 87ca22cba2fa [Support] Attempt to fix deadlock in ThreadGroup * d904698b53e4 [Analysis] Ignore casts and unary ops for uninitialized values * 5932c004778c [MC][ELF] Fix accepting abbreviated form with Type change * 29276490d13c [MC][ELF] Do not error on parsing .debug_* section directive for MIPS * 724ed207b760 [ELF] Hint -z nostart-stop-gc for __start_ undefined references Signed-off-by: Khem Raj <raj.khem@gmail.com>