- Jun 07, 2024
-
-
Paul Kirth authored
Created using spr 1.3.4 [skip ci]
-
Paul Kirth authored
Created using spr 1.3.4 [skip ci]
-
- Jun 06, 2024
-
-
Paul Kirth authored
Created using spr 1.3.4 [skip ci]
-
erichkeane authored
This code was getting unwieldy, so a quick patch to refactor it a bit.
-
Med Ismail Bennani authored
In lldb, users can change the `dsymForUUID` binary using the `LLDB_APPLE_DSYMFORUUID_EXECUTABLE` environment variable. This patch changes the crashlog to support the same behaviour as lldb and uses this environment variable to disable `dsymForUUID` lookups in crashlog test by having it be empty. Since CI bots shoudn't have access to images on build records, it doesn't make sense to make use of `dsymForUUID` in tests. rdar://128953725 Signed-off-by:
Med Ismail Bennani <ismail@bennani.ma>
-
PiJoules authored
-
Martin Storsjö authored
This reverts commit b62b7a42 and a5729b71. This commit broke compilation for systems that lack pthreads.
-
Haojian Wu authored
The incremental processing mode doesn't seem to work well for C++, see the https://github.com/llvm/llvm-project/pull/89804#issuecomment-2149840711 for details.
-
Artem Kroviakov authored
fixes the bug in XeGPU's `CreateNdDescOp` tensor creation with dynamic offset and strides.
-
Craig Topper authored
705636a1 moved reductions from LegalizeVectorOps to LegalizeDAG, but the way it was done inadvertently moved stores from LegalizeVectorOps to LegalizeDAG too. This was not intended or desired. Found when this was pulled into my downstream which has other changes that make the distinction important.
-
Alex Bradbury authored
-
Farzon Lotfi authored
This change is an implementation of #87367's investigation on supporting IEEE math operations as intrinsics. Which was discussed in this RFC: https://discourse.llvm.org/t/rfc-all-the-math-intrinsics/78294 Much of this change was following how G_FSIN and G_FCOS were used. Changes: - `llvm/docs/GlobalISel/GenericOpcode.rst` - Document the `G_FTAN` opcode - `llvm/docs/LangRef.rst` - Document the tan intrinsic - `llvm/include/llvm/Analysis/VecFuncs.def` - Associate the tan intrinsic as a vector function similar to the tanf libcall. - `llvm/include/llvm/CodeGen/BasicTTIImpl.h` - Map the tan intrinsic to `ISD::FTAN` - `llvm/include/llvm/CodeGen/ISDOpcodes.h` - Define ISD opcodes for `FTAN` and `STRICT_FTAN` - `llvm/include/llvm/IR/Intrinsics.td` - Create the tan intrinsic - `llvm/include/llvm/IR/RuntimeLibcalls.def` - Define tan libcall mappings - `llvm/include/llvm/Target/GenericOpcodes.td` - Define the `G_FTAN` Opcode - `llvm/include/llvm/Support/TargetOpcodes.def` - Create a `G_FTAN` Opcode handler - `llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td` - Map `G_FTAN` to `ftan` - `llvm/include/llvm/Target/TargetSelectionDAG.td` - Define `ftan`, `strict_ftan`, and `any_ftan` and map them to the ISD opcodes for `FTAN` and `STRICT_FTAN` - `llvm/lib/Analysis/VectorUtils.cpp` - Associate the tan intrinsic as a vector intrinsic - `llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp` Map the tan intrinsic to `G_FTAN` Opcode - `llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp` - Add `G_FTAN` to the list of floating point math operations also associate `G_FTAN` with the `TAN_F` runtime lib. - `llvm/lib/CodeGen/GlobalISel/Utils.cpp` - More floating point math operation common behaviors. - llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp - List the function expansion operations for `FTAN` and `STRICT_FTAN`. Also define both opcodes in `PromoteNode`. - `llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp` - More `FTAN` and `STRICT_FTAN` handling in the legalizer - `llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h` - Define `SoftenFloatRes_FTAN` and `ExpandFloatRes_FTAN`. - `llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp` - Define `FTAN` as a legal vector operation. - `llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp` - Define `FTAN` as a legal vector operation. - `llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp` - define tan as an intrinsic that doesn't return NaN. - `llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp` Map `LibFunc_tan`, `LibFunc_tanf`, and `LibFunc_tanl` to `ISD::FTAN`. Map `Intrinsic::tan` to `ISD::FTAN` and add selection dag handling for `Intrinsic::tan`. - `llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp` - Define `ftan` and `strict_ftan` names for the equivalent ISD opcodes. - `llvm/lib/CodeGen/TargetLoweringBase.cpp` -Define a Tan128 libcall and ISD::FTAN as a target lowering action. - `llvm/lib/Target/X86/X86ISelLowering.cpp` - Add x86_64 lowering for tan intrinsic resolves https://github.com/llvm/llvm-project/issues/70082
-
Keith Smiley authored
-
Philip Reames authored
Specifically, cases which require context sensative reasoning which the current code doesn't do.
-
Joshua Cranmer authored
This possibility was added in https://reviews.llvm.org/D34303 to resolve some assertion failures with cases where FP math operations got constant-folded in constant expressions. However, at no point did the IR representation allow for expressing fast-math flags on constant expressions. With the change of https://github.com/llvm/llvm-project/pull/93038, there are no longer any constant expressions capable of being FP math operators, and thus FPMathOperator can go back to being Instruction-only.
-
Nishith Kumar M Shah authored
This reverts commit 9862080b.
-
erichkeane authored
This clause works identically as far as Sema is concerned, to the 'private' clause on compute constructs, so this simply adds tests and unblocks the ASTNode generation and Sema checking when used on loop clauses.
-
Krzysztof Parzyszek authored
The object identity requires more than just `Symbol`. Don't use `id()` to get the Symbol associated with the object, becase the return value will need to change. Instead use `sym()` which is added for that reason.
-
Craig Topper authored
We convert a shift left by 1 to vadd. But we only did it for tail agnostic or masked intrinsics. This extends it to tail undisturbed unmasked intrinsics.
-
Vidush Singhal authored
This PR just runs Clang format on Attributor.h and AttributorAttributes.cpp Co-authored-by:Vidush Singhal <singhal2@ruby964.llnl.gov>
-
-
Piotr Zegar authored
Compare class type instead of just assuming that called constructor belong to same class. Fixes #91605
-
Craig Topper authored
These are patterns that explicitly check for undef. Similar patterns do not exist without rounding mode. The vsetvli insertion pass should be able to detect that the passthru is undef. The test changes seem to be a deficiency in identifying passthru being undef in the vsetvli inserter for -O0.
-
Augusto Noronha authored
UpdateFormatsIfNeeded has hardcoded the call to GetFormat with no dynamic values. GetFormat will try to find the synthetic children of the ValueObject, and passing the wrong one can fail, which can be bad for performance but should not be user visible. Fix the performace bug by passing the dynamic value type of the ValueObject. rdar://122506593
-
Jonas Devlieghere authored
Change the signature of `DWARFExpression::Evaluate` and `DWARFExpressionList::Evaluate` to return an `llvm::Expected` instead of a boolean. This eliminates the `Status` output parameter and generally improves error handling.
-
Jordan Rupprecht authored
Mirror the cmake change in cb7690af ``` lld-link: error: undefined symbol: __declspec(dllimport) RtlGetLastNtStatus >>> referenced by Support.lib(ErrorHandling.obj):(class std::error_code __cdecl llvm::mapLastWindowsError(void)) ```
-
erichkeane authored
These three clauses are all quite trivial, as they take no parameters. They are mutually exclusive, and 'seq' has some other exclusives that are implemented here. The ONE thing that isn't implemented is 2.9's restriction (line 2010): 'A loop associated with a 'loop' construct that does not have a 'seq' clause must be written to meet all the following conditions'. Future clauses will require similar work, so it'll be done as a followup.
-
OverMighty authored
Revert "[libc][math][c23] Add MPFR unit tests for {ceil,floor,round,roundeven,trunc}f16 (#94383)" (#94505) This reverts commit fda1e4b0. The commit caused Buildbot failures: - https://lab.llvm.org/buildbot/#/builders/256/builds/14331 - https://lab.llvm.org/buildbot/#/builders/229/builds/27009 -
Andrey Portnoy authored
This PR is based on https://github.com/llvm/llvm-project/pull/91516.
-
Mingming Liu authored
Revert "Reland "[ThinLTO] Populate declaration import status except for distributed ThinLTO under a default-off new option" (#92718) (#94503) This reverts commit e33db249. The change from *set to *map increases memory usage, and caused indexing OOM in some applications. Need to profile offline to bring the memory usage down.
-
Mingming Liu authored
This reverts commit 62627633, to prepare for the revert of https://github.com/llvm/llvm-project/pull/92718. https://github.com/llvm/llvm-project/pull/92718 causes LTO indexing OOM in some applications.
-
Alexander Yermolovich authored
Previously when an entry was skipped in parent chain a child will point to the next valid entry in the chain. After discussion in https://github.com/llvm/llvm-project/pull/91808 this is not very useful. Changed implemenation so that all the children of the entry that is skipped won't have DW_IDX_parent.
-
Craig Topper authored
Now with the correct tail policy. Original message: Our pattern previously checked for the merge operand being undef.
-
Craig Topper authored
This reverts commit 1af0778f. I messed up the tail policy.
-
OverMighty authored
-
Tom Stellard authored
We need to skip this step until PGO is re-enabled for the release builds.
-
Zarko Todorovski authored
Implementation is NOT compatible with IBM XL C 16.1 and earlier but is compatible with GCC. It handles all ByVals with greater alignment then pointer width the same way IBM XL C handles Byvals that have vector members. For overaligned objects that do not contain vectors IBM XL C does not align them properly if they are passed in the GPR argument registers. This patch was originally written by Sean Fertile @mandlebug. Previously on Phabricator https://reviews.llvm.org/D105659
-
- Jun 05, 2024
-
-
aengelke authored
DenseMap for pointer lookup is expensive, and this is only used for deduplication and index lookup. Instead, store the worklist index in the node itself. This brings a substantial performance improvement.
-
Konstantin Zhuravlyov authored
-