- Jan 19, 2024
-
-
Guillaume Chatelet authored
-
Timm Baeder authored
Allocate storage for them, initialize the first member with the given value and the second member to 0.
-
Guillaume Chatelet authored
GCC complains about "type qualifiers ignored on cast result type". Upon investigation the correct fix was to remove all `volatile` and use the `-frounding-math` option.
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Kazu Hirata authored
-
denglesberg-splunk authored
As of the Bazel 6.x series, there is no difference between the `exec_tools` and `tools`. Bazel 7 removes the `exec_tools` attribute entirely. This commit updates to use the cannonical attribute name to allow building `clang-tidy``with bazel 7.0.0, though it does not change the default bazel version which remains at 6.1.2. See also https://github.com/bazelbuild/bazel/issues/19132 for more information.
-
Martin Storsjö authored
For Windows, the compiler-rt profile library contains a polyfill reimplementation of the mmap family of functions. Previously, the runtime library exposed those symbols like, "mmap", in the user symbol namespace. This could cause misdetections by configure scripts that check for the "mmap" function just by linking, without including headers. Add a prefix on the symbols, and make an undeclared function static. This fixes such an issue reported at https://github.com/mstorsjo/llvm-mingw/issues/390.
-
Chuanqi Xu authored
Given clang18 is going to be released, this patch collects the modules related change to release notes to make users have a clear vision for modules.
-
Jason Molenda authored
PlatformDarwinKernel::GetSharedModule, which can find a kernel or kext from a local filesystem scan, needed a little cleanup. The method which finds kernels was (1) not looking for the SymbolFileSpec when creating a Module, and (2) adding that newly created Module to a Target, which GetSharedModule should not be doing - after auditing many other subclass implementations of this method, I haven't found any others doing it. Platform::GetSharedModule didn't have a headerdoc so it took a little work to piece together the intended behaviors. This is addressing a bug where PlatformDarwinKernel::GetSharedModuleKernel would find the ObjectFile for a kernel, create a Module, and add it to the Target. Then up in DynamicLoaderDarwinKernel, it would check if the Module had a SymbolFile FileSpec, and because it did not, it would do its own search for a binary & dSYM, find them, and then add that to the Target. Now we have two copies of the Module in the Target, one with a dSYM and the other without, and only one of them has its load addresses set. GetSharedModule should not be adding binaries to the Target, and it should set the SymbolFile FileSpec when it is creating the Module. rdar://120895951
-
Utkarsh Saxena authored
Fixes: https://github.com/llvm/llvm-project/issues/78290 See the bug for more context. ```cpp Gen ACoroutine() { if constexpr (0) // remove it make clang compile. co_return; co_await Gen{}; } ``` We miss symbol of ctor of promise_type if the first coroutine statement happens to be inside the disabled branch of `if constexpr`. This happens because the promise object is built when we see the first coroutine statement which is present in `ExpressionEvaluationContext::DiscardedStatement` context due to `if constexpr (0)`. This makes clang believe that the promise constructor is only odr-used and not really "used". The expr evaluation context for the coroutine body should not be related to the context in which the first coroutine statement appears. We override the context to `PotentiallyEvaluated`. --------- Co-authored-by:
cor3ntin <corentinjabot@gmail.com>
-
Craig Topper authored
Drop -menable-experimenta-extensions where it isn't needed. This file has sections for non-experimental and experimental extensions, but we keep forgetting to move things when we change the extension status.
-
Craig Topper authored
[RISCV] Don't look through EXTRACT_ELEMENT in lowerScalarInsert if the element types are different. (#78668) If the element type of the vector we're extracting from doesn't match the type we're inserting into, we can't directly insert or extract the subvector.
-
Billy Zhu authored
Currently ODS generates `populateDefaultAttrs` or `populateDefaultProperties` based on whether the dialect opted into usePropertiesForAttributes. But since individual ops might get opted into using properties (as long as it has one property), it should actually just check whether the op itself uses properties. Otherwise `populateDefaultAttrs` will overwrite existing attrs inside properties when creating an op. Understandably this becomes moot once everything switches over to using properties, but this fixes it for now. This PR makes ODS generate `populateDefaultProperties` as long as the op itself uses properties.
-
Petr Hosek authored
This header first appeared in 4.4BSD and is provided by a number of C libraries including Newlib. Several of our embedded projects use this header and so to make LLVM libc a drop-in replacement, we need to provide it as well. For the initial commit, we only implement singly linked variants (SLIST and STAILQ). The doubly linked variants (LIST, TAILQ and CIRCLEQ) can be implemented in the future as needed.
-
Valentin Clement (バレンタイン クレメン) authored
routine, data, parallel, serial, kernels and loop construct all support the device_type clause. This clause takes a list of device_type. Previously the lowering code was assuming that the list s a single item. This PR updates the lowering to handle any number of device_types.
-
Kareem Ergawy authored
This reverts commit 99cae9a4. Temporarily until I reproduce and fix a linker issue: ``` FAILED: tools/flang/unittests/Frontend/FlangFrontendTests ... /usr/bin/ld: tools/flang/unittests/Frontend/CMakeFiles/FlangFrontendTests.dir/CodeGenActionTest.cpp.o: undefined reference to symbol '_ZN4llvm11LLVMContextC1Ev' /usr/bin/ld: /work1/omp-nightly/build/git/trunk18.0/build/llvm-project/lib/libLLVMCore.so.18git: error adding symbols: DSO missing from command line ```
-
Chen Zheng authored
-
Christudasan Devadasan authored
-
Amir Ayupov authored
Fix the bug where merge-fdata unconditionally outputs boltedcollection line, regardless of whether input files have it set. Test Plan: Added bolt/test/X86/merge-fdata-nobat-mode.test which fails without this fix.
-
Amir Ayupov authored
This reverts commit 82bc33ea. Accidentally pushed unrelated changes.
-
Amir Ayupov authored
Fix the bug where merge-fdata unconditionally outputs boltedcollection line, regardless of whether input files have it set. Test Plan: Added bolt/test/X86/merge-fdata-nobat-mode.test which fails without this fix.
-
Younan Zhang authored
Builtin templates e.g. `__make_integer_seq`, `__type_pack_element` are such that they don't have alias *Decls*. [D133262](https://reviews.llvm.org/D133262) marked these as alias templates, resulting in an attempt to collect their null "using" Decls within our `TargetFinder`. This fixes https://github.com/clangd/clangd/issues/1906.
-
yonillasky authored
`ResumeIndex` isn't part of the frame struct header, so it necessarily appears after the promise. Co-authored-by:Yoni Lavi <yoni.lavi@nextsilicon.com>
-
Philip Reames authored
Previously, we'd keyed the table by the vector type, but we were actually assigning the same cost for all the types with a common element type. Unless we'd missed an entry, this means that effectively we were performing an SEW lookup. Restructure the table to make this SEW dependence more explicit, and in the process greatly reduce the size of the table.
-
Alexey Bataev authored
stores/insertelement instructions, NFC.
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Vitaly Buka authored
Reverts llvm/llvm-project#75882 To recover build bots : https://lab.llvm.org/buildbot/#/builders/239/builds/5361 https://lab.llvm.org/buildbot/#/builders/168/builds/18126
-
Piyou Chen authored
This patch make vsetvl insertion pass could track the number of inserted/removed vsetvl instruction from `-stats` option.
-
Luke Lau authored
This adds minimal support for 7 new unprivileged extensions that were defined as a part of the RISC-V Profiles specification here: https://github.com/riscv/riscv-profiles/blob/main/profiles.adoc#7-new-isa-extensions * Ziccif: Main memory supports instruction fetch with atomicity requirement * Ziccrse: Main memory supports forward progress on LR/SC sequences * Ziccamoa: Main memory supports all atomics in A * Zicclsm: Main memory supports misaligned loads/stores * Za64rs: Reservation set size of 64 bytes * Za128rs: Reservation set size of 128 bytes * Zic64b: Cache block size isf 64 bytes As stated in the specification, these extensions don't add any new features but describe existing features. So this patch only adds parsing and subtarget features.
-
Jacek Caban authored
-
Daniel Thornburgh authored
These cause test build failures on Windows. This reverts the following commits: 57ca7484 d06ae33e
-
Fangrui Song authored
This ports msan https://reviews.llvm.org/D14795 to dfsan. dfsan, like msan, clears shadow for globals in a newly opened DSO in case the DSO occupies the address of a previously labeled/poisoned area. The operation should not happen on the main executable. In addition, for a DT_EXEC executable, l_addr is zero and will lead to a null pointer dereference in ForEachMappedRegion.
-
Sam Clegg authored
See lld/ELF/Config.h
-