summary refs log tree commit diff
path: root/library/stdarch/crates
AgeCommit message (Collapse)AuthorLines
2025-07-27Auto merge of #144225 - purplesyringa:unwinding-intrinsics, r=nikicbors-0/+10
Don't special-case llvm.* as nounwind Certain LLVM intrinsics, such as `llvm.wasm.throw`, can unwind. Marking them as nounwind causes us to skip cleanup of locals and optimize out `catch_unwind` under inlining or when `llvm.wasm.throw` is used directly by user code. The motivation for forcibly marking llvm.* as nounwind is no longer present: most intrinsics are linked as `extern "C"` or other non-unwinding ABIs, so we won't codegen `invoke` for them anyway. Closes rust-lang/rust#132416. `@rustbot` label +T-compiler +A-panic
2025-07-25Allow ffi_unwind_calls for `arch::wasm32::throw`Alisa Sireneva-0/+10
2025-07-22Move `std_detect` from `library/stdarch` to `library`Jakub Beránek-5427/+0
2025-07-18Merge pull request #1862 from folkertdev/combine-c-filesAmanieu d'Antras-230/+259
`intrinsic-test`: combine C files for faster compilation
2025-07-18Merge pull request #1860 from folkertdev/stdarch-test-cleanupAmanieu d'Antras-137/+397
`stdarch-test`: various cleanups
2025-07-18Merge pull request #1874 from heiher/loong-safeFolkert de Vries-2933/+2940
loongarch: Mark partial intrinsics as safe
2025-07-18loongarch: Mark SIMD intrinsics without memory access as safeWANG Rui-2891/+2901
2025-07-18`intrinsic-test`: combine C files for more efficient compilationFolkert de Vries-230/+259
2025-07-18Merge pull request #1878 from ↵Folkert de Vries-12/+19
madhav-madhusoodanan/intrinsic-test-box-removing-and-more `intrinsic-test`: Implemented DerefMut for ArmIntrinsicTest
2025-07-18Merge pull request #1861 from folkertdev/streamline-c-compilationFolkert de Vries-157/+105
`intrinsic-test`: streamline c compilation
2025-07-18Merge pull request #1877 from folkertdev/check-stdarch-genFolkert de Vries-2/+2
Check that the checked-in version of `stdarch-gen-{arm, loongarch}` is up-to-date
2025-07-18improve cpp compiler executionFolkert de Vries-144/+92
2025-07-18pass the whole config to C compiler constructionFolkert de Vries-29/+29
2025-07-18loongarch: Mark partial basic intrinsics as safeWANG Rui-44/+41
2025-07-17`stdarch-test`: for now, allow if only part of an instruction matchedFolkert de Vries-3/+5
2025-07-17test for the high version of a number of instructionsFolkert de Vries-44/+44
2025-07-16Implemented DerefMut for ArmIntrinsicTestMadhav Madhusoodanan-12/+19
More details: 1. Moved the return type of IntrinsicType::from_c to Rust<Self, String> from Result<Box<Self>, String>
2025-07-16fix space in generated loongarchFolkert de Vries-2/+2
2025-07-16Merge pull request #1875 from sayantn/sde-updateAmanieu d'Antras-4/+4
Bump CI versions
2025-07-16Update `wasmprinter` to latestsayantn-1/+1
2025-07-16Bump versions in CIsayantn-3/+3
- `clang-19` -> `clang-20` in ARM - `gcc-14.2` -> `gcc-14.3` in AArch64-BE - `gcc-14` ->`gcc-15` in LA64 - `riscv-gnu-v2025.01.20` -> `riscv-gnu-v2025.07.03` in Risc-V 32 - `wasmtime-v18.0.2` -> `wasmtime-v34.0.1`
2025-07-16Modified Typekind to group the Signed and Unsigned version of types.Madhav Madhusoodanan-31/+72
2025-07-15`aarch64`: check for `trn1` and `trn2`Folkert de Vries-19/+89
2025-07-15`aarch64`: check for `uzp1` and `uzp2`Folkert de Vries-19/+89
2025-07-15`aarch64`: check for `zip1` and `zip2`Folkert de Vries-34/+144
2025-07-15aarch64/arm: fix tests that matched on prefix of instructionFolkert de Vries-2/+2
2025-07-15s390x: fix tests that matched on prefix of instructionFolkert de Vries-4/+4
2025-07-15`stdarch-test`: error if only part of an instruction matchedFolkert de Vries-1/+7
2025-07-15`stdarch-test`: misc cleanupsFolkert de Vries-7/+14
2025-07-15`stdarch-test`: use `std::sync::LazyLock` instead of `lazy_static!`Folkert de Vries-7/+2
2025-07-15Merge pull request #1872 from folkertdev/aarch64-horizontal-addAmanieu d'Antras-244/+102
`aarch64`: use `intrinsics::simd` for horizontal add and `abs`
2025-07-15`aarch64`: implement `vabs` using `instrinsics::simd`Folkert de Vries-27/+44
2025-07-14Merge pull request #1869 from folkertdev/s390x-use-rounding-intrinsicAmanieu d'Antras-3/+14
`s390x`: document the different rounding flavors
2025-07-14Merge pull request #1837 from heiher/loong32Amanieu d'Antras-247/+327
loongarch: Add basic support for LoongArch32
2025-07-14Merge pull request #1871 from folkertdev/aarch64-float-min-maxAmanieu d'Antras-491/+66
`aarch64`: use more of `intrinsics::simd` for min/max
2025-07-14Merge pull request #1852 from folkertdev/optimize-intrinsic-testAmanieu d'Antras-74/+72
`intrinsic-test`: use runner also for rust
2025-07-14`s390x`: document the different rounding flavorsFolkert de Vries-3/+14
2025-07-12`aarch64`: use `simd_reduce_add_unordered`Folkert de Vries-217/+58
2025-07-12`aarch64`: use `simd_reduce_min` and `simd_reduce_max` for integersFolkert de Vries-212/+28
2025-07-12`aarch64`: use `simd_reduce_min` and `simd_reduce_max` for floatsFolkert de Vries-110/+16
2025-07-12`arm`: use `simd_fmin` and `simd_fmax`Folkert de Vries-100/+12
2025-07-12`aarch64`: use `simd_fmin` and `simd_fmax`Folkert de Vries-43/+6
2025-07-12`aarch64`: use `f16::min` and `f16::max`Folkert de Vries-26/+4
2025-07-11Merge pull request #1868 from folkertdev/gen-arm-remove-lazy-staticFolkert de Vries-30/+21
`stdarch-gen-arm`: remove `lazy_static`, use `LazyLock` instead
2025-07-11Merge pull request #1858 from folkertdev/aarch-comparison-operatorsSayantan Chakraborty-220/+80
aarch64: use `core::intrinsics::simd` for integer min/max
2025-07-12`stdarch-gen-arm`: remove `lazy_static`, use `LazyLock` insteadFolkert de Vries-30/+21
2025-07-11Merge pull request #1867 from hkBst/fix-test-neonFolkert de Vries-1/+1
tests: neon is arm
2025-07-11tests: neon is armMarijn Schouten-1/+1
2025-07-11thumbv7neon-unknown-linux-gnueabihf clippy fixesMarijn Schouten-113/+38
2025-07-10Merge pull request #1857 from folkertdev/arm-dupSayantan Chakraborty-67/+44
use `splat` for the aarch64/arm dup intrinsics