Revision tags: llvmorg-21-init |
|
#
749443a3 |
| 27-Jan-2025 |
Jeremy Morse <jeremy.morse@sony.com> |
[NFC][DebugInfo] Mop up final instruction-insertion call sites (#124289)
These are the final places in the monorepo that make use of instruction
insertion for methods like insertBefore and moveBefo
[NFC][DebugInfo] Mop up final instruction-insertion call sites (#124289)
These are the final places in the monorepo that make use of instruction
insertion for methods like insertBefore and moveBefore. As part of the
RemoveDIs project, instead use iterators for insertion. (see:
https://discourse.llvm.org/t/rfc-instruction-api-changes-needed-to-eliminate-debug-intrinsics-from-ir/68939
).
show more ...
|
Revision tags: llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4 |
|
#
3b8606be |
| 18-Nov-2024 |
Jorge Gorbe Moya <jgorbe@google.com> |
Re-land "[SandboxIR] Add debug checker to compare IR before/after a revert (#115968)" (#116671)
This PR re-lands https://github.com/llvm/llvm-project/pull/115968 with a
fix for a buildbot failure.
Re-land "[SandboxIR] Add debug checker to compare IR before/after a revert (#115968)" (#116671)
This PR re-lands https://github.com/llvm/llvm-project/pull/115968 with a
fix for a buildbot failure.
The `IRSnapshotChecker` class is only defined in debug mode, so its unit
tests must also be inside `#ifndef NDEBUG`.
show more ...
|
#
0ae58c45 |
| 18-Nov-2024 |
Jorge Gorbe Moya <jgorbe@google.com> |
Revert "[SandboxIR] Add debug checker to compare IR before/after a revert" (#116666)
Reverts llvm/llvm-project#115968. It caused buildbot failures.
|
#
9161e6ab |
| 18-Nov-2024 |
Jorge Gorbe Moya <jgorbe@google.com> |
[SandboxIR] Add debug checker to compare IR before/after a revert (#115968)
This will help us catch mistakes in change tracking. It's only enabled
when EXPENSIVE_CHECKS are enabled.
|
#
9d85ba57 |
| 12-Nov-2024 |
Jorge Gorbe Moya <jgorbe@google.com> |
[SandboxIR] Preserve the order of switch cases after revert. (#115577)
Preserving the case order is not strictly necessary to preserve
semantics (for example, operations like SwitchInst::removeCase
[SandboxIR] Preserve the order of switch cases after revert. (#115577)
Preserving the case order is not strictly necessary to preserve
semantics (for example, operations like SwitchInst::removeCase will
happily swap cases around). However, I'm planning to introduce an
optional verification step for SandboxIR that will use StructuralHash to
compare IR after a revert to the original IR to help catch tracker bugs,
and the order difference triggers a difference there.
show more ...
|
#
5b19ed8b |
| 10-Nov-2024 |
Kazu Hirata <kazu@google.com> |
[llvm] Migrate away from PointerUnion::{is,get,dyn_cast} (NFC) (#115626)
Note that PointerUnion::{is,get,dyn_cast} have been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is
[llvm] Migrate away from PointerUnion::{is,get,dyn_cast} (NFC) (#115626)
Note that PointerUnion::{is,get,dyn_cast} have been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is(), get() and dyn_cast() with
// isa<T>, cast<T> and the llvm::dyn_cast<T>
show more ...
|
Revision tags: llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1 |
|
#
eba106d4 |
| 27-Sep-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR][NFC] Move Instruction classes into a separate file (#110294)
|
Revision tags: llvmorg-19.1.0 |
|
#
b30880e9 |
| 04-Sep-2024 |
Vasileios Porpodas <vporpodas@google.com> |
[SandboxIR] Fix linking error caused by 840da2e8ba7e0f77938adfc6f6d315137542a1b8
|
#
840da2e8 |
| 04-Sep-2024 |
Sterling-Augustine <56981066+Sterling-Augustine@users.noreply.github.com> |
[SandboxIR] Implement CmpInst, FCmpInst, and ICmpInst (#106301)
As in the description.
Not sure the macros for "WRAP_XXX" add value or not, but do save some
boiler plate. Maybe there is a better
[SandboxIR] Implement CmpInst, FCmpInst, and ICmpInst (#106301)
As in the description.
Not sure the macros for "WRAP_XXX" add value or not, but do save some
boiler plate. Maybe there is a better way.
show more ...
|
Revision tags: llvmorg-19.1.0-rc4 |
|
#
b5ba7265 |
| 21-Aug-2024 |
Jorge Gorbe Moya <jgorbe@google.com> |
[SandboxIR] Add tracking for `ShuffleVectorInst::setShuffleMask`. (#105590)
|
#
6e8c9703 |
| 20-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Implement CatchSwitchInst (#104652)
This patch implements sandboxir::CatchSwitchInst mirroring
llvm::CatchSwitchInst.
|
Revision tags: llvmorg-19.1.0-rc3 |
|
#
516c1a0e |
| 16-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Implement SwitchInst (#104641)
This patch implements sandboxir::SwitchInst mirroring llvm::SwitchInst.
|
#
8c5d76ac |
| 16-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR][Tracker][NFC] GenericSetterWithIdx (#104615)
This patch adds a generic change tracker class, similar to
GenericSetter, but for getter/setter functions that also take an index
argument.
[SandboxIR][Tracker][NFC] GenericSetterWithIdx (#104615)
This patch adds a generic change tracker class, similar to
GenericSetter, but for getter/setter functions that also take an index
argument. For example: `Foo:get(Idx)` and `Foo::set(Idx, Val)`. These
setter/getter patterns are common enough that using a common
implementation seems beneficial.
show more ...
|
#
44f30c80 |
| 09-Aug-2024 |
Vasileios Porpodas <vporpodas@google.com> |
[SandboxIR][NFC] Use Tracker.emplaceIfTracking()
This patch replaces some of the remaining uses of Tracker::track() to Tracker::emplaceIfTracking().
|
#
f7ad495a |
| 09-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Clean up tracking code with the help of emplaceIfTracking() (#102406)
This patch introduces Tracker::emplaceIfTracking(), a wrapper of Tracker::track() that will conditionally create the
[SandboxIR] Clean up tracking code with the help of emplaceIfTracking() (#102406)
This patch introduces Tracker::emplaceIfTracking(), a wrapper of Tracker::track() that will conditionally create the change object if tracking is enabled.
This patch also removes the `Parent` member field of `IRChangeBase`.
show more ...
|
#
4fe33d06 |
| 08-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR][NFC] GenericSetter tracker class (#102260)
This patch introduces the `GenericSetter` tracker class that can be used
to track and revert simple instruction setters.
This patch also re
[SandboxIR][NFC] GenericSetter tracker class (#102260)
This patch introduces the `GenericSetter` tracker class that can be used
to track and revert simple instruction setters.
This patch also replaces several setter tracker classes with the generic
one.
show more ...
|
#
36f0d648 |
| 06-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Implement AllocaInst (#102027)
This patch implements sandboxir::AllocaInst which mirrors
llvm::AllocaInst.
|
#
0959e58f |
| 05-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR][Tracker] Track creation of instructions (#102013)
This patch adds tracking support for the creation of SandboxIR
instructions. This allows us to undo the creation of instructions during
[SandboxIR][Tracker] Track creation of instructions (#102013)
This patch adds tracking support for the creation of SandboxIR
instructions. This allows us to undo the creation of instructions during
revert().
Please note that we don't allow creation of detached instructions,
meaning that the instructions need to be inserted into a block upon
creation. This is why the tracker class combines creation and insertion.
show more ...
|
Revision tags: llvmorg-19.1.0-rc2 |
|
#
85da9611 |
| 03-Aug-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR][Tracker] Track InsertIntoBB (#101595)
This patch implements tracking for the insertion of a
sandboxir::Instruction into a sandboxir::BasicBlock.
|
#
95b366ca |
| 03-Aug-2024 |
Julius Alexandre <juliuswoosebert@gmail.com> |
[SandboxIR] Add setVolatile function to LoadInst and StoreInst (#101759)
This patch adds sandboxir::LoadInst::setVolatile() and sandboxir::StoreInst::setVolatile()
and the corresponding tracking cl
[SandboxIR] Add setVolatile function to LoadInst and StoreInst (#101759)
This patch adds sandboxir::LoadInst::setVolatile() and sandboxir::StoreInst::setVolatile()
and the corresponding tracking class.
show more ...
|
#
3403b593 |
| 31-Jul-2024 |
Sterling-Augustine <56981066+Sterling-Augustine@users.noreply.github.com> |
[SandboxIR] Implement PHINodes (#101111)
This patch implements sandboxir::PHINode which mirrors llvm::PHINode.
Based almost entirely on work by vporpo.
|
#
cfb92be0 |
| 29-Jul-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Implement CallBrInst (#100823)
This patch implements sandboxir::CallBrInst which mirrors
llvm::CallBrInst.
LLVM IR does not expose the Uses to DefaultDest and IndirectDest so we
nee
[SandboxIR] Implement CallBrInst (#100823)
This patch implements sandboxir::CallBrInst which mirrors
llvm::CallBrInst.
LLVM IR does not expose the Uses to DefaultDest and IndirectDest so we
need special Tracker objects for both of setters.
show more ...
|
Revision tags: llvmorg-19.1.0-rc1 |
|
#
c444548b |
| 23-Jul-2024 |
Vasileios Porpodas <vporpodas@google.com> |
Reapply "[SandboxIR] Implement BranchInst (#100063)"
This reverts commit c312a1a9c1beb407506cb1f76eb4ba05e92e5ab4.
|
#
c312a1a9 |
| 23-Jul-2024 |
Vasileios Porpodas <vporpodas@google.com> |
Revert "[SandboxIR] Implement BranchInst (#100063)"
This reverts commit 3993da23daa0ae75e9e80def76854534903e3761.
|
#
3993da23 |
| 23-Jul-2024 |
vporpo <vporpodas@google.com> |
[SandboxIR] Implement BranchInst (#100063)
This patch implements sandboxir::BranchInst which mirrors
llvm::BranchInst.
BranchInst::swapSuccessors() relies on User::swapOperandsInternal() so
thi
[SandboxIR] Implement BranchInst (#100063)
This patch implements sandboxir::BranchInst which mirrors
llvm::BranchInst.
BranchInst::swapSuccessors() relies on User::swapOperandsInternal() so
this patch also adds Use::swap() and the corresponding tracking code and
test.
show more ...
|