aboutsummaryrefslogtreecommitdiff
path: root/src/solvers/tables.h
diff options
context:
space:
mode:
authorSebastiano Tronto <sebastiano@tronto.net>2024-10-04 14:29:00 +0200
committerSebastiano Tronto <sebastiano@tronto.net>2024-10-04 14:29:00 +0200
commit283effb16646112ee9c6bba57e021e80f322b29f (patch)
tree3c0ad588e550f86df21687e82a17e9f1f60443be /src/solvers/tables.h
parentfc150adaf3bff133da0e59d842f13b7b21297fc0 (diff)
downloadnissy-core-283effb16646112ee9c6bba57e021e80f322b29f.tar.gz
nissy-core-283effb16646112ee9c6bba57e021e80f322b29f.zip
Avoid repeating typedefs in tests
Diffstat (limited to 'src/solvers/tables.h')
-rw-r--r--src/solvers/tables.h40
1 files changed, 2 insertions, 38 deletions
diff --git a/src/solvers/tables.h b/src/solvers/tables.h
index a668988..9da90df 100644
--- a/src/solvers/tables.h
+++ b/src/solvers/tables.h
@@ -1,41 +1,5 @@
1#define OFFSET(B, K) (((uint8_t *)B) + K) 1/* Type definitions and macros are in a separate file for easier testing */
2 2#include "tables_types_macros.h"
3#define INFOSIZE 512
4#define INFO_SOLVER_STRLEN 100
5#define INFO_DISTRIBUTION_LEN 21
6
7#define TABLETYPE_PRUNING 0
8#define TABLETYPE_SPECIAL 1
9
10#define INFO_OFFSET_DISTRIBUTION 0
11#define INFO_OFFSET_TYPE (INFO_DISTRIBUTION_LEN * sizeof(uint64_t))
12#define INFO_OFFSET_INFOSIZE (INFO_OFFSET_TYPE + sizeof(uint64_t))
13#define INFO_OFFSET_FULLSIZE (INFO_OFFSET_INFOSIZE + sizeof(uint64_t))
14#define INFO_OFFSET_HASH (INFO_OFFSET_FULLSIZE + sizeof(uint64_t))
15#define INFO_OFFSET_ENTRIES (INFO_OFFSET_HASH + sizeof(uint64_t))
16#define INFO_OFFSET_CLASSES (INFO_OFFSET_ENTRIES + sizeof(uint64_t))
17#define INFO_OFFSET_NEXT (INFO_OFFSET_CLASSES + sizeof(uint64_t))
18#define INFO_OFFSET_SOLVER (INFO_OFFSET_NEXT + sizeof(uint64_t))
19#define INFO_OFFSET_H48H (INFO_OFFSET_SOLVER + INFO_SOLVER_STRLEN)
20#define INFO_OFFSET_BITS (INFO_OFFSET_H48H + sizeof(uint8_t))
21#define INFO_OFFSET_BASE (INFO_OFFSET_BITS + sizeof(uint8_t))
22#define INFO_OFFSET_MAXVALUE (INFO_OFFSET_BASE + sizeof(uint8_t))
23
24typedef struct {
25 uint64_t distribution[INFO_DISTRIBUTION_LEN];
26 uint64_t type;
27 uint64_t infosize;
28 uint64_t fullsize;
29 uint64_t hash;
30 uint64_t entries;
31 uint64_t classes; /* Used only by cocsepdata, for now */
32 uint64_t next;
33 char solver[INFO_SOLVER_STRLEN];
34 uint8_t h48h; /* Specific to H48 tables */
35 uint8_t bits;
36 uint8_t base;
37 uint8_t maxvalue;
38} tableinfo_t;
39 3
40STATIC bool readtableinfo(const void *, tableinfo_t *); 4STATIC bool readtableinfo(const void *, tableinfo_t *);
41STATIC bool readtableinfo_n(const void *, uint8_t, tableinfo_t *); 5STATIC bool readtableinfo_n(const void *, uint8_t, tableinfo_t *);

Generated with cgit - Back to sebastiano.tronto.net