| This program emits `psllw` instead of `pslliw` instruction. `pslliw` should be |
| usable here since `imm8` is a constant: |
| |
| ```rust |
| extern crate stdsimd; |
| |
| use std::env; |
| use stdsimd as s; |
| |
| fn main() { |
| let imm8: i32 = env::args().nth(1).unwrap().parse().unwrap(); |
| let a = s::i16x8::new(imm8 as i16, 0, 0, 0, 0, 0, 0, 0); |
| println!("{:?}", s::_mm_slli_epi16(a, 4)); |
| } |
| ``` |
| |
| --- |
| |
| LLVM types the `count` parameter in `_mm_sll_epi16` as `i16x8`, but the right |
| type is probably `i64x2`. |
| |
| --- |
| |
| What is the deal with the ucomi f64 comparison functions in SSE2? Clang's |
| headers indicate some specific behavior with NAN, but I can't seem to reproduce |
| it. Intel's official docs are very vague. |
| |
| --- |
| |
| `_mm256_blendv_pd` takes a mask parameter with type `f64x4`, but the |
| documentation seems to indicate that it is a bit vector. What's going on? |