Skip to content

Commit 223612d

Browse files
committed
zdict.rs: move some array initializers
1 parent c35a4d7 commit 223612d

File tree

1 file changed

+10
-18
lines changed

1 file changed

+10
-18
lines changed

lib/dictBuilder/zdict.rs

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ struct EStats_ress_t {
3535
zc: *mut ZSTD_CCtx,
3636
workPlace: *mut core::ffi::c_void,
3737
}
38-
#[derive(Copy, Clone)]
38+
#[derive(Copy, Clone, Default)]
3939
#[repr(C)]
4040
struct offsetCount_t {
4141
offset: u32,
@@ -867,20 +867,12 @@ unsafe fn ZDICT_analyzeEntropy(
867867
dictBufferSize: size_t,
868868
notificationLevel: core::ffi::c_uint,
869869
) -> size_t {
870-
let mut countLit: [core::ffi::c_uint; 256] = [0; 256];
871870
let mut hufTable: [HUF_CElt; 257] = [0; 257];
872-
let mut offcodeCount: [core::ffi::c_uint; 31] = [0; 31];
873871
let mut offcodeNCount: [core::ffi::c_short; 31] = [0; 31];
874872
let offcodeMax =
875873
ZSTD_highbit32(dictBufferSize.wrapping_add((128 * ((1) << 10)) as size_t) as u32);
876-
let mut matchLengthCount: [core::ffi::c_uint; 53] = [0; 53];
877874
let mut matchLengthNCount: [core::ffi::c_short; 53] = [0; 53];
878-
let mut litLengthCount: [core::ffi::c_uint; 36] = [0; 36];
879875
let mut litLengthNCount: [core::ffi::c_short; 36] = [0; 36];
880-
let mut bestRepOffset = [offsetCount_t {
881-
offset: 0,
882-
count: 0,
883-
}; ZSTD_REP_NUM as usize + 1];
884876
let mut esr = EStats_ress_t {
885877
dict: core::ptr::null_mut(),
886878
zc: core::ptr::null_mut(),
@@ -905,23 +897,27 @@ unsafe fn ZDICT_analyzeEntropy(
905897
eSize = Error::dictionaryCreation_failed.to_error_code();
906898
} else {
907899
u = 0;
900+
let mut countLit: [core::ffi::c_uint; 256] = [0; 256];
908901
while u < 256 {
909-
*countLit.as_mut_ptr().offset(u as isize) = 1;
902+
countLit[u as usize] = 1;
910903
u = u.wrapping_add(1);
911904
}
912905
u = 0;
906+
let mut offcodeCount: [core::ffi::c_uint; 31] = [0; 31];
913907
while u <= offcodeMax {
914-
*offcodeCount.as_mut_ptr().offset(u as isize) = 1;
908+
offcodeCount[u as usize] = 1;
915909
u = u.wrapping_add(1);
916910
}
917911
u = 0;
912+
let mut matchLengthCount: [core::ffi::c_uint; 53] = [0; 53];
918913
while u <= MaxML as u32 {
919-
*matchLengthCount.as_mut_ptr().offset(u as isize) = 1;
914+
matchLengthCount[u as usize] = 1;
920915
u = u.wrapping_add(1);
921916
}
922917
u = 0;
918+
let mut litLengthCount: [core::ffi::c_uint; 36] = [0; 36];
923919
while u <= MaxLL as u32 {
924-
*litLengthCount.as_mut_ptr().offset(u as isize) = 1;
920+
litLengthCount[u as usize] = 1;
925921
u = u.wrapping_add(1);
926922
}
927923

@@ -930,11 +926,7 @@ unsafe fn ZDICT_analyzeEntropy(
930926
repOffset[4] = 1;
931927
repOffset[8] = 1;
932928

933-
ptr::write_bytes(
934-
bestRepOffset.as_mut_ptr() as *mut u8,
935-
0,
936-
::core::mem::size_of::<[offsetCount_t; 4]>(),
937-
);
929+
let mut bestRepOffset = [offsetCount_t::default(); ZSTD_REP_NUM as usize + 1];
938930

939931
if compressionLevel == 0 {
940932
compressionLevel = ZSTD_CLEVEL_DEFAULT;

0 commit comments

Comments
 (0)