make PRS and BC0 compression deterministic across environments
This commit is contained in:
+1
-1
@@ -394,7 +394,7 @@ string bc0_compress(
|
|||||||
|
|
||||||
parray<uint8_t, 0x1000> memo;
|
parray<uint8_t, 0x1000> memo;
|
||||||
uint16_t memo_offset = 0x0FEE;
|
uint16_t memo_offset = 0x0FEE;
|
||||||
vector<unordered_set<size_t>> memo_index(0x100);
|
vector<set<size_t>> memo_index(0x100);
|
||||||
auto write_memo = [&](uint8_t new_v) -> void {
|
auto write_memo = [&](uint8_t new_v) -> void {
|
||||||
uint8_t existing_v = memo[memo_offset];
|
uint8_t existing_v = memo[memo_offset];
|
||||||
if (existing_v != new_v) {
|
if (existing_v != new_v) {
|
||||||
|
|||||||
+2
-1
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
#include <set>
|
||||||
|
|
||||||
#include "Text.hh"
|
#include "Text.hh"
|
||||||
|
|
||||||
@@ -50,7 +51,7 @@ private:
|
|||||||
parray<uint8_t, 0x100> forward_log;
|
parray<uint8_t, 0x100> forward_log;
|
||||||
size_t compression_offset;
|
size_t compression_offset;
|
||||||
parray<uint8_t, 0x2000> reverse_log;
|
parray<uint8_t, 0x2000> reverse_log;
|
||||||
std::vector<std::unordered_set<size_t>> reverse_log_index;
|
std::vector<std::set<size_t>> reverse_log_index;
|
||||||
|
|
||||||
StringWriter output;
|
StringWriter output;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user