Luo Jia
935d5297e3
Fix avx512f build on x86-32; fix avx512gfni test fail ( #1264 )
2021-12-09 12:30:22 +00:00
Luo Jia
72061cb5f5
RISC-V feature and detect macro ( #1263 )
2021-12-08 11:41:12 +00:00
Luo Jia
3d0bdfeeb1
Add RISC-V platform and PAUSE instruction ( #1262 )
2021-12-05 02:57:53 +00:00
Eric Huss
0256736d2f
Fix _mm_extract_ps example. ( #1261 )
2021-12-04 13:04:09 +00:00
Jörn Horstmann
54d690dc70
Implement avx512 masked load and store intrinsics ( #1254 )
2021-12-04 13:03:40 +00:00
Amanieu d'Antras
937978eeef
Update the intrinsic checker tool ( #1258 )
2021-12-04 13:03:30 +00:00
Tobias Kortkamp
972030f2b2
Support riscv64gc-unknown-freebsd ( #1260 )
2021-11-27 14:01:23 +00:00
Amanieu d'Antras
ca1f7cc1a6
Add missing vtst_p16 and vtstq_p16 intrinsics ( #1257 )
2021-11-20 20:51:37 +00:00
Thom Chiovoloni
08a70f96fe
Work-around buggy Intel chips erroneously reporting BMI1/BMI2 support ( #1249 )
2021-11-19 01:29:04 +00:00
Sparrow Li
7c3bd04537
complete armv8 instructions ( #1256 )
2021-11-19 01:24:36 +00:00
Eric Huss
1e2dcdcbd4
Fix i8mm feature with bootstrap compiler. ( #1252 )
2021-11-15 03:12:25 +00:00
Eric Huss
a7d3ae0d6b
Fix unused link_name attribute. ( #1251 )
2021-11-13 19:20:11 +00:00
Sparrow Li
be5e1be224
Add remaining insturctions ( #1250 )
...
* add vmmla vusmmla vsm4e vsm3 vrax1 vxar vsha512 vbcax veor3 neon instructions
* update runtime feature detect
* correct tests
* add `vrnd32x` `vrnd64x`
* add MISSING.md
2021-11-10 15:19:59 +00:00
senevoldsen
46d0e8d519
Remove that _mm256_set_epi8 sets in reversed order. ( #1248 )
2021-11-08 00:58:47 +00:00
Amanieu d'Antras
023a926d39
Make the wasm and wasm64 modules unstable ( #1247 )
2021-11-05 02:50:23 +00:00
Jamie Cunliffe
b04e740f24
Handle intrinsics with constraints in the test tool. ( #1237 )
2021-11-05 01:47:31 +00:00
Jamie Cunliffe
8d6f3f36b3
Correct the vqrdmlah intrinsics. ( #1246 )
2021-11-04 14:16:26 +00:00
Alex Crichton
157d273c5c
Fix parsing a doc block for _mm_extract_ps ( #1242 )
2021-11-01 23:00:59 +00:00
devsnek
d98a902f20
expose wasm intrinsics using target_family = "wasm" ( #1241 )
2021-10-31 18:12:24 +00:00
Alex Crichton
05aad76b58
Add a rudimentary wasm64 module with intrinsics ( #1240 )
2021-10-30 22:14:54 +01:00
Jamie Cunliffe
813530237d
Do not emit undefined lshr/ashr for Neon shifts ( #1238 )
2021-10-22 20:24:54 +01:00
Sparrow Li
9df48f1e57
Complete the remaining neon instructions ( #1230 )
2021-10-21 10:52:05 +01:00
Taiki Endo
42ae943ab4
Fix error message of is_*_feature_detected on nort_feature ( #1232 )
2021-10-16 22:22:47 +01:00
Jubilee
b86a083d10
Add example to _mm_extract_ps ( #1228 )
2021-10-06 10:34:54 +01:00
Sparrow Li
68e35d306f
Complete vld* and vst* neon instructions ( #1224 )
2021-09-29 04:28:10 +01:00
Sparrow Li
bdea403c54
Complete vst1 neon instructions ( #1221 )
2021-09-24 13:26:29 +01:00
Hans Kratz
26cce19427
Make dedup guard optional ( #1215 )
2021-09-20 17:19:05 +01:00
Hans Kratz
504b0cf68b
Arm Fused Multiply-Add fixes ( #1219 )
2021-09-20 17:18:20 +01:00
Sparrow Li
328553ef64
Complete vld1 instructions with some corrections ( #1216 )
2021-09-18 14:13:24 +01:00
Hans Kratz
4f8ed0335c
Check inlining and instruction count for assert_instr(nop) as well ( #1218 )
2021-09-18 01:53:32 +01:00
Jamie Cunliffe
bd0e352338
Intrinsic test tool to compare neon intrinsics with C ( #1170 )
2021-09-09 19:16:45 +01:00
Hans Kratz
5cd6850171
Normalize [us]shll.* ..., #0 aarch64 disassembly to the preferred [us]xtl.* ( #1213 )
2021-09-08 23:41:31 +01:00
Hans Kratz
00f611f305
Change aarch64 vld1* instructions to not cause individual loads ( #1207 )
2021-09-08 23:40:49 +01:00
Hans Kratz
bf2122753a
Disable arm inlining check again for now as some tests are still failing.
2021-09-09 00:22:33 +02:00
Hans Kratz
5995d769ad
Use a lighter dedup guard in the assert_instr test shims.
2021-09-09 00:22:33 +02:00
Hans Kratz
755e622d17
Implement proper subroutine call detection for x86, x86_64, aarch64 and wasm32.
2021-09-08 19:14:13 +02:00
Hans Kratz
03fa985cf0
remove assembly parsing special case for otool output (no longer needed)
2021-09-08 19:14:13 +02:00
Hans Kratz
999d954aa4
using v8.6a target feature to cover more instructions
2021-09-08 19:14:13 +02:00
Hans Kratz
f5af9d15a9
Use objdump on Macos x86_64 as well.
2021-09-08 19:14:13 +02:00
Hans Kratz
f15c851517
Use LLVM objdump on Macos ARM64 because it is not possible to enable TME support with otool
2021-09-08 19:14:13 +02:00
Sparrow Li
9e34c6d4c8
Add vst neon instructions ( #1205 )
...
* add vst neon instructions
* modify the instruction limit
2021-08-31 21:35:30 +01:00
Joshua Liebow-Feeser
c9e0420448
powerpc::vector_bool_long is a vector of two i64s ( #1204 )
2021-08-27 17:33:23 +01:00
Sparrow Li
4baf95fddd
add vldx neon instructions ( #1200 )
2021-08-24 19:51:30 +01:00
Alex Crichton
b10d00cae0
Update codegen for simd wasm intrinsics with LLVM 13 ( #1203 )
2021-08-23 01:45:59 +01:00
Frank Steffahn
870cf5751d
Fix typos “an”→“a”
2021-08-22 18:55:49 +01:00
Frank Steffahn
5b5df599d3
Fix typos “a”→“an”
2021-08-22 18:55:49 +01:00
Pierre Krieger
78bef173f4
Fix "it's purpose" -> "its purpose"
2021-08-14 17:44:03 +01:00
Ömer Sinan Ağacan
103e90de1d
Rewording in Wasm all_true SIMD instruction docs
...
- Use "true" and "false" instead of "1" and "0"
- "nonzero" -> "non-zero"
- "returns true if ... or false if ..." -> "returns true ..., false
otherwise"
2021-08-14 09:28:29 +01:00
Aleksey Kladov
e91f80fc22
mark core::arch::wasm32::unreachable as safe
...
This intrinsic doesn't have any preconditions and is always safe to
call, so it can be safe.
This function is already stable, but dropping `unsafe` is a backwards
compatible change.
Note tha we already have a precedent for wasm intrinsics being safe --
wasm simd is safe.
It is relatively practically important to mark this safe --
wasm32::unreachable is directly useful in practice as more codesize
efficient `panic!()`.
2021-08-12 11:09:05 +01:00
Mara Bos
685e8d906d
Remove references to the crates on crates.io.
...
They haven't been published in years. This removes the suggestion that
the crates on crates.io are actively updated/maintained.
2021-08-12 00:24:32 +01:00