vporpo
6409799bdc
[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.
2025-01-24 15:39:37 -08:00
vporpo
fd087135ef
[SandboxVec][Legality] Diamond reuse multi input ( #123426 )
...
This patch implements the diamond pattern where we are vectorizing
toward the top of the diamond from both edges, but the second edge may
use elements from a different vector or just scalar values. This
requires some additional packing code (see lit test).
2025-01-22 15:23:47 -08:00
vporpo
87e4b68195
[SandboxVec][Legality] Implement ShuffleMask ( #123404 )
...
This patch implements a helper ShuffleMask data structure that helps
describe shuffles of elements across lanes.
2025-01-17 15:48:24 -08:00
vporpo
e902c6960c
[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.
2025-01-16 15:26:35 -08:00
vporpo
ce0d085842
[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.
2024-11-05 14:54:21 -08:00
vporpo
083369fd99
[SandboxVec][Legality] Per opcode checks ( #114145 )
...
This patch adds more opcode-specific legality checks.
2024-11-01 15:04:03 -07:00
vporpo
ca998b071e
[SandboxVec][Legality] Check wrap flags ( #113975 )
2024-10-29 15:37:03 -07:00
vporpo
bf4b31ad54
[SandboxVec][Legality] Check Fastmath flags ( #113967 )
2024-10-28 15:32:20 -07:00
vporpo
5ea694816b
[SandboxVec][Legality] Check opcodes and types ( #113741 )
2024-10-28 14:05:58 -07:00
Vasileios Porpodas
1540f772c7
Reapply "[SandboxVec][Legality] Reject non-instructions ( #113190 )"
...
This reverts commit eb9f4756bc3daaa4b19f4f46521dc05180814de4.
2024-10-25 12:55:58 -07:00
Vasileios Porpodas
eb9f4756bc
Revert "[SandboxVec][Legality] Reject non-instructions ( #113190 )"
...
This reverts commit 6c9bbbc818ae8a0d2849dbc1ebd84a220cc27d20.
2024-10-25 12:52:31 -07:00
vporpo
6c9bbbc818
[SandboxVec][Legality] Reject non-instructions ( #113190 )
2024-10-25 12:47:19 -07:00
vporpo
54c93aabec
[SandboxVec][Legality] Scaffolding for Legality ( #112623 )
...
This patch adds a LegalityResultWithReason class for describing the
reason why legality decided not to vectorize the code.
2024-10-21 09:17:46 -07:00