add U256/32byte support

This commit is contained in:
vanhauser-thc
2024-02-04 16:03:12 +01:00
parent 27338fcef1
commit c77709cdd9
6 changed files with 87 additions and 38 deletions

View File

@ -43,13 +43,11 @@
struct cmp_header {
unsigned hits : 24;
unsigned id : 24;
unsigned shape : 5;
unsigned type : 2;
unsigned attribute : 4;
unsigned overflow : 1;
unsigned reserved : 4;
unsigned hits : 6; // up to 63 entries, we have CMP_MAP_H = 32
unsigned shape : 6; // 63 bytes, we support 32 max
unsigned type : 2; // 4, we use 3: none, rtn, cmp
unsigned attribute : 4; // 16 for arithmetic comparison types
unsigned reserved : 6;
} __attribute__((packed));
@ -59,14 +57,17 @@ struct cmp_operands {
u64 v1;
u64 v0_128;
u64 v1_128;
u64 unused;
u8 unused1;
u8 unused2;
} __attribute__((packed));
struct cmpfn_operands {
u8 v0[31];
u8 v0[32];
u8 v0_len;
u8 v1[31];
u8 v1[32];
u8 v1_len;
} __attribute__((packed));