Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init
# ac75d322 24-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][VecUtils] Filter out instructions not in BB in VecUtils:getLowest() (#124360)

This patch changes the functionality of `VecUtils::getLowest(Vals, BB)`
such that it filters out any instr

[SandboxVec][VecUtils] Filter out instructions not in BB in VecUtils:getLowest() (#124360)

This patch changes the functionality of `VecUtils::getLowest(Vals, BB)`
such that it filters out any instructions in `Vals` that are not in BB.
This is useful when Vals contains instructions from different BBs,
because in that case we are only interested in one BB.

show more ...


# d2234ca1 24-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Fix packing when PHIs are present (#124206)

Before this patch we might have emitted pack instructions in between PHI
nodes. This patch fixes it by fixing the insert point

[SandboxVec][BottomUpVec] Fix packing when PHIs are present (#124206)

Before this patch we might have emitted pack instructions in between PHI
nodes. This patch fixes it by fixing the insert point of the new packs.

show more ...


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

[SandboxVec][VecUtils] Implement VecUtils::getLowest() (#124024)

VecUtils::getLowest(Valse) returns the lowest instruction in the BB among Vals.
If the instructions are not in the same BB, or if no

[SandboxVec][VecUtils] Implement VecUtils::getLowest() (#124024)

VecUtils::getLowest(Valse) returns the lowest instruction in the BB among Vals.
If the instructions are not in the same BB, or if none of them is an
instruction it returns nullptr.

show more ...


Revision tags: llvmorg-19.1.7
# 6312beef 09-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Use SeedCollector and slice seeds (#120826)

With this patch we switch from the temporary dummy seeds to actual seeds
provided by the seed collector.
The seeds get sliced

[SandboxVec][BottomUpVec] Use SeedCollector and slice seeds (#120826)

With this patch we switch from the temporary dummy seeds to actual seeds
provided by the seed collector.
The seeds get sliced and each slice is used as the starting point for
vectorization.

show more ...


Revision tags: llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4
# 3be3b33e 15-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Implement pack of scalars (#115549)

This patch implements packing of scalar operands when the vectorizer
decides to stop vectorizing. Packing is implemented with a sequenc

[SandboxVec][BottomUpVec] Implement pack of scalars (#115549)

This patch implements packing of scalar operands when the vectorizer
decides to stop vectorizing. Packing is implemented with a sequence of
InsertElement instructions.

Packing vectors requires different instructions so it's implemented in a
follow-up patch.

show more ...


# 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 ...


# d047488d 06-Nov-2024 Vasileios Porpodas <vporpodas@google.com>

[SandboxVec] Fix build warnings in VecUtilsTest


# 320389d4 06-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Generate vector instructions (#115087)

This patch implements some very basic code generation, for some opcodes.


# 083369fd 01-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Per opcode checks (#114145)

This patch adds more opcode-specific legality checks.


Revision tags: llvmorg-19.1.3
# 5ea69481 28-Oct-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Check opcodes and types (#113741)