Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking bug for SVE2 scalable vector todos. #8119

Open
zvookin opened this issue Feb 22, 2024 · 0 comments
Open

Tracking bug for SVE2 scalable vector todos. #8119

zvookin opened this issue Feb 22, 2024 · 0 comments

Comments

@zvookin
Copy link
Member

zvookin commented Feb 22, 2024

LLVM crashes with scalable vectors that have minimum size of 1. Some cases that would use scalable vectors are using fixed vectors to avoid this.

Architecture specific choice about whether to use fixed or scalable vectors is hardwired into CodeGen_LLVM::get_vector_type. If this cannot be made architecture agnostic, it should be moved into the architecture specific derived class. (Currently CodeGen_LLVM::get_vector_type is not virtual and changing that should like be measured for performance first.)

Boolean vector types are implicitly represented using bytes, which makes sense for some but not all cases, Specifically bit mask operations, etc. This is partially a language thing and partially a question of whether the current implementation is good. It might be better to to this via Halide IR regularization before LLVM codegen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant