about summary refs log tree commit diff
path: root/tests/ui/cmse-nonsecure
AgeCommit message (Collapse)AuthorLines
2025-10-01Don't create a top-level `true` directory when running UI testsZalathar-3/+4
2025-09-30Rollup merge of #146649 - folkertdev:cmse-call-erase-regions, r=lcnrStuart Cook-0/+39
cmse: fix 'region variables should not be hashed' tracking issue: https://github.com/rust-lang/rust/issues/81391 fixes https://github.com/rust-lang/rust/issues/131639 Some background: the `cmse-nonsecure-call` calling convention is used for a call from "secure" to "non-secure" code. To make sure that "non-secure" cannot read any secrets, restrictions are put on the signatures of functions with this calling convention: they can only use 4 arguments for passing arguments, and one register for passing a result. No arguments are passed via the stack, and all other registers are cleared before the call. We check during `hir_ty_lowering` that the signature follows these rules. We do that by determining and then inspecting the layout of the type. That works well overall, but can run into asserts when the type itself is ill-formed. This PR fixes one such case. I believe that the fix here, just erasing the regions, is the right shape, but there may be some nuance that I'm missing. r? types
2025-09-16cmse: fix 'region variables should not be hashed'Folkert de Vries-0/+39
2025-09-16fix issue with `cmse-nonsecure-entry` ABI being both async and c-variadicFolkert de Vries-23/+99
2025-09-09c-variadic: reject functions with unsupported extern ABIFolkert de Vries-3/+7
2025-09-08c-variadic: update cmse-nonsecure exampleFolkert de Vries-19/+15
2025-09-02stabilize extended_varargs_abi_supportRalf Jung-2/+2
2025-06-25tests: bless s/C-cmse/cmse/Jubilee Young-227/+227
2025-06-25tests: s/C-cmse/cmse/Jubilee Young-100/+100
2025-06-23tests: Update and bless cmse-nonsecure ABI testsJubilee Young-32/+29
2025-06-13variadic functions: remove list of supported ABIs from errorRalf Jung-2/+2
2025-03-03Bless UI testsTamme Dittrich-0/+10
2025-02-24tests: use minicore moreDavid Wood-97/+92
minicore makes it much easier to add new language items to all of the existing `no_core` tests.
2025-02-13Rollup merge of #136948 - workingjubilee:split-off-extern-system-varargs, ↵Jacob Pratt-2/+2
r=compiler-errors Split out the `extern_system_varargs` feature After the stabilization PR was opened, `extern "system"` functions were added to `extended_varargs_abi_support`. This has a number of questions regarding it that were not discussed and were somewhat surprising. It deserves to be considered as its own feature, separate from `extended_varargs_abi_support`. Tracking issue: - https://github.com/rust-lang/rust/issues/136946
2025-02-12Split out the `extern_system_varargs` featureJubilee Young-2/+2
After the stabilization PR was opened, `extern "system"` functions were added to `extended_varargs_abi_support`. This has a number of questions regarding it that were not discussed and were somewhat surprising. It deserves to be considered as its own feature, separate from `extended_varargs_abi_support`.
2025-02-13Use core stubs in some CMSE testsMichael Goulet-20/+19
2025-02-11Revert "Stabilize `extended_varargs_abi_support`"Jubilee Young-2/+2
This reverts commit 685f189b4307435b83d625fea397ef36dff4e955.
2025-02-11Auto merge of #136845 - matthiaskrgr:rollup-ol4np4z, r=matthiaskrgrbors-2/+2
Rollup of 7 pull requests Successful merges: - #136107 (Introduce CoercePointeeWellformed for coherence checks at typeck stage) - #136155 (Enable sanitizers on MSVC CI jobs) - #136524 (Delay bug when method confirmation cannot upcast object pick of self) - #136584 (Prevent generic pattern types from being used in libstd) - #136603 (compiler: gate `extern "{abi}"` in ast_lowering) - #136821 (assign marcoieni and jdno to infra-ci PRs) - #136825 (Update books) r? `@ghost` `@rustbot` modify labels: rollup
2025-02-10Show diff suggestion format on verbose replacementEsteban Küber-2/+3
``` error[E0610]: `{integer}` is a primitive type and therefore doesn't have fields --> $DIR/attempted-access-non-fatal.rs:7:15 | LL | let _ = 2.l; | ^ | help: if intended to be a floating point literal, consider adding a `0` after the period and a `f64` suffix | LL - let _ = 2.l; LL + let _ = 2.0f64; | ```
2025-02-09tests: error strings for ABI stability now matchJubilee Young-2/+2
2025-01-27Remove all dead files inside tests/ui/León Orell Valerian Liehr-9/+0
2024-11-27Stabilize `extended_varargs_abi_support`Soveu-2/+2
2024-10-14improve error messages for `C-cmse-nonsecure-entry` functionsFolkert de Vries-41/+490
2024-09-23Check ABI target compatibility for function pointersTamme Dittrich-2/+3
This check was previously only performed on functions not function pointers. Co-authored-by: Folkert <folkert@folkertdev.nl>
2024-09-21disallow cmse ABIs on unsupported platformsFolkert-4/+37
2024-09-21add test that accepts a `C-cmse-nonsecure-call` function pointerFolkert-0/+20
2024-09-21remove `#[cmse_nonsecure_entry]`Folkert-76/+35
2024-09-07fix ICE in CMSE type validationFolkert de Vries-8/+62
2024-07-18improve error reportingFolkert-19/+28
2024-07-18move CMSE validation to hir_analysisFolkert-193/+159
2024-07-17add test for unions and repr(transparent) with ZST fieldsFolkert-3/+66
2024-07-17add test for repr(transparent) enumFolkert-5/+12
2024-07-16add more tests for `cmse-nonsecure-call` stack spillsFolkert-62/+280
2024-07-16add rust error message for CMSE stack spillFolkert-10/+17
when the `C-cmse-nonsecure-call` ABI is used, arguments and return values must be passed via registers. Failing to do so (i.e. spilling to the stack) causes an LLVM error down the line, but now rustc will properly emit an error a bit earlier in the chain
2024-02-16[AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives许杰友 Jieyou Xu (Joe)-19/+19
2024-02-08Continue to borrowck even if there were previous errorsOli Scherer-3/+6
2024-01-13Bless testsGeorge-lewis-0/+2
Update tests
2023-11-24Show number in error message even for one errorNilstrieb-8/+8
Co-authored-by: Adrian <adrian.iosdev@gmail.com>
2023-01-11Move /src/test to /testsAlbert Larsan-0/+243