History log of /llvm-project/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp (Results 1 – 6 of 6)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init
# b178c2d6 25-Jan-2025 Vasileios Porpodas <vporpodas@google.com>

[SandboxVec][DAG] Fix trim schedule

Fix trimSchedule by skipping instructions without a DAG Node.


# 5cb2db3b 25-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][Scheduler] Forbid crossing BBs (#124369)

This patch updates the scheduler to forbid scheduling across BBs. It
should eventually be able to handle this, but we disable it for now.


# c7053ac2 23-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Disable crossing BBs (#124039)

Crossing BBs is not currently supported by the structures of the
vectorizer. This patch fixes instances where this was happening,
including

[SandboxVec][BottomUpVec] Disable crossing BBs (#124039)

Crossing BBs is not currently supported by the structures of the
vectorizer. This patch fixes instances where this was happening,
including:
- a walk of use-def operands that updates the UnscheduledSuccs counter,
- the dead instruction removal is now done per BB,
- the scheduler, which will reject bundles that cross BBs.

show more ...


Revision tags: llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4
# 490e58a9 07-Nov-2024 Simon Pilgrim <llvm-dev@redking.me.uk>

Fix MSVC "not all control paths return a value" warning. NFC


# f7ef7b2f 07-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec][Scheduler] Implement rescheduling (#115220)

This patch adds support for re-scheduling already scheduled
instructions. For now this will clear and rebuild the DAG, and will
reschedule

[SandboxVec][Scheduler] Implement rescheduling (#115220)

This patch adds support for re-scheduling already scheduled
instructions. For now this will clear and rebuild the DAG, and will
reschedule the code using the new DAG.

show more ...


Revision tags: llvmorg-19.1.3
# 1d09925b 18-Oct-2024 vporpo <vporpodas@google.com>

[SandboxVec][Scheduler] Boilerplate and initial implementation. (#112449)

This patch implements a ready-list-based scheduler that operates on
DependencyGraph.
It is used by the sandbox vectorizer

[SandboxVec][Scheduler] Boilerplate and initial implementation. (#112449)

This patch implements a ready-list-based scheduler that operates on
DependencyGraph.
It is used by the sandbox vectorizer to test the legality of vectorizing
a group of instrs.

SchedBundle is a helper container, containing all DGNodes that
correspond to the instructions that we are attempting to schedule with
trySchedule(Instrs).

show more ...