| 1 | //! Run-time feature detection on s390x. |
| 2 | |
| 3 | features! { |
| 4 | @TARGET: s390x; |
| 5 | @CFG: target_arch = "s390x" ; |
| 6 | @MACRO_NAME: is_s390x_feature_detected; |
| 7 | @MACRO_ATTRS: |
| 8 | /// Check for the presence of a CPU feature at runtime. |
| 9 | /// |
| 10 | /// When the feature is known to be enabled at compile time (e.g. via `-Ctarget-feature`) |
| 11 | /// the macro expands to `true`. |
| 12 | #[stable (feature = "stdarch_s390x_feature_detection" , since = "1.93.0" )] |
| 13 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] concurrent_functions: "concurrent-functions" ; |
| 14 | /// s390x concurrent-functions facility |
| 15 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] deflate_conversion: "deflate-conversion" ; |
| 16 | /// s390x deflate-conversion facility |
| 17 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] enhanced_sort: "enhanced-sort" ; |
| 18 | /// s390x enhanced-sort facility |
| 19 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] guarded_storage: "guarded-storage" ; |
| 20 | /// s390x guarded-storage facility |
| 21 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] high_word: "high-word" ; |
| 22 | /// s390x high-word facility |
| 23 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension3: "message-security-assist-extension3" ; |
| 24 | /// s390x message-security-assist-extension3 facility |
| 25 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension4: "message-security-assist-extension4" ; |
| 26 | /// s390x message-security-assist-extension4 facility |
| 27 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension5: "message-security-assist-extension5" ; |
| 28 | /// s390x message-security-assist-extension5 facility |
| 29 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension8: "message-security-assist-extension8" ; |
| 30 | /// s390x message-security-assist-extension8 facility |
| 31 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension9: "message-security-assist-extension9" ; |
| 32 | /// s390x message-security-assist-extension9 facility |
| 33 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] message_security_assist_extension12: "message-security-assist-extension12" ; |
| 34 | /// s390x message-security-assist-extension12 facility |
| 35 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] miscellaneous_extensions_2: "miscellaneous-extensions-2" ; |
| 36 | /// s390x miscellaneous-extensions-2 facility |
| 37 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] miscellaneous_extensions_3: "miscellaneous-extensions-3" ; |
| 38 | /// s390x miscellaneous-extensions-3 facility |
| 39 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] miscellaneous_extensions_4: "miscellaneous-extensions-4" ; |
| 40 | /// s390x miscellaneous-extensions-4 facility |
| 41 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] nnp_assist: "nnp-assist" ; |
| 42 | /// s390x nnp-assist facility |
| 43 | @FEATURE: #[unstable (feature = "s390x_target_feature" , issue = "44839" )] transactional_execution: "transactional-execution" ; |
| 44 | /// s390x transactional-execution facility |
| 45 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector: "vector" ; |
| 46 | /// s390x vector facility |
| 47 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_enhancements_1: "vector-enhancements-1" ; |
| 48 | /// s390x vector-enhancements-1 facility |
| 49 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_enhancements_2: "vector-enhancements-2" ; |
| 50 | /// s390x vector-enhancements-2 facility |
| 51 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_enhancements_3: "vector-enhancements-3" ; |
| 52 | /// s390x vector-enhancements-3 facility |
| 53 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_packed_decimal: "vector-packed-decimal" ; |
| 54 | /// s390x vector-packed-decimal facility |
| 55 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_packed_decimal_enhancement: "vector-packed-decimal-enhancement" ; |
| 56 | /// s390x vector-packed-decimal-enhancement facility |
| 57 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_packed_decimal_enhancement_2: "vector-packed-decimal-enhancement-2" ; |
| 58 | /// s390x vector-packed-decimal-enhancement-2 facility |
| 59 | @FEATURE: #[stable (feature = "s390x_target_feature_vector" , since = "1.93.0" )] vector_packed_decimal_enhancement_3: "vector-packed-decimal-enhancement-3" ; |
| 60 | /// s390x vector-packed-decimal-enhancement-3 facility |
| 61 | } |
| 62 | |