- Apr 22, 2024
-
-
Krzysztof Parzyszek authored
-
Krzysztof Parzyszek authored
-
Haojian Wu authored
The argument types are not modeled as children of TypeTraitExpr, therefore they are not dumped with the default implementation. Dumping them is really useful for ad-hoc debugging, context #89358
-
Zequan Wu authored
This removes `m_forward_decl_die_to_compiler_type` which is a map from `const DWARFDebugInfoEntry *` to `lldb::opaque_compiler_type_t`. This map is currently used in `DWARFASTParserClang::ParseEnum` and `DWARFASTParserClang::ParseStructureLikeDIE` to avoid creating duplicate CompilerType for the specific DIE. But before entering these two functions in `DWARFASTParserClang::ParseTypeFromDWARF`, we already checked with `SymbolFileDWARF::GetDIEToType()` if we have a Type created from this DIE to avoid trying to parse the same DIE twice. So, this map is unnecessary and not useful.
-
Krystian Stasiowski authored
#84050 resolves class member access expressions naming members of the current instantiation prior to instantiation. In testing, it has revealed a mem-initializer in the move constructor of `invocable_with_telemetry` that uses an unparenthesized comma expression to initialize a non-static data member of pointer type. This patch fixes it.
-
Nico Weber authored
-
Alexey Bataev authored
Need to check all possible entries, before trying looking for the minbitwidth in the user node. Otherwise we may incorrectly get signedness info.
-
Timm Bäder authored
-
Timm Bäder authored
The assertion doesn't work if there are multiple declarations for a variable involved.
-
Timm Bäder authored
Move the iterator declarations into the if statements and return std::nullopt explicitly.
-
Alex Zinenko authored
Some docs were emitted into the wrong location (Polynomial/ instead of Dialect/). Furthermore, `-gen-dialect-docs` subsumes `-gen-attr/typedef-docs` so the latter are not required. Add a top-level entry that includes both other files in a proper order.
-
Leandro Lupori authored
COMMON block names must be declared in the same scoping unit in which the OpenMP directive or clause appears, but OpenMP constructs must not be considered as scoping units. Instead, consider only program units and block constructs as such.
-
Florian Hahn authored
As suggested in https://github.com/llvm/llvm-project/pull/88039, add extra documentation for reasoning in isDependent. PR: https://github.com/llvm/llvm-project/pull/89381
-
Shilei Tian authored
-
David Green authored
-
Phoebe Wang authored
Failed on main trunk: https://godbolt.org/z/edWMz8chE
-
Steven Varoumas authored
This transformation, inspired by what is done in hoist_redundant_transfers, hoists pairs of extract/broadcast operations out of scf.for loops. It changes a loop of the form: ``` %res = scf.for _ = _ to _ step _ iter_args(%iarg = %v) -> (t1) { %e = vector.extract %iarg : t1 to t2 %u = "some_use"(%e) : (t2) -> t2 %b = vector.broadcast %u : t2 to t1 scf.yield %b : t1 } ``` into the following: ``` %e = vector.extract %v: t1 to t2 %res' = scf.for _ = _ to _ step _ iter_args(%iarg = %e) -> (t2) { %u' = "some_use"(%iarg) : (t2) -> t2 scf.yield %u' : t2 } %res = vector.broadcast %res' : t2 to t1 ``` -
Oleksandr "Alex" Zinenko authored
-
Louis Dionne authored
The modulemap file is not generated anymore, so it's just part of our list of includes and gets installed like every other header. We don't need a special step to install it anymore. This was overlooked when I removed the generation of the modulemap file.
-
Louis Dionne authored
We can instead generate it on-the-fly when we install the headers. This reduces the amount of boilerplate we have to re-generate whenever we add, remove or relocate header files. Fixes #88529
-
Jay Foad authored
-
Timm Bäder authored
-
Timm Bäder authored
-
Stephen Tozer authored
Verify-uselistorder wants to take some input IR and verify that the uselist order is stable after roundtripping to bitcode and assembly. This is disrupted if the file is converted between the new and old debug info formats after parsing - while there's no functional difference, the change to the in-memory representation of the IR modifies the uselist. This patch changes verify-uselistorder to not convert input files between debug info formats by default, preventing changes from being made to the file being checked. In addition, this patch makes it so that when we _do_ print IR in the new debug info format to bitcode or assembly, we delete any lingering debug intrinsic declarations, ensuring that we don't write uselist entries for them.
-
aniplcc authored
Closes #89192.
-
Ellis Hoag authored
The original comments mention `addPreLinkLTODefaultPipeline`, but I could not find any functions with this name, even in https://reviews.llvm.org/D33540 (8b3be4e5) where this comment was added. I assume they meant to refer to `buildThinLTOPreLinkDefaultPipeline` and `buildLTOPreLinkDefaultPipeline` and so this patch uses them.
-
Matt Arsenault authored
This had some repeated and overlapping conditions, which made it more difficult to handle the new metadata scheme. Reflow the function to handle the easy LDS cases first. For the flat/global cases, write in a positive-enabled style where everything unhandled hits a default cmpxchg. Depends #89468
-
Jay Foad authored
When exhaustive unary/binary tests fail, print the name of the function being tested as well as the values of the inputs and outputs. Example of a simulated failure in testing "udiv exact": unittests/Support/KnownBitsTest.cpp:99: Failure Value of: checkResult(Name, Exact, Computed, {Known1, Known2}, CheckOptimality) Actual: false (udiv exact: Inputs = ???1, ????, Computed = ???1, Exact = 0???) Expected: true -
Florian Hahn authored
After e2a72fa5, def-use chains of EVL are modeled explicitly. So there's no need for a custom check of its placement, as regular def-use verification will catch mis-placements.
-
Jay Foad authored
This de-duplicates the code that prints useful information when a test fails.
-
pvanhout authored
Should fix the ASAN error.
-
Orlando Cazalet-Hyams authored
A DW_TAG_template_alias referenced by a DW_AT_type incorrectly produces the error: error: DIE has DW_AT_type with incompatible tag DW_TAG_template_alias Fix and add test.
-
Orlando Cazalet-Hyams authored
DW_TAG_template_alias DIEs were added in DWARFv4, not DWARFv5
-
Matt Arsenault authored
DS atomic fadd F32 does respect the denormal mode, so we do not need to consider the expected FP mode or unsafe-fp-atomics attribute. They don't respect the rounding mode, but we don't care outside of strictfp. This also reveals the fp-mode-is-flush check has been missing in the cases that should be considering it alongside amdgpu-unsafe-fp-atomics. This also stops considering the case where flushing is enabled for f64, as flushing isn't mandated and we barely handle this case.
-
abidh authored
Currently, -g defaults to line tables only. This PR changes that to full debug information. This will allow us to test/use the upcoming debug info changes.
-
Michael Kruse authored
The help text was not updated in #87360. Clang is also mentioned for the diagnostic warnings reference, which mostly applies to C/C++/Obj-C, not Fortran. #81726 already tried to fix this, and I don't know a better solution.
-
Florian Hahn authored
This reverts commit 7dbba39e. Revert as there are reports this triggers during ThinLTO in some configurations.
-
chuongg3 authored
Combines G_SHUFFLE_VECTOR whose sources comes from G_CONCAT_VECTORS into a single G_CONCAT_VECTORS instruction. a = G_CONCAT_VECTORS x, y, undef, undef b = G_CONCAT_VECTORS z, undef, undef, undef c = G_SHUFFLE_VECTORS a, b, <0, 1, 4, undef> ===> c = G_CONCAT_VECTORS x, y, z, undef`
-
Simon Pilgrim authored
Use sd_match to match commutative inner AND/OR/XOR node arguments instead of some messy manual matching of each commutation.
-
Matt Arsenault authored
-