| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
Use clang to do native builds as well
this ensures that concerned dependencies are
not asking for different runtime
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This class is meant to make it easy to use clang for doing native
builds. Some packages e.g. chromium, rust etc. have specific needs when
using clang. clang built by this layer is ineherently a cross compiler
and its using same compiler for doing native and cross builds for
packages. This class should be added to recipes which intend to use
clanf to do the native builds as well.
inherit clang-native
is all you need in the recipe namespace via the .bb or .bbappend file
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
Changes are here [1]
[1] https://github.com/iovisor/bcc/releases/tag/v0.25.0
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
in debug info
Clang does not remap the src filename in asm files debug info when using
-fdebug-prefix-map but gcc does [1], however, there is an option to help
reproducibility with clang namely ffile-compilation-dir to remove the
source directory from path. use it globally with clang compiler
[1] https://github.com/llvm/llvm-project/issues/56609
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
|
|
|
|
| |
"master" branch in SPIRV-LLVM-Translator has been renamed to "main"
see https://github.com/KhronosGroup/SPIRV-LLVM-Translator/commit/6db0f312c918bba14a731822b38a18726bb4ce09
Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently bcc builds against a vendored copy of libbpf. This causes
problems for bpftrace which is built against bcc and the system libbpf.
The resulting version skew between the vendored and system versions of
libbpf resulting in a SEGV whenever bpftrace is used.
Although --help and -l (list probe points) work OK that is because they do
not actually use BPF! Anything that does use BPF will crash immediately,
including bpftrace --info and simple one-liners such as:
~# bpftrace -e 't:raw_syscalls:sys_exit { printf("%s", comm); }'
Attaching 1 probe...
Segmentation fault
Note that this issue is very closely related to similar problems
compiling bpftrace against mixed headers from the two libbpf versions.
Fixes: https://github.com/iovisor/bpftrace/issues/2173
Fixes: bb3e56b06f9d ("bpftrace: Fix build with new libbpf")
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
De-vendoring libbpf resolves a SEGV everytime we run bpftrace.
Unfortunately it is not currently possible to de-vendor libbpf because
bcc does not build.
Fix this with brute force and ignorance... and in a seperate patch so
this can be treated as an explanation of the problem and ripped out in
favour of the right fix.
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Fixes
git/src/btf.cpp:651:10: error: no matching function for call to 'btf_dump__new'
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
|
|
|
|
| |
Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
|
|
|
|
|
|
|
|
|
|
|
| |
It does not compile with altivec
TOPDIR/build/tmp/work/ppc7400-yoe-linux-musl/opencv/4.5.5-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h:1345:32: error: use of undeclared identifier 'vec_sqrt'; did you mean 'vec_rsqrt'?
BF16_TO_F32_UNARY_OP_WRAPPER(vec_sqrt, a);
^~~~~~~~
vec_rsqrt
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
qemu crashes when using clang, this is not a complete fix either but its
a marker to rememeber the problem.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
base_libdir may vary e.g. when using usrmerge feature
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This was disabled for musl issue which is not related to altivec
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
The build issue is only seen on ppc32
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
clang fails to compile it e.g.
unsupported bss-plt -fPIC ifunc mmio_write64_be
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
They need to be explicitly exported
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
Account for 64bit builtin atomic which are missing on mips
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Configure test crashes while using clang on riscv
aarch64 needs to use gcc until [1] is merged
[1] https://lists.openembedded.org/g/openembedded-core/message/164192
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
with clang-14 more packages are now buildable from the exlcusion list,
therefore enable clang for them.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
exporting them changes signatures of the tasks for all recipes
includeing native ones, so when meta-clang is not used it ends up
building all native recipes too. Defining these variables is good
enought for clang to see them in do_compile shell for target recipes
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
openmp is not ported for ppc32
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
These variables are used during target package compiles in packages
which user llvm-config e.g. libclc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
If they are set by recipe in env, respect that
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
LLVM_LIBDIR_SUFFIX is already computed fine in clang.inc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
This ensures that multilib prefix is respected in dependencies and can
be handled when distro enables multilib
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
When RUNTIME=="llvm" the libcxx entry will be added in a separate if clause
right after this. We don't need it twice.
Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
clang14 crashes compiling 1.44 version
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|