- Jun 18, 2023
-
-
Simon Pilgrim authored
-
Paul Walker authored
Consider: add(pg, a, mul_u(pg, b, c)) Although the multiply's inactive lanes are undefined, they don't contribute to the final result. The overall result of the inactive lanes come from "a" and thus the above is another form of mla rather than mla_u.
-
Paul Walker authored
-
Paul Walker authored
-
AMS21 authored
We now display a simple note if the reason is that the used class does not support move semantics. This fixes llvm#62550 Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D153220
-
AMS21 authored
For a declaration the `FunctionDecl` begin location does not include the template parameter lists, but for some reason if you have a separate definitions to the declaration the begin location does include them. With this patch we now correctly handle that case. This fixes llvm#62746 Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D153218
-
LLVM GN Syncbot authored
-
AMS21 authored
As discussed in the https://reviews.llvm.org/D148697 review. Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D153198
-
NAKAMURA Takumi authored
-
Youngsuk Kim authored
* Add `Address::withElementType()` as a replacement for `CGBuilderTy::CreateElementBitCast`. * Partial progress towards replacing `CreateElementBitCast`, as it no longer does what its name suggests. Either replace its uses with `Address::withElementType()`, or remove them if no longer needed. * Remove unused parameter 'Name' of `CreateElementBitCast` Reviewed By: barannikov88, nikic Differential Revision: https://reviews.llvm.org/D153196
-
-
-
Krzysztof Parzyszek authored
-
LLVM GN Syncbot authored
-
Nico Weber authored
-
Fangrui Song authored
For a function not in an IR COMDAT, currently we place it into a nodeduplicate IR COMDAT so that its text section and its associated .pseudo_probe section will be in the same section group, which can be retained or discarded by the linker as a unit. However, the section group wastes space. After D153189 uses SHF_LINK_ORDER to ensure a .pseudo_probe section will be discarded when its associated text section is discarded, we can remove the nodeduplicate IR change. In the following example, the .pseudo_probe associated with .text.f is discarded as expected. ``` clang -c -ffunction-sections -fpseudo-probe-for-profiling -xc =(printf 'void _start(){} void f(){}') -o a.o ld.lld --gc-sections --print-gc-sections a.o ``` Reviewed By: hoy Differential Revision: https://reviews.llvm.org/D153191 -
Owen Pan authored
-
Brad Smith authored
OpenBSD commit for reference: https://github.com/openbsd/src/commit/7b407c478fab53a6d9a091887c828c3f7b3f8b46
-
Florian Hahn authored
The test fails SCEV verification, which cause the expensive check bots to fail. Always run verification and mark as XFAIL until fixed.
-
Fangrui Song authored
to simplify code near __tls_get_addr parsing.
-
Uday Bondhugula authored
Add support for the bare pointer calling convention in the gpu-to-llvm pass. This wasn't being exposed and is needed when GPU-compiled MLIR is to be called with this convention. Reviewed By: krzysz00 Differential Revision: https://reviews.llvm.org/D152477
-
Florian Hahn authored
This reverts commit abfeda5a. and fe19036e. The added assertion triggers during clang bootstrap builds. Revert while I investigate.
-
Jeff Niu authored
Differential Revision: https://reviews.llvm.org/D153203
-
Florian Hahn authored
Add test for LSR miscompile.
-
- Jun 17, 2023
-
-
Felipe de Azevedo Piovezan authored
-
Hui authored
- This was to make implementing jthread easier and requested in https://reviews.llvm.org/D151559 Differential Revision: https://reviews.llvm.org/D151792
-
Prajwal S N authored
It was previously present in the inline code block and did not work as a hyperlink. Reviewed By: yassingh Differential Revision: https://reviews.llvm.org/D153061
-
Florian Hahn authored
-
Florian Hahn authored
GenerateTruncates at the moment creates extends/truncates for post-inc uses of normalized expressions. For example, if an add rec of the form {1,+,-1} is used outside the loop, the normalized form will use {1,+,-1} instead of {0,+,-1}. When naively sign-extending the normalized expression, it will get extended incorrectly to {1,+,-1} for the wider type, if the backedge-taken count of the loop is 1. To address this, the patch updates GenerateTruncates to check if the LSRUse contains any fixups with PostIncLoops. If that's the case, first de-normalize the expression, then perform the extend/truncate, then normalize again. There may be other places where similar checks are needed and the helper can be generalized for those cases. I'd not be surprised if other subtle mis-compiles are caused by this. Fixes #38847. Fixes #58039. Fixes #62852. Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D153004 -
Florian Hahn authored
-
Corentin Jabot authored
-
Fangrui Song authored
* Add the SHF_LINK_ORDER flag so that the .pseudo_probe section is discarded when the associated text section is discarded. * Add unique ID so that with `clang -ffunction-sections -fno-unique-section-names`, there is one separate .pseudo_probe for each text section (disambiguated by `.section ....,unique,id` in assembly) The changes allow .pseudo_probe GC even if we don't place instrumented functions in an IR comdat (see `getOrCreateFunctionComdat` in SampleProfileProbe.cpp). Reviewed By: hoy Differential Revision: https://reviews.llvm.org/D153189
-
Jay Foad authored
Differential Revision: https://reviews.llvm.org/D153139
-
Fangrui Song authored
-
Sergei Barannikov authored
This commit breaks up CodeGen/TargetInfo.cpp into a set of *.cpp files, one file per target. There are no functional changes, mostly just code moving. Non-code-moving changes are: * A virtual destructor has been added to DefaultABIInfo to pin the vtable to a cpp file. * A few methods of ABIInfo and DefaultABIInfo were split into declaration + definition in order to reduce the number of transitive includes. * Several functions that used to be static have been placed in clang::CodeGen namespace so that they can be accessed from other cpp files. RFC: https://discourse.llvm.org/t/rfc-splitting-clangs-targetinfo-cpp/69883 Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D148094
-
Sergei Barannikov authored
Wrap calls to XXXTargetCodeGenInfo constructors into factory functions. This allows moving implementations of TargetCodeGenInfo to dedicated cpp files without a change. Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D150215
-
Sindhu Chittireddy authored
Replace getAs with castAs and add assert if needed. Differential Revision: https://reviews.llvm.org/D152977
-
Pranav Kant authored
-
Weining Lu authored
`LoongArchISD::CSRWR` has two results. The first is the result of `loongarch.csrwr.[wd]` intrinsic and the second is the chain. But currently the chain is not processed correctly when creating this node, resulting in the `csrwr` instruction being optimized out when the result is not used by anyone [1]. `LoongArchISD::CSRXCHG` has the same issue. This patch addresses this issue. [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/loongarch/include/asm/loongarch.h?h=v6.4-rc6#n219 Reviewed By: hev Differential Revision: https://reviews.llvm.org/D153120
-
Weining Lu authored
Reviewed By: xry111 Differential Revision: https://reviews.llvm.org/D153119
-