- Dec 05, 2022
-
-
Benjamin Kramer authored
-
Benjamin Kramer authored
const references only for now, we can add overloads to have a mutable or movable `second` if the need arises.
-
- Dec 04, 2022
-
-
Benjamin Kramer authored
Use the uniform structured bindings interface where possible. NFCI.
-
Krzysztof Parzyszek authored
-
Benjamin Kramer authored
Apart from simplifying code, this has the advantage of making the interface between std::pair and PointerIntPair more uniform.
-
John McIver authored
* Add end-of-line check to load instructions
-
John McIver authored
* Add check to unnamed portion of nontemporal attribute * Add end-of-line check to load instructions
-
Florian Hahn authored
The recipe only computes the inductions steps using its operands. It does neither read nor write memory. Split of from D133760.
-
Florian Hahn authored
-
Kevin Sala authored
This patch prepares the PluginInterface for the new AMDGPU NextGen plugin. Differential Revision: https://reviews.llvm.org/D139263
-
Florian Hahn authored
This makes the test more robust with respect to value numbering which will change with future changes.
-
Kai Sasaki authored
Support affine.parallel in the index set analysis. It allows us to do dependence analysis containing affine.parallel in addition to affine.for and affine.if. This change only supports the constant lower/upper bound in affine.parallel. Other complicated affine map bounds will be supported in further commits. See https://github.com/llvm/llvm-project/issues/57327 Reviewed By: bondhugula Differential Revision: https://reviews.llvm.org/D136056
-
Tomas Matheson authored
This reverts commit 6272f87b.
-
Alexey Lapshin authored
Currently, DWARFLinker receives kind of accel tables as predefined sets: ``` Apple, ///< .apple_names, .apple_namespaces, .apple_types, .apple_objc. Dwarf, ///< DWARF v5 .debug_names. Default, ///< Dwarf for DWARF5 or later, Apple otherwise. Pub, ///< .debug_pubnames, .debug_pubtypes ``` This patch removes implicit sets of tables(Default, Dwarf) and allows to ask for several sets: ``` Apple, ///< .apple_names, .apple_namespaces, .apple_types, .apple_objc. Pub, ///< .debug_pubnames, .debug_pubtypes DebugNames ///< .debug_names. ``` It allows seamlessness adding more accel tables in the future: .gdb_index, .debug_cu_index... Doing things that way, DWARFLinker will be independent of consumers' requirements. f.e. dsymutil and llvm-dwarfutil may have different variants for Default set (so, instead of implementing these differencies inside DWARFLinker it could be implemented in the corresponding module). Differential Revision: https://reviews.llvm.org/D132371
-
Fangrui Song authored
-
serge-sans-paille authored
Fix #59321
-
Kazu Hirata authored
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
-
Kazu Hirata authored
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
-
Kazu Hirata authored
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
-
Kazu Hirata authored
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
-
Joe Loser authored
`s/librar/library` in `llvm_add_library`. Differential Revision: https://reviews.llvm.org/D139265
-
Joe Loser authored
Querying the type trait is something that can be done at compile time. So, replace the runtime `if` with `if constexpr`. Differential Revision: https://reviews.llvm.org/D139264
-
Peter Klausler authored
Modules, submodules, main programs, and BLOCK DATA subprograms have names that cannot be used within their scope, so we allow those names to be used for other entities in the scope. This might not be entirely conformant with the language standard, so warn about it. Differential Revision: https://reviews.llvm.org/D139146
-
Peter Klausler authored
The TARGET= argument of the ASSOCIATED() intrinsic function must be a valid pointer assignment statement target. Ensure that it does not contain a vector subscript or any coindexing, either of which would imply a data copy into temporary storage. Differential Revision: https://reviews.llvm.org/D139145
-
Peter Klausler authored
Emit a portability warning about usage of a deprecated feature when an I/O data transfer statement uses a scalar integer variable as an assigned format. Differential Revision: https://reviews.llvm.org/D139144
-
Peter Klausler authored
19.6.8 forbids using an INTENT(IN) pointer dummy argument in a pointer association context, and associated such a pointer with a dummy argument of INTENT(IN OUT) or INTENT(OUT) is a circumstance that needs to be caught as an error. Differential Revision: https://reviews.llvm.org/D139138
-
Joe Loser authored
`getKey` and `getHash` use mutually exclusive overloads based on existence of methods to determine how to compute get the key or hash, respectively. This is a bit verbose with `std::enable_if_t`. Simplify it a bit by using `if constexpr` directly. As an added bonus, this is slightly quicker to compile. Differential Revision: https://reviews.llvm.org/D139245
-
Peter Klausler authored
Check most of the requiremens of constraint C1577 for statement functions. The restrictions that prevent recursion are hard errors; the others seem to be benign legacies and are caught as portability warnings. Differential Revision: https://reviews.llvm.org/D139136
-
Alexander Kornienko authored
This was found by clang-tidy bugprone-undelegated-constructor check. Was there since the very first commit back in 2016. Reviewed By: clayborg, labath, srhines Differential Revision: https://reviews.llvm.org/D114111
-
Peter Klausler authored
When a submodule defines a module procedure whose interface was declared in an ancestor (sub)module, don't repeat the definition of that interface in the submodule's *.mod file output. Differential Revision: https://reviews.llvm.org/D139132
-
Kevin Sala authored
This patch removes the classes GenericStreamManagerTy and GenericEventManagerTy from the PluginInterface header. Differential Revision: https://reviews.llvm.org/D138769
-
Kevin Sala authored
This patch modifies the PluginInterface to define functions for initializing and deinitializing GenericPluginTy instances instead of using the constructor and destructor. This way, we can return errors from these functions. Also, it defines some functions that each plugin should implement for creating plugin-specific objects. This patch prepares the PluginInterface for the new AMDGPU NextGen plugin. Differential Revision: https://reviews.llvm.org/D138625
-
Krzysztof Parzyszek authored
-
Kevin Sala authored
List of fixes: - omptarget_device_environment symbol is not mandatory in device images - Do not synchronize in ~AsyncInfoWrapperTy() if the async info's queue is null - GenericDeviceResourceRef's create() and destroy() require the device as parameter Differential Revision: https://reviews.llvm.org/D138619
-
Kevin Sala authored
The OpenMP target's NextGen plugins retrieve symbol information in the ELF image (i.e., address and size) through the ELF section and ELF symbol objects. However, the images of CUDA programs compute the address differently from the images of AMDGPU programs: - Address for CUDA symbols: image begin + section's offset + symbol's st_value - Address for AMDGPU symbols: image + begin + symbol's st_value Differential Revision: https://reviews.llvm.org/D138604
-
Peter Klausler authored
When a character-valued function is passed as an actual argument, and both the actual function and the dummy argument have explicit result lengths, take them into account when testing for compatibility. Differential Revision: https://reviews.llvm.org/D139129
-
LLVM GN Syncbot authored
-
Fangrui Song authored
-
Fangrui Song authored
and change a few referenced Basic and llvm/lib/WindowsDriver API
-
Jonas Paulsson authored
Init captures added in processBlock() to avoid capturing structured bindings, which caused the build problems (with clang). RISCV has this disabled for now until problems relating to post RA pseudo expansions are resolved.
-