- Jan 04, 2024
-
-
Amir Ayupov authored
Created using spr 1.3.4
-
Amir Ayupov authored
Created using spr 1.3.4 [skip ci]
-
Amir Ayupov authored
Created using spr 1.3.4
-
Amir Ayupov authored
Created using spr 1.3.4 [skip ci]
-
Krzysztof Drewniak authored
Add support for !invariant.load metadata (by way of a unit attribute) to the MLIR representation of llvm.load.
-
Matt Arsenault authored
There are some intrinsics are using i16 vectors in place of bfloat vectors. Move towards making bf16 vectors legal so these can migrate. Leave the larger vectors for a later change. Depends #76213 #76214
-
Amir Ayupov authored
Created using spr 1.3.4
-
Amir Ayupov authored
Created using spr 1.3.4 [skip ci]
-
Guillaume Chatelet authored
This patch reduces the scope of `FPBits` exported variables and functions. It also moves storage up into `FPRep` and tries to make the default and specialized versions of `FPBits` more uniform. The next step is to move the specialization from `FPBits` to `FPRep` so we can manipulate floating point representations through `FPType` alone - that is - independently from the host architecture.
-
Alexey Bataev authored
vectorized. When trying to reuse the extractelement instruction, emitted for the insertelement instruction, need to check, if the this insertelement instruction was vectorized. In this case, need to use vectorized value, not the original insertelement.
-
Simon Camphausen authored
The parser and printer of string attributes were changed to handle escape sequences. Therefore, we no longer require a custom parser and printer. Verification is moved from the parser to the verifier accordingly.
-
Pol M authored
Optimize castToDeclContext for 2% improvement in build times castToDeclContext is a heavily used function, and as such, it needs to be kept as slim as feasible to preserve as much performance as possible. To this end, it was observed that the function was generating suboptimal assembly code, and putting the most common execution path in the longest sequence of instructions. This patch addresses this by guiding the compiler towards generating a lookup table of offsets, which can be used to perform an addition on the pointer. This results in a 1-2% improvement on debug builds (and a negligible improvement on release). To achieve this, the switch was simplified to flatten the if statements in the default branch. In order to make the values of the switch more compact, encouraging LLVM to generate a look-up table instead of a jump table, the AST TableGen generator was modified so it can take order priority based on class inheritance. This combination allowed for a more optimal generation of the function. Of note, 2 other functions with an equivalent structure also needed to be modified. Fixes #76824
-
Mirko Brkusanin authored
Alias test should contain alternative names in check lines
-
Mauro Baladés authored
-
Nikita Popov authored
-
alekuz01 authored
Fix for #71941
-
Chaitanya authored
"hidden_dynamic_lds_size" argument will be added in the reserved section at offset 120 of the implicit argument layout. Add "isDynamicLDSUsed" flag to AMDGPUMachineFunction to identify if a function uses dynamic LDS. hidden argument will be added in below cases: - LDS global is used in the kernel. - Kernel calls a function which uses LDS global. - LDS pointer is passed as argument to kernel itself.
-
Nikita Popov authored
Print debug output if a constraint does not get added due to a failed precondition.
-
Qizhi Hu authored
import of `ClassTemplateSpecializationDecl` didn't set `InstantiatedFromMember` and this makes ast-dump crash. import and set `InstantiatedFromMember`. fix [issue](https://github.com/llvm/llvm-project/issues/76469 ) Co-authored-by:
huqizhi <836744285@qq.com>
-
Jay Foad authored
-
Shih-Po Hung authored
Instruction cost for CodeSize and Latency/RecipThroughput can be very different. Considering the diversity of CostKind and vendor-specific cost, and how they are spread across various TTI functions, it's becoming quite a challenge to handle. This patch adds an interface getRISCVInstructionCost to address it.
-
Nikita Popov authored
When adding constraints for induction variables, if the step is not one, we need to make sure that (end-start) is a multiple of step, otherwise we might step over the end value. Currently this only supports one specific pattern for pointers, where the end is a gep of the start with an appropriate offset. Generalize this by using SCEV to check for multiples, which also makes this work for integer IVs.
-
Martin Storsjö authored
This silences the following warning with GCC: llvm-project/llvm/tools/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp:89:4: warning: extra ‘;’ [-Wpedantic] 89 | }; | ^ | - -
Andrzej Warzyński authored
Replace (in tests and docs): %forall, %tiled = transform.structured.tile_using_forall with (updated order of return handles): %tiled, %forall = transform.structured.tile_using_forall Similar change is applied to (in the TD tutorial): transform.structured.fuse_into_containing_op This update makes sure that the tests/documentation are consistent with the Op specifications. Follow-up for #67320 which updated the order of the return handles for `tile_using_forall`. -
HaohaiWen authored
This test tracks bug of MachineVerifier to check live range segment for EHa. Async exception can happen at any place within seh scope, not only the call instruction. Need to teach MachineVerifier to know that.
-
Christian Sigg authored
-
kadir çetinkaya authored
False negative/positive rate has decreased to the degree that these extra confirmations no longer provide any value, but only create friction in the happy case. When we have false analysis, people usually need to apply the fixes and run the builds to discover the failure. At that point they can add relevant IWYU pragmas to guide analysis, and will be more likely to create bug reports due to extra annoyance :)
-
Ilya Biryukov authored
... and only look at equivalence of substituted expressions, not results of constraint satisfaction. This is required by the standard when matching redeclarations. Fixes #74314. There is already some existing machinery for that in `TemplateInstantiator` and `Sema` exposed separate functions for substituting expressions with intention to do that: - `Sema::SubstExpr` should not evaluate constraints. - `Sema::SubstConstraintExpr` should. However, both functions used to be equivalent. Introduce a new function that does not evaluate constraint and use it when matching declarations. Also change implementation of `SubstConstraintExpr` to call `SubstExpr` directly so it's obvious they behave in the same way and add a FIXME to call out that we might need to revamp this approach in the future.
-
Simon Pilgrim authored
Don't rebuild the demanded elts mask every time.
-
Simon Pilgrim authored
If we successfully cast only the first base node as GlobalAddressSDNode / ConstantPoolSDNode / FrameIndexSDNode then we can early out as we know that base won't cast as a later type. Noticed while investigating profiles for potential compile time improvements.
-
Simon Pilgrim authored
Don't wait to test that all base ptr matches have succeeded
-
Simon Pilgrim authored
-
Simon Pilgrim authored
Rename UndefZero -> UndefSel (undefined elements from Sel operand).
-
Jie Fu authored
llvm-project/llvm/lib/CodeGen/TargetLoweringBase.cpp:570:12: error: unused variable 'ModeN' [-Werror,-Wunused-variable] 570 | unsigned ModeN, ModelN; | ^~~~~ llvm-project/llvm/lib/CodeGen/TargetLoweringBase.cpp:570:19: error: unused variable 'ModelN' [-Werror,-Wunused-variable] 570 | unsigned ModeN, ModelN; | ^~~~~~ 2 errors generated. -
Thomas Preud'homme authored
This patch implement the GlobalISel counterpart to 4d7df43f.
-
Alex Zinenko authored
Bytecode versions have named constants that should be used instead of magic numbers.
-
Alex Zinenko authored
The change in c1eab576 fixed the behavior of `getDiscardableAttrDictionary` for ops that are not using properties to only return discardable attributes. Bytecode writer was relying on the wrong behavior and would assume all attributes are discardable, without appropriate testing. Fix that and add a test.
-
Mitch Phillips authored
This reverts commit 42ec9761. Reason: Broke the sanitizer buildbots. See more information on the github comment thread at https://github.com/llvm/llvm-project/commit/42ec976184acd40436acd7104ad715c60ca3e7ed
-
sstipanovic authored
-
Mitch Phillips authored
This reverts commit 53edf12e. Reason: Broke the sanitizer buildbots with a memory leak. More information available on https://github.com/llvm/llvm-project/commit/53edf12e526704cc251b6a6917319c7cb7a653a0
-