Skip to content

add support for Hexagon HVX#500

Closed
androm3da wants to merge 2 commits intorust-lang:masterfrom
androm3da:bcain/hexagon_hvx
Closed

add support for Hexagon HVX#500
androm3da wants to merge 2 commits intorust-lang:masterfrom
androm3da:bcain/hexagon_hvx

Conversation

@androm3da
Copy link

@androm3da androm3da commented Jan 23, 2026

Add support for HVX, omitting support for 128-lane for now.

@programmerjake
Copy link
Member

quite a lot of the library assumes the max lane count is 64, at the very least basically all the tests that only test up to 64 lanes should also test more than 64 lanes. also the bitmasks code uses u64 so is restricted to at most 64 lanes.

@programmerjake
Copy link
Member

programmerjake commented Jan 23, 2026

getting all the tests to pass with 128 lanes is going to be a lot of work and be somewhat controversial (though we do want to increase the limit to more than 128 at some point), so if you want this PR to have a good chance of getting merged quickly, I'd suggest leaving out the change to 128 lanes and maybe just have the 1 byte x 128 lanes hexagon types be commented out for now with a fixme to re-enable them when we get around to adding support for >64 lanes.

@androm3da
Copy link
Author

somewhat controversial

Would it be a good idea for me to create an MCP?

getting merged quickly

I'm not in a hurry.

leaving out the change to 128 lanes and maybe just have the 1 byte x 128 lanes hexagon types be commented out for now with a fixme to re-enable them when we get around to adding support for >64 lanes.

Sounds good to me: will do.

@androm3da
Copy link
Author

BTW: not sure if I understood the goal of the checklist but 3e0f44c Add comprehensive edge case tests for SIMD operations was intended to handle that.

@androm3da androm3da changed the title add support for Hexagon HVX ; Increase lane limit to 128 add support for Hexagon HVX Jan 23, 2026
@programmerjake
Copy link
Member

somewhat controversial

Would it be a good idea for me to create an MCP?

It's probably not necessary.

BTW: not sure if I understood the goal of the checklist but 3e0f44c Add comprehensive edge case tests for SIMD operations was intended to handle that.

the checklist is more for if you were adding new functions like sin or ilog10 which are non-trivial, you're adding new types where the actual conversion code is pretty trivial so testing the conversions isn't that important.

@androm3da
Copy link
Author

the checklist is more for if you were adding new functions like sin or ilog10 which are non-trivial, you're adding new types where the actual conversion code is pretty trivial so testing the conversions isn't that important.

Ok so should I drop 3e0f44c ? Seems like it's not necessary.

@programmerjake
Copy link
Member

the checklist is more for if you were adding new functions like sin or ilog10 which are non-trivial, you're adding new types where the actual conversion code is pretty trivial so testing the conversions isn't that important.

Ok so should I drop 3e0f44c ? Seems like it's not necessary.

it isn't necessary for this PR.

@androm3da
Copy link
Author

Sorry: I misunderstood how this crate gets integrated - I will need to land rust-lang/stdarch#1999 first and then re-evaluate the design of HVX in portable-simd after that. Closing.

@androm3da androm3da closed this Jan 27, 2026
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

Successfully merging this pull request may close these issues.

2 participants