Skip to content

Commit 6d57ade

Browse files
committed
zdict.rs: some more basic cleanup
1 parent 06ae304 commit 6d57ade

File tree

3 files changed

+8
-42
lines changed

3 files changed

+8
-42
lines changed

lib/common/zstd_internal.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const fn const_max(a: usize, b: usize) -> usize {
1111
pub(crate) const ZSTD_OPT_NUM: core::ffi::c_int = 1 << 12;
1212

1313
pub(crate) const ZSTD_REP_NUM: core::ffi::c_int = 3;
14-
pub(crate) static repStartValue: [u32; 3] = [1, 4, 8];
14+
pub(crate) static repStartValue: [u32; ZSTD_REP_NUM as usize] = [1, 4, 8];
1515

1616
pub(crate) const ZSTD_FRAMEIDSIZE: usize = 4;
1717

lib/dictBuilder/zdict.rs

Lines changed: 4 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -892,7 +892,6 @@ unsafe fn ZDICT_analyzeEntropy(
892892
let mut matchLengthNCount: [core::ffi::c_short; 53] = [0; 53];
893893
let mut litLengthCount: [core::ffi::c_uint; 36] = [0; 36];
894894
let mut litLengthNCount: [core::ffi::c_short; 36] = [0; 36];
895-
let mut repOffset: [u32; 1024] = [0; 1024];
896895
let mut bestRepOffset: [offsetCount_t; 4] = [offsetCount_t {
897896
offset: 0,
898897
count: 0,
@@ -902,22 +901,7 @@ unsafe fn ZDICT_analyzeEntropy(
902901
zc: core::ptr::null_mut(),
903902
workPlace: core::ptr::null_mut(),
904903
};
905-
let mut params = ZSTD_parameters {
906-
cParams: ZSTD_compressionParameters {
907-
windowLog: 0,
908-
chainLog: 0,
909-
hashLog: 0,
910-
searchLog: 0,
911-
minMatch: 0,
912-
targetLength: 0,
913-
strategy: 0,
914-
},
915-
fParams: ZSTD_frameParameters {
916-
contentSizeFlag: 0,
917-
checksumFlag: 0,
918-
noDictIDFlag: 0,
919-
},
920-
};
904+
let mut params = ZSTD_parameters::default();
921905
let mut u: u32 = 0;
922906
let mut huffLog = 11;
923907
let mut Offlog = OffFSELog as u32;
@@ -956,12 +940,7 @@ unsafe fn ZDICT_analyzeEntropy(
956940
u = u.wrapping_add(1);
957941
}
958942

959-
ptr::write_bytes(
960-
repOffset.as_mut_ptr() as *mut u8,
961-
0,
962-
::core::mem::size_of::<[u32; 1024]>(),
963-
);
964-
943+
let mut repOffset: [u32; 1024] = [0; 1024];
965944
repOffset[1] = 1;
966945
repOffset[4] = 1;
967946
repOffset[8] = 1;
@@ -1245,20 +1224,7 @@ unsafe fn ZDICT_analyzeEntropy(
12451224
free(esr.workPlace);
12461225
eSize
12471226
}
1248-
unsafe fn ZDICT_maxRep(reps: *const u32) -> u32 {
1249-
let mut maxRep = *reps;
1250-
let mut r: core::ffi::c_int = 0;
1251-
r = 1;
1252-
while r < ZSTD_REP_NUM {
1253-
maxRep = if maxRep > *reps.offset(r as isize) {
1254-
maxRep
1255-
} else {
1256-
*reps.offset(r as isize)
1257-
};
1258-
r += 1;
1259-
}
1260-
maxRep
1261-
}
1227+
12621228
#[cfg_attr(feature = "export-symbols", export_name = crate::prefix!(ZDICT_finalizeDictionary))]
12631229
pub unsafe extern "C" fn ZDICT_finalizeDictionary(
12641230
dictBuffer: *mut core::ffi::c_void,
@@ -1278,7 +1244,7 @@ pub unsafe extern "C" fn ZDICT_finalizeDictionary(
12781244
params.compressionLevel
12791245
};
12801246
let notificationLevel = params.notificationLevel;
1281-
let minContentSize = ZDICT_maxRep(repStartValue.as_ptr()) as size_t;
1247+
let minContentSize = *repStartValue.iter().max().unwrap() as size_t;
12821248
let mut paddingSize: size_t = 0;
12831249
if dictBufferCapacity < dictContentSize {
12841250
return Error::dstSize_tooSmall.to_error_code();

lib/zstd.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ pub const ZSTD_greedy: ZSTD_strategy = 3;
9797
pub const ZSTD_dfast: ZSTD_strategy = 2;
9898
pub const ZSTD_fast: ZSTD_strategy = 1;
9999

100-
#[derive(Copy, Clone)]
100+
#[derive(Debug, Copy, Clone, Default)]
101101
#[repr(C)]
102102
pub struct ZSTD_compressionParameters {
103103
pub windowLog: core::ffi::c_uint,
@@ -109,15 +109,15 @@ pub struct ZSTD_compressionParameters {
109109
pub strategy: ZSTD_strategy,
110110
}
111111

112-
#[derive(Copy, Clone)]
112+
#[derive(Debug, Copy, Clone, Default)]
113113
#[repr(C)]
114114
pub struct ZSTD_frameParameters {
115115
pub contentSizeFlag: core::ffi::c_int,
116116
pub checksumFlag: core::ffi::c_int,
117117
pub noDictIDFlag: core::ffi::c_int,
118118
}
119119

120-
#[derive(Copy, Clone)]
120+
#[derive(Debug, Copy, Clone, Default)]
121121
#[repr(C)]
122122
pub struct ZSTD_parameters {
123123
pub cParams: ZSTD_compressionParameters,

0 commit comments

Comments
 (0)