- Jun 11, 2024
-
-
Vitaly Buka authored
Created using spr 1.3.4
-
Vitaly Buka authored
Created using spr 1.3.4 [skip ci]
-
Vitaly Buka authored
Attributes are mostly irrelevant to these tests, but very unstable, and change from patch to patch.
-
Eric Schweitz authored
This line was tripping the -Wglobal-constructor warning which was causing a build failure when -Werror was turned on.
-
Paul Kirth authored
This patch implements the changes to LLVM IR discussed in https://discourse.llvm.org/t/rfc-update-branch-weights-metadata-to-allow-tracking-branch-weight-origins/75032 In this patch, we add an optional field to MD_prof metadata nodes for branch weights, which can be used to distinguish weights added from `llvm.expect*` intrinsics from those added via other methods, e.g. from profiles or inserted by the compiler. One of the major motivations, is for use with MisExpect diagnostics, which need to know if branch_weight metadata originates from an llvm.expect intrinsic. Without that information, we end up checking branch weights multiple times in the case if ThinLTO + SampleProfiling, leading to some inaccuracy in how we report MisExpect related diagnostics to users. Since we change the format of MD_prof metadata in a fundamental way, we need to update code handling branch weights in a number of places. We also update the lang ref for branch weights to reflect the change.
-
Emilio Cota authored
-
Eisuke Kawashima authored
from PEP8 (https://peps.python.org/pep-0008/#programming-recommendations): > Comparisons to singletons like None should always be done with is or is not, never the equality operators.
-
Noah Goldstein authored
Two ways to relaxed: 1) Only require one of the `and` ops to be single-use if both `X` and `Y` are constant. 2) Special case, if `X ^ Y` is a negative power of 2, then `Z ^ NegP2 ==/!= 0` will fold to `Z u</u>= -NegP2` which creates no additional instructions so fold irrelivant of use counts. Closes #94867 -
Noah Goldstein authored
-
Med Ismail Bennani authored
This patch tightens the assert check for the ABISP object in `StopInfoMachException::DeterminePtrauthFailure`. This causes some failure when debugging on a system that doesn't have pointer authentification support, like on Intel for instance. rdar://129401926 Signed-off-by:
Med Ismail Bennani <ismail@bennani.ma>
-
Sayhaan Siddiqui authored
Replace old usages of GDB Index functions to use the new class.
-
Florian Mayer authored
-
Peiming Liu authored
A `sparse_tensor.iterate` iterates over a sparse iteration space extracted from `sparse_tensor.extract_iteration_space` operation introduced in https://github.com/llvm/llvm-project/pull/88554.
-
Tatsuyuki Ishi authored
The current default, build-id=fast, is only 8 bytes due to the usage of 64-bit XXH3. This is incompatible with RPM packaging tools which requires >=16 bytes [1]. In Clang the ENABLE_LINKER_BUILD_ID define makes it pass --build-id without a specific hash type. When also defaulting to LLD, this provides a pretty broken default out-of-box. Using XXH3 was a considerable performance advantage when build-id was first implemented, because sha1 was really sha1 and rather slow. Nowadays sha1 is just 160-bit BLAKE3 which is decently fast and not cryptographically broken, so it should be a good default. Note that the default remains "fast" for wasm because sha1 for wasm is still real sha1. Close https://github.com/llvm/llvm-project/issues/43483. [1]: https://github.com/rpm-software-management/rpm/blob/b7d427728b8ba8734ba47d51849a5736bdd727cd/build/files.c#L1883
-
AdityaK authored
-
David Green authored
In a similar way to how we push vector adds into extends, this pushed 'mul(zext,zext)' into 'zext(mul(zext,zext))' if the extend can be done in two or more steps. https://alive2.llvm.org/ce/z/WjU7Kr
-
Simon Pilgrim authored
Don't use %a and %A in the same test as FileCheck doesn't like it.
-
Simon Pilgrim authored
Additional multi-use tests for #94948
-
Yingwei Zheng authored
Fixes type check failure in https://github.com/llvm/llvm-project/pull/94110#issuecomment-2158417937
-
Hans Wennborg authored
It's needed to make clang-repl work in -DCLANG_PLUGIN_SUPPORT=OFF configured builds (at least on mac). See discussion on https://github.com/llvm/llvm-project/pull/89811
-
Angel Zhang authored
-
Jay Foad authored
This test works on Linux with lit's internal shell. It fails on Windows because sh is not available.
-
Matt Arsenault authored
When folding exp2(itofp(x)) to ldexp(1, x), don't require an ldexp libcall to emit the intrinsic. The intrinsic needs to be handled regardless of whether the system has a libcall, and we have an inline implementation of ldexp already. This fixes the instance in the exp2->ldexp fold. Another instance exists for the pow(2) -> ldexp case The LTO test change isn't ideal, since it's just moving the problem to another instance where we're relying on implied libm behavior for an intrinsic transform. Use exp10 since that's a harder case to solve in the libcall house of cards we have.
-
Craig Topper authored
This adds IntrWillReturn, IntrNoSync, IntrNoFree, and IntrNoCallback. The IntrWillReturn is needed to make the intrinsic eligible for being dead code eliminated if they are unused. We already use this for most intrinsics. I wonder if the rounding mode intrinsics were in review when the other intrinsics were changed to DefaultAttrsIntrinsic.
-
Craig Topper authored
We no longer have _TU pseudo instructions. I'm not sure if we have any unsuffixed instructions w/o mask w/ passthru w/o policy operand. That case is not covered by the earlier comments. I could not find any from a quick audit.
-
c8ef authored
Closes #94181
-
Tomas Matheson authored
According to the Apple Silicon Optimization Guide, these are 8.4 with all features of 8.5 except BTI.
-
- Jun 10, 2024
-
-
Valentin Clement authored
-
Dmitry Chernenkov authored
-
khaki3 authored
Derived from #92480. This PR updates the lowering process of DO CONCURRENT to support F'2023 REDUCE clause. The structure `IncrementLoopInfo` is extended to have both reduction operations and symbols in `reduceSymList`. The function `getConcurrentControl` constructs `reduceSymList` for the innermost loop. Finally, `genFIRIncrementLoopBegin` builds `fir.do_loop` with reduction operands.
-
Mike Rice authored
Static verifier caught passing ColonLoc/LParenLoc in wrong order. Marked as NFC since these don't seem to be used for anything currently that I can think to test for.
-
LLVM GN Syncbot authored
-
David Spickett authored
The original bug is legitimate UB, but this is in the clang constant expression interpreter, not clang-repl. https://github.com/llvm/llvm-project/issues/94994 covers investigation of this specific bug in clang-repl.
-
Mark de Wever authored
Implements parts of: - P0355 Extending chrono to Calendars and Time Zones
-
Mike Rice authored
Static verifier reports unchecked use of pointer after explicitly checking earlier in the function. It appears the pointer won't be a nullptr, so remove the unneeded check for consistency.
-
OverMighty authored
Part of #93566.
-
Krzysztof Drewniak authored
When the integer range analysis was first develop, a pass that did integer range-based constant folding was developed and used as a test pass. There was an intent to add such a folding to SCCP, but that hasn't happened. Meanwhile, -int-range-optimizations was added to the arith dialect's transformations. The cmpi simplification in that pass is a strict subset of the constant folding that lived in -test-int-range-inference. This commit moves the former test pass into -int-range-optimizaitons, subsuming its previous contents. It also adds an optimization from rocMLIR where `rem{s,u}i` operations that are noops are replaced by their left operands. -
Dmitry Vasilyev authored
The different build configuration and target Linux system can load a different number of .so libraries. Add and check own libraries.
-
Jay Foad authored
-
Karl-Johan Karlsson authored
The test clang/test/OpenMP/error_unsupport_feature.c don't check the output written to the current directory. The current directory may be write protected e.g. in a sandboxed environment. This patch replace the -emit-llvm option with -emit-llvm-only as it don't care about the outputed llvm IR.
-