Brian Cain
f8879e326f
hexagon: Preserve original Q6 naming case for HVX intrinsics
2026-04-08 09:54:47 -07:00
Brian Cain
d6b2cb08a8
examples: Make gaussian build on all targets
...
Restructure gaussian.rs to follow the pattern used by hex.rs and
connect5.rs.
Remove the 'hexagon' feature gate.
2026-02-15 07:10:55 -06:00
Brian Cain
be9dc99118
examples: Use HvxVectorPair for precise Gaussian blur arithmetic
...
Update the Gaussian 3x3 blur example to use HvxVectorPair widening
operations. This demonstrates that HvxVectorPair intrinsics now work
correctly with the updated nightly.
- Add #![cfg(target_arch = "hexagon")] crate-level gate
2026-02-15 07:01:00 -06:00
Brian Cain
5b7ab682b4
examples: Simplify gaussian.rs with cfg gate
...
Add `#![cfg(target_arch = "hexagon")]`
- Remove redundant #[cfg(target_arch = "hexagon")] from functions
- Simplify import and constant cfg conditions
- Remove non-Hexagon test code branch from main()
2026-02-12 11:41:57 -06:00
Brian Cain
eb6bbfa830
examples: Fix rustfmt formatting in gaussian.rs
2026-02-12 07:47:01 -06:00
Brian Cain
736af97d6c
examples: Add assertions to gaussian example
...
Replace print statements with assertions that verify the Gaussian 3x3
blur implementation against the Hexagon SDK reference algorithm.
- Port exact SDK Gaussian3x3u8 implementation from:
/opt/Hexagon_SDK/.../Examples/HVX/gaussian/src/gaussian.c
- Verify specific output values [15, 16, 17, 18, 19, 20, 21, 22]
for row 2, cols 1..9 with test pattern ((x + y*7) % 256)
- Assert byte-averaging approximation exactly matches SDK reference
- On Hexagon: verify HVX output matches both scalar approximation
and SDK reference exactly
2026-02-12 07:33:16 -06:00
Brian Cain
2b710f1a45
Switched to 64b and 128b crate definitions
2026-02-12 07:33:16 -06:00
Brian Cain
0a662d0f72
arch: Add Hexagon HVX instructions
2026-02-12 07:33:16 -06:00