- May 31, 2023
-
-
Jan Svoboda authored
This patch changes the type of `Preprocessor::MainFileDir` from `const DirectoryEntry *` to `Optional<DirectoryEntryRef>` in order to remove some calls to the deprecated `DirectoryEntry::getName()`. Depends on D127658. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127660
-
Jan Svoboda authored
This patch replaces some calls to the deprecated `DirectoryEntry::getName()` with calls to `DirectoryEntryRef::getName()` in SemaCodeComplete.cpp. Depends on D127654. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127658
-
Jan Svoboda authored
This patch changes the type of `Module::Directory` from `const DirectoryEntry *` to (essentially) `Optional<DirectoryEntryRef>` in order to remove uses of the deprecated `DirectoryEntry::getName()`. Depends on D127651. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127654
-
Jan Svoboda authored
This patch changes the argument type of `ModuleMap::parseModuleMapFile()` from `const DirectoryEntry *` to `DirectoryEntryRef` in order to remove the deprecated uses of `DirectoryEntry::getName()`. Depends on D127648. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127651
-
Jan Svoboda authored
This patch changes the argument type of `ModuleMap::inferFrameworkModule()` from `const DirectoryEntry *` to `DirectoryEntryRef` in order to remove the deprecated uses of `DirectoryEntry::getName()`. Depends on D127647. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127648
-
Jan Svoboda authored
This patch changes the return/argument types of `ModuleMap::{load,lookup}ModuleMap()` from `const FileEntry *` to `FileEntryRef` in order to remove uses of the deprecated `DirectoryEntry::getName()`. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D127647 -
Alex Langford authored
The strings "DarwinLog" and "log" probably do not need to be in the ConstString StringPool. We still create ConstStrings from them in some places (for now) but that's because we don't have an implicit constructor to convert a StringRef to a ConstString. Differential Revision: https://reviews.llvm.org/D151599
-
Nitin John Raj authored
This patch adds an IncomingValueHandler and IncomingValueAssigner, and implements minimal support for lowering formal arguments according to the RISC-V calling convention. Simple non-aggregate integer and pointer types are supported. In the future, we must correctly handle byval and sret pointer arguments, and instances where the number of arguments exceeds the number of registers. Coauthored By: lewis-revill Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D74977
-
Alex Langford authored
This doesn't need to be in the ConstString StringPool. There's little benefit to having these be unique, and we don't need fast comparisons on them. Differential Revision: https://reviews.llvm.org/D151524
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D151744
-
Kazu Hirata authored
The last use was removed by: commit 6625680a Author: Hans Wennborg <hans@chromium.org> Date: Tue Feb 2 14:10:26 2021 +0100 Differential Revision: https://reviews.llvm.org/D151609
-
Alex Langford authored
- Remove unused parameter `valobj` (I checked downstream, not even swift is using it). - Return a std::pair<StringRef, StringRef> insted of having 2 out parameter strings. - Remove the use of ConstStrings. This change was primarily mechanical except in `ObjCLanguage::GetFormatterPrefixSuffix`. To keep this fast, we construct an llvm::StringMap<std::pair<StringRef, StringRef>> so that we can look things up quickly. There is some amount of cost to setting up the map the first time it is called, but subsequent lookups should be as fast as a hash + string comparison (the cost of looking up something in an llvm::StringMap). Differential Revision: https://reviews.llvm.org/D151603
-
Louis Dionne authored
This is an attempt to reduce the time taken by the Bootstrapping build job and the Clang CI job that builds the compiler from scratch. Differential Revision: https://reviews.llvm.org/D150908
-
Florian Hahn authored
-
Martin Storsjö authored
This uses the same logic as in c2b256a9; we can't check defined(_MSC_VER) invoked as %clang_cc1, therefore check for !defined(__MINGW32__) instead. This fixes the same issue in a new testcase that was added after this issue was fixed last time in c2b256a9. Differential Revision: https://reviews.llvm.org/D151661
-
Fangrui Song authored
-
Petr Hosek authored
This reverts commit 627d5e16.
-
Petr Hosek authored
The existing BOLT install targets are broken on Windows becase they don't properly handle output extension. Rather than reimplementing this logic in BOLT, reuse the existing LLVM macros which already handle this aspect correctly. Differential Revision: https://reviews.llvm.org/D151595
-
Alex Brachet authored
Differential Revision: https://reviews.llvm.org/D151502
-
Fangrui Song authored
clang/lib/Driver/ToolChains/Clang.cpp has a lot of fragments like the following: ``` if (const Arg *A = Args.getLastArg(...)) { if (Triple is xxx) A->render(Args, CmdArgs); else D.Diag(diag::err_drv_unsupported_opt_for_target) << ...; } ``` The problem is more apparent with a recent surge of AIX-specific options. Introduce the TargetSpecific flag so that we can move the target-specific options to ToolChains/*.cpp and ToolChains/Arch/*.cpp and overload the warn_drv_unused_argument mechanism to give an err_drv_unsupported_opt_for_target error. Migrate -march=/-mcpu= and some AIX-specific options to use this simplified pattern. Reviewed By: jansvoboda11 Differential Revision: https://reviews.llvm.org/D151590 -
Alex Brachet authored
Differential Revision: https://reviews.llvm.org/D151679
-
Tue Ly authored
Add log, log2, log1p, log10 RISCV64 entrypoints. Reviewed By: michaelrj, sivachandra Differential Revision: https://reviews.llvm.org/D151674
-
LLVM GN Syncbot authored
-
Erick Velez authored
Refactor SerializerBase and SymbolGraphSerializer to use a visitor pattern described by the CRTP. Reviewed By: dang Differential Revision: https://reviews.llvm.org/D151477
-
Fangrui Song authored
-
Mats Petersson authored
This patch makes more than 2D arrays work, with a fix for the way that loop index is calculated. Removing the restriction of number of dimensions. This also changes the way that the actual index is calculated, such that the stride is used rather than the extent of the previous dimension. Some tests failed without fixing this - this was likely a latent bug in the 2D version too, but found in a test using 3D arrays, so wouldn't have been found with 2D only. This introduces a division on the index calculation - however it should be a nice and constant value allowing a shift to be used to actually divide - or otherwise removed by using other methods to calculate the result. In analysing code generated with optimisation at -O3, there are no divides produced. Some minor refactoring to avoid repeatedly asking for the "rank" of the array being worked on. This improves some of the SPEC-2017 ROMS code, in the same way as the limited 2D array improvements - less overhead spent calculating array indices in the inner-most loop and better use of vector-instructions. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D151140
-
Philip Reames authored
Add another form of the same pattern (as_rotate tests), and add coverage for a couple corner cases I got wrong at first in an upcoming rewrite.
-
Deniz Evrenci authored
All exceptions thrown in coroutine bodies are caught and unhandled_exception member of the coroutine promise type is called. In accordance with the existing rules of diagnostics related to exceptions thrown in functions marked noexcept, even if the promise type's constructor, get_return_object, or unhandled_exception throws, diagnostics should not be emitted. Fixes #61905. Reviewed By: PiotrZSL, ChuanqiXu Differential Revision: https://reviews.llvm.org/D147417
-
Artem Belevich authored
The file must go under cuda_wrappers/bits/ directly, but was by mistake copied directly into cuda_wrappers/ during installation. Differential Revision: https://reviews.llvm.org/D151503
-
Mehdi Amini authored
-
Philip Reames authored
-
Philip Reames authored
-
Paul Robinson authored
Differential Revision: https://reviews.llvm.org/D150114
-
Ben Hamilton authored
This adds to the ObjC language guesser a few more common macros used in ObjC headers. These can help distinguish ObjC headers which otherwise lack ObjC types from C++ headers. Contributed by danblakemore. Tested: New tests included. Ran unit tests with: ``` % cmake -S llvm -B build -G Ninja && \ ninja -C build FormatTests && \ ./build/tools/clang/unittests/Format/FormatTests --gtest_filter="*FormatTestObjC*" (snip) [----------] 24 tests from FormatTestObjC (265 ms total) [----------] Global test environment tear-down [==========] 26 tests from 2 test suites ran. (270 ms total) [ PASSED ] 26 tests. ``` Reviewed By: MyDeveloperDay Differential Revision: https://reviews.llvm.org/D151578 -
Peter Steinfeld authored
The title says it all. Differential Revision: https://reviews.llvm.org/D151712
-
Craig Topper authored
-
max authored
I mistakenly put this in `mlir/CAPI/Support.h` at some point during the flurry of refactoring of `TypeCaster`s but as @jpienaar rightly pointed out, it doesn't belong there. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D151669
-
Mark de Wever authored
Windows' libc, like some other libc implementations do not work as specified for %Y and %y. This uses the fixes used for other libc implementations. The work was part of D150593. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D151612
-
Mark de Wever authored
These have been deprecated since their initial version in libc++. It seems they were never properly marked as deprecated. Discovered while working on D151223. Reviewed By: #libc, ldionne, philnik Differential Revision: https://reviews.llvm.org/D151474
-
Marco Elver authored
Fix the Fuchsia build. asan_interceptors_memintrinsics.cpp should not include any interceptors on Fuchsia. Reported-by: haowei Link: https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8779679021892159153/+/u/clang/build/stdout
-