@@ -891,7 +891,8 @@ mod verify {
891
891
892
892
// pub const fn from_bytes_until_nul(bytes: &[u8]) -> Result<&CStr, FromBytesUntilNulError>
893
893
#[ kani:: proof]
894
- #[ kani:: solver( cvc5) ] // 7.3 seconds when 16; 33.1 seconds when 32
894
+ #[ kani:: solver( cvc5) ]
895
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
895
896
fn check_from_bytes_until_nul ( ) {
896
897
const MAX_SIZE : usize = 32 ;
897
898
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -927,6 +928,7 @@ mod verify {
927
928
// pub fn bytes(&self) -> Bytes<'_>
928
929
#[ kani:: proof]
929
930
#[ kani:: solver( cvc5) ]
931
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
930
932
fn check_bytes ( ) {
931
933
const MAX_SIZE : usize = 32 ;
932
934
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -945,6 +947,7 @@ mod verify {
945
947
// pub const fn to_str(&self) -> Result<&str, str::Utf8Error>
946
948
#[ kani:: proof]
947
949
#[ kani:: solver( cvc5) ]
950
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
948
951
fn check_to_str ( ) {
949
952
const MAX_SIZE : usize = 32 ;
950
953
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -962,6 +965,7 @@ mod verify {
962
965
// pub const fn as_ptr(&self) -> *const c_char
963
966
#[ kani:: proof]
964
967
#[ kani:: solver( cvc5) ]
968
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
965
969
fn check_as_ptr ( ) {
966
970
const MAX_SIZE : usize = 32 ;
967
971
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -989,6 +993,7 @@ mod verify {
989
993
// pub const fn from_bytes_with_nul(bytes: &[u8]) -> Result<&Self, FromBytesWithNulError>
990
994
#[ kani:: proof]
991
995
#[ kani:: solver( cvc5) ]
996
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
992
997
fn check_from_bytes_with_nul ( ) {
993
998
const MAX_SIZE : usize = 16 ;
994
999
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1003,6 +1008,7 @@ mod verify {
1003
1008
// pub const fn count_bytes(&self) -> usize
1004
1009
#[ kani:: proof]
1005
1010
#[ kani:: solver( cvc5) ]
1011
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1006
1012
fn check_count_bytes ( ) {
1007
1013
const MAX_SIZE : usize = 32 ;
1008
1014
let mut bytes: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1028,6 +1034,7 @@ mod verify {
1028
1034
// pub const fn to_bytes(&self) -> &[u8]
1029
1035
#[ kani:: proof]
1030
1036
#[ kani:: solver( cvc5) ]
1037
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1031
1038
fn check_to_bytes ( ) {
1032
1039
const MAX_SIZE : usize = 32 ;
1033
1040
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1044,6 +1051,7 @@ mod verify {
1044
1051
// pub const fn to_bytes_with_nul(&self) -> &[u8]
1045
1052
#[ kani:: proof]
1046
1053
#[ kani:: solver( cvc5) ]
1054
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1047
1055
fn check_to_bytes_with_nul ( ) {
1048
1056
const MAX_SIZE : usize = 32 ;
1049
1057
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1060,6 +1068,7 @@ mod verify {
1060
1068
// const unsafe fn strlen(ptr: *const c_char) -> usize
1061
1069
#[ kani:: proof_for_contract( super :: strlen) ]
1062
1070
#[ kani:: solver( cvc5) ]
1071
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1063
1072
fn check_strlen_contract ( ) {
1064
1073
const MAX_SIZE : usize = 32 ;
1065
1074
let mut string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1073,6 +1082,7 @@ mod verify {
1073
1082
// pub const unsafe fn from_ptr<'a>(ptr: *const c_char) -> &'a CStr
1074
1083
#[ kani:: proof_for_contract( CStr :: from_ptr) ]
1075
1084
#[ kani:: solver( cvc5) ]
1085
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1076
1086
fn check_from_ptr_contract ( ) {
1077
1087
const MAX_SIZE : usize = 32 ;
1078
1088
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
@@ -1086,6 +1096,7 @@ mod verify {
1086
1096
// pub const fn is_empty(&self) -> bool
1087
1097
#[ kani:: proof]
1088
1098
#[ kani:: solver( cvc5) ]
1099
+ #[ cfg( not( all( target_arch = "x86_64" , target_feature = "sse2" ) ) ) ]
1089
1100
fn check_is_empty ( ) {
1090
1101
const MAX_SIZE : usize = 32 ;
1091
1102
let string: [ u8 ; MAX_SIZE ] = kani:: any ( ) ;
0 commit comments