new test blog

Bla bla bla
Image:

Searching for the sqdmlal instruction in the AArch64 backend led me to this piece of code:
https://github.com/llvm/llvm-project/blob/d781ac1cf0d561b79f6ff834d786c6a999429901/llvm/lib/Target/AArch64/AArch64InstrInfo.td#L6202-L6214
defm SQDMLAL : SIMDThreeScalarMixedTiedHS<0, 0b10010, "sqdmlal">;
def : Pat<(i64 (int_aarch64_neon_sqadd (i64 FPR64:$Rd),
(i64 (int_aarch64_neon_sqdmulls_scalar (i32 FPR32:$Rn),
(i32 FPR32:$Rm))))),
(SQDMLALi32 FPR64:$Rd, FPR32:$Rn, FPR32:$Rm)>;
| name | fastest | slowest | median | mean | samples | iters |
|---|---|---|---|---|---|---|
| compare256_new equal | 6.745 ns | 12.22 ns | 7.374 ns | 7.408 ns | 100 | 51200 |
| compare256_new early return | 4.066 ns | 4.165 ns | 4.124 ns | 4.125 ns | 100 | 51200 |
| compare256_old equal | 45.46 ns | 85.59 ns | 45.81 ns | 48.16 ns | 100 | 3200 |
| compare256_old early return | 24.28 ns | 48.53 ns | 24.35 ns | 24.59 ns | 100 | 12800 |
Using core::intrinsics::simd
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus eleifend tortor vel eleifend mollis. Nulla vel feugiat urna. Maecenas vitae lobortis magna, sed hendrerit tortor. Ut molestie est metus, vitae luctus massa vehicula eget. Quisque accumsan arcu ultricies diam pellentesque, quis laoreet arcu efficitur. Etiam ut euismod erat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Mauris et lacinia purus. Donec ut est in dolor venenatis sodales ut quis orci.
Vivamus id scelerisque lacus. Proin porttitor velit vel nibh rutrum auctor. Nullam dictum elit condimentum, pharetra ligula vel, luctus lacus. Nulla sodales leo at scelerisque cursus. Praesent nec metus vitae ex sodales hendrerit et pellentesque lacus. Aliquam ut varius justo. Ut lorem ipsum, auctor ac erat commodo, iaculis tempus elit. Nunc efficitur neque ipsum, eget consequat elit laoreet in. Phasellus et magna sed orci volutpat aliquet. Donec volutpat, erat vel interdum congue, mauris tellus mattis ex, ac consequat tortor mi non nulla. Sed vulputate justo ac vehicula vehicula. Vivamus arcu ante, cursus ut tincidunt eu, ultrices a magna.
Nulla lectus libero, blandit nec feugiat ut, auctor nec quam. Aliquam non velit ante. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam bibendum vel elit quis elementum. Ut quis cursus ante, tempor vulputate urna. Donec placerat, nibh viverra malesuada sodales, quam dolor suscipit purus, at commodo leo sem et sem. Ut ac convallis felis, sed pellentesque arcu. Ut a dui vulputate, fermentum eros non, eleifend dui. Nullam accumsan mauris eget lacinia consequat.
Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam non lacinia ipsum. Nullam sit amet fermentum dui. In placerat, tortor non sagittis elementum, augue est feugiat augue, et rutrum magna nisl sed justo. Integer rutrum vulputate mauris, nec tristique nibh tincidunt in. Proin nibh ipsum, tincidunt nec dui nec, porttitor gravida urna. Aenean fermentum efficitur orci, et ullamcorper ante venenatis vel. In hac habitasse platea dictumst. Vestibulum eleifend nunc at blandit aliquet. Nulla non eros a odio semper porta. Aenean pellentesque finibus maximus. Mauris vestibulum dui sit amet nunc mollis mattis.
Suspendisse nec scelerisque est, ac rutrum metus. Nulla euismod consequat felis quis pellentesque. Phasellus laoreet rhoncus nunc vel accumsan. Suspendisse eu risus quam. Mauris iaculis nibh iaculis enim fringilla malesuada quis sit amet tellus. Pellentesque ante lectus, varius eget auctor non, mattis nec dolor. Vestibulum quis magna non turpis consectetur consequat vitae a justo. Praesent tempor dignissim justo ac sodales. Maecenas rutrum, lectus ut venenatis sodales, mi lorem molestie ligula, fermentum tempor eros ex et dui. Sed et leo mi. Suspendisse placerat diam ac nisi accumsan, eleifend dapibus eros tincidunt. Sed tristique rhoncus fringilla. Suspendisse lobortis tristique sapien. Pellentesque id fermentum leo, ut facilisis mauris.
Looking to build on top of openleadr-rs?
Get help from the experts!
- Interoperability with your existing infrastructure
- New platforms and features
- Professional support