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

[SandboxVec][Legality] Pack from different BBs (#124363)

When the inputs of the pack come from different BBs we need to make sure
we emit the pack instructions at the correct place.


# 87e4b681 17-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Implement ShuffleMask (#123404)

This patch implements a helper ShuffleMask data structure that helps
describe shuffles of elements across lanes.


# d6315aff 17-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][InstrMaps] EraseInstr callback (#123256)

This patch hooks up InstrMaps to the Sandbox IR callbacks such that it
gets updated when instructions get erased.


# e902c696 16-Jan-2025 vporpo <vporpodas@google.com>

[SandboxVec][BottomUpVec] Implement InstrMaps (#122848)

InstrMaps is a helper data structure that maps scalars to vectors and
the reverse. This is used by the vectorizer to figure out which vectors

[SandboxVec][BottomUpVec] Implement InstrMaps (#122848)

InstrMaps is a helper data structure that maps scalars to vectors and
the reverse. This is used by the vectorizer to figure out which vectors
it can extract scalar values from.

show more ...


Revision tags: llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4
# 5942a99f 06-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec] Notify scheduler about new instructions (#115102)

This patch registers the "createInstr" callback that notifies the
scheduler about newly created instructions. This guarantees that all

[SandboxVec] Notify scheduler about new instructions (#115102)

This patch registers the "createInstr" callback that notifies the
scheduler about newly created instructions. This guarantees that all
newly created instructions have a corresponding DAG node associated with
them. Without this the pass crashes when the scheduler encounters the
newly created vector instructions.

This patch also changes the lifetime of the sandboxir Ctx variable in
the SandboxVectorizer pass. It needs to be destroyed after the passes
get destroyed. Without this change when components like the Scheduler
get destroyed Ctx will have already been freed, which is not legal.

show more ...


# ce0d0858 05-Nov-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Query the scheduler for legality (#114616)

This patch adds the legality check of whether the candidate instructions
can be scheduled together. This uses a Scheduler object.


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

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

This patch adds more opcode-specific legality checks.


# ca998b07 29-Oct-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Check wrap flags (#113975)


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

[SandboxVec][Legality] Check Fastmath flags (#113967)


# 5ea69481 28-Oct-2024 vporpo <vporpodas@google.com>

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


# 1540f772 25-Oct-2024 Vasileios Porpodas <vporpodas@google.com>

Reapply "[SandboxVec][Legality] Reject non-instructions (#113190)"

This reverts commit eb9f4756bc3daaa4b19f4f46521dc05180814de4.


# eb9f4756 25-Oct-2024 Vasileios Porpodas <vporpodas@google.com>

Revert "[SandboxVec][Legality] Reject non-instructions (#113190)"

This reverts commit 6c9bbbc818ae8a0d2849dbc1ebd84a220cc27d20.


# 6c9bbbc8 25-Oct-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Reject non-instructions (#113190)


# 54c93aab 21-Oct-2024 vporpo <vporpodas@google.com>

[SandboxVec][Legality] Scaffolding for Legality (#112623)

This patch adds a LegalityResultWithReason class for describing the
reason why legality decided not to vectorize the code.


Revision tags: llvmorg-19.1.2, llvmorg-19.1.1
# e22b07e7 30-Sep-2024 vporpo <vporpodas@google.com>

[SandboxIR][NFC] Move Function class to a separate file (#110526)


# eba106d4 27-Sep-2024 vporpo <vporpodas@google.com>

[SandboxIR][NFC] Move Instruction classes into a separate file (#110294)


# 42c5a301 18-Sep-2024 vporpo <vporpodas@google.com>

[SandboxVec] Legality boilerplate (#108650)

This patch adds the basic API for the Legality component of the
vectorizer. It also adds some very basic code in the bottom-up
vectorizer that uses the

[SandboxVec] Legality boilerplate (#108650)

This patch adds the basic API for the Legality component of the
vectorizer. It also adds some very basic code in the bottom-up
vectorizer that uses the API.

show more ...