rust/compiler
许杰友 Jieyou Xu (Joe) 1aa01927d3
Rollup merge of #131551 - taiki-e:ppc-asm-vreg-inout, r=Amanieu
Support input/output in vector registers of PowerPC inline assembly

This extends currently clobber-only vector registers (`vreg`) support to allow passing `#[repr(simd)]` types as input/output.

| Architecture | Register class | Target feature | Allowed types |
| ------------ | -------------- | -------------- | -------------- |
| PowerPC      | `vreg` | `altivec` | `i8x16`, `i16x8`, `i32x4`, `f32x4` |
| PowerPC      | `vreg` | `vsx` | `f32`, `f64`, `i64x2`, `f64x2` |

In addition to floats and `core::simd` types listed above, `core::arch` types and custom `#[repr(simd)]` types of the same size and type are also allowed. All allowed types and relevant target features are currently unstable.

r? `@Amanieu`

`@rustbot` label +O-PowerPC +A-inline-assembly
2024-11-30 12:57:32 +08:00
..
rustc Auto merge of #132282 - Noratrieb:it-is-the-end-of-serial, r=cjgillot 2024-11-12 15:14:56 +00:00
rustc_abi Auto merge of #130867 - michirakara:steps_between, r=dtolnay 2024-11-22 10:54:22 +00:00
rustc_arena move strict provenance lints to new feature gate, remove old feature gates 2024-10-21 15:22:17 +01:00
rustc_ast always create DefIds when lowering anon-consts 2024-11-28 12:22:02 +00:00
rustc_ast_ir Add sugar for &pin (const|mut) types 2024-10-07 11:15:04 -07:00
rustc_ast_lowering Auto merge of #133468 - lcnr:uwu4, r=BoxyUwU 2024-11-28 15:58:17 +00:00
rustc_ast_passes Refactor where predicates, and reserve for attributes support 2024-11-25 16:38:35 +08:00
rustc_ast_pretty Rollup merge of #133140 - dtolnay:precedence, r=fmease 2024-11-26 12:03:41 -05:00
rustc_attr ensure that all publicly reachable const fn have const stability info 2024-11-10 10:16:26 +01:00
rustc_baked_icu_data Delete the cfg(not(parallel)) serial compiler 2024-11-12 13:38:58 +00:00
rustc_borrowck uplift fold_regions to rustc_type_ir 2024-11-28 10:40:58 +01:00
rustc_builtin_macros update cfgs 2024-11-27 15:14:54 +00:00
rustc_codegen_cranelift Rollup merge of #133422 - taiki-e:riscv-e-clobber-abi, r=Amanieu 2024-11-28 12:06:01 +01:00
rustc_codegen_gcc Support #[repr(simd)] types in input/output of PowerPC inline assembly 2024-11-29 00:24:36 +09:00
rustc_codegen_llvm Rollup merge of #131551 - taiki-e:ppc-asm-vreg-inout, r=Amanieu 2024-11-30 12:57:32 +08:00
rustc_codegen_ssa Auto merge of #123244 - Mark-Simulacrum:share-inline-never-generics, r=saethlin 2024-11-28 21:44:34 +00:00
rustc_const_eval Move always_storage_live_locals. 2024-11-26 12:05:57 +11:00
rustc_data_structures Add UnordMap::clear method 2024-11-20 18:11:37 +01:00
rustc_driver Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_driver_impl Rollup merge of #133590 - nnethercote:rename-parse-only, r=estebank 2024-11-29 10:19:00 +01:00
rustc_error_codes remove support for rustc_safe_intrinsic attribute; use rustc_intrinsic functions instead 2024-11-08 09:16:00 +01:00
rustc_error_messages Delete the cfg(not(parallel)) serial compiler 2024-11-12 13:38:58 +00:00
rustc_errors Auto merge of #132954 - matthiaskrgr:rollup-x3rww9h, r=matthiaskrgr 2024-11-12 18:04:27 +00:00
rustc_expand Implement the unsafe-fields RFC. 2024-11-21 19:32:07 +01:00
rustc_feature replace placeholder version 2024-11-27 12:10:21 +00:00
rustc_fluent_macro use tracked_path in rustc_fluent_macro 2024-10-19 22:32:38 +08:00
rustc_fs_util Couple of changes to make it easier to compile rustc for wasm 2024-09-26 19:51:14 +00:00
rustc_graphviz Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_hir update comment 2024-11-28 12:22:02 +00:00
rustc_hir_analysis support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_hir_pretty Rollup merge of #133140 - dtolnay:precedence, r=fmease 2024-11-26 12:03:41 -05:00
rustc_hir_typeck Rollup merge of #133538 - dev-ardi:69232-better-diag, r=compiler-errors 2024-11-29 10:18:59 +01:00
rustc_incremental Move some code from Compiler::enter to GlobalCtxt::finish 2024-11-09 17:55:39 +00:00
rustc_index Remove HybridBitSet. 2024-11-29 17:23:34 +11:00
rustc_index_macros Auto merge of #130867 - michirakara:steps_between, r=dtolnay 2024-11-22 10:54:22 +00:00
rustc_infer support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_interface Rollup merge of #133590 - nnethercote:rename-parse-only, r=estebank 2024-11-29 10:19:00 +01:00
rustc_lexer Clean up c_or_byte_string. 2024-11-25 16:10:55 +11:00
rustc_lint Rollup merge of #133487 - pitaj:reserve-guarded-strings, r=fee1-dead 2024-11-28 12:06:04 +01:00
rustc_lint_defs fix confusing diagnostic for reserved ## 2024-11-25 22:29:14 -07:00
rustc_llvm Rollup merge of #127483 - BertalanD:no_sanitize-global-var, r=rcvalle 2024-11-23 20:19:51 +08:00
rustc_log Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_macros give a better error for tuple structs in derive(Diagnostic) 2024-10-27 21:23:28 -04:00
rustc_metadata always create DefIds when lowering anon-consts 2024-11-28 12:22:02 +00:00
rustc_middle Rollup merge of #133501 - lcnr:post-borrowck-analysis, r=compiler-errors 2024-11-29 10:18:57 +01:00
rustc_mir_build fix a comment with uneven number of backticks in rustc_mir_build 2024-11-28 21:54:27 +01:00
rustc_mir_dataflow Stop using HybridBitSet in dataflow diffs. 2024-11-29 17:23:34 +11:00
rustc_mir_transform Revert "Rollup merge of #133418 - Zalathar:spans, r=jieyouxu" 2024-11-29 14:57:01 +11:00
rustc_monomorphize Share inline(never) generics across crates 2024-11-28 13:43:05 -05:00
rustc_next_trait_solver support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_parse Rollup merge of #133560 - clubby789:mut-mut-space, r=jieyouxu 2024-11-28 12:06:07 +01:00
rustc_parse_format Remove 'apostrophes' from rustc_parse_format 2024-10-14 23:22:51 +02:00
rustc_passes Refactor where predicates, and reserve for attributes support 2024-11-25 16:38:35 +08:00
rustc_pattern_analysis no more Reveal :( 2024-11-23 13:52:54 +01:00
rustc_privacy Simplify some places that deal with generic parameter defaults 2024-11-11 21:29:18 +01:00
rustc_query_impl Rollup merge of #132410 - bjorn3:yet_another_driver_refactor_round, r=cjgillot 2024-11-27 22:23:24 +01:00
rustc_query_system Auto merge of #124780 - Mark-Simulacrum:lockless-cache, r=lcnr 2024-11-19 02:07:48 +00:00
rustc_resolve always create DefIds when lowering anon-consts 2024-11-28 12:22:02 +00:00
rustc_sanitizers use TypingEnv when no infcx is available 2024-11-18 10:38:56 +01:00
rustc_serialize Fix explicit_iter_loop in rustc_serialize 2024-10-16 15:44:16 +02:00
rustc_session Update -Zshow-span help message. 2024-11-29 06:10:16 +11:00
rustc_smir Rollup merge of #132410 - bjorn3:yet_another_driver_refactor_round, r=cjgillot 2024-11-27 22:23:24 +01:00
rustc_span Support #[repr(simd)] types in input/output of PowerPC inline assembly 2024-11-29 00:24:36 +09:00
rustc_symbol_mangling additional TypingEnv cleanups 2024-11-19 21:36:23 +01:00
rustc_target Rollup merge of #131551 - taiki-e:ppc-asm-vreg-inout, r=Amanieu 2024-11-30 12:57:32 +08:00
rustc_trait_selection support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_traits Delay a bug when encountering an impl with unconstrained generics in codegen_select 2024-11-23 05:27:45 +00:00
rustc_transmute use TypingEnv when no infcx is available 2024-11-18 10:38:56 +01:00
rustc_ty_utils support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_type_ir support revealing defined opaque post borrowck 2024-11-28 10:40:58 +01:00
rustc_type_ir_macros do not relate Abi and Safety 2024-10-22 23:13:04 +02:00
stable_mir Rollup merge of #132161 - celinval:smir-fix-indent, r=compiler-errors 2024-11-08 18:51:28 +11:00