Tags: google/xls
Tags
Add std::array compatibility header to synth_only PiperOrigin-RevId: 930866129
Fix parametric ProcDefs in bytecode interpreter. There are several problems being fixed here, all of which are verified by the added interpreter test case: * Mapping of data by ProcDef* without the effective parametrics. * Lack of knowledge of the effective parametrics in the ProcInitializer. * The ProcInitializer being created based on evaluation of member initializers before their types were determined (wrong ordering in flatten_in_type_order). * Missing storage of TypeReference constexpr values for generics. * Incorrect comparison of TypeReference constants in interp_value.cc * An auxiliary proc map in type_info.cc using unstable pointers to objects in a vector. PiperOrigin-RevId: 930116263
Replace zero-latency buffer with FIFO instantiation in RAM rewrite pass. This change updates the RAM rewrite pass to use a FIFO instantiation instead of a zero-latency buffer for buffering RAM response data, valid, and ready signals. PiperOrigin-RevId: 928916294
[DSLX Fuzz testing] Implement type-checking of nested and imported st… …ruct fuzz domains. Resolves and populates derived domain struct fields on-demand during type-checking. Summary: - Extends `ValidateFuzzTestDomainType` to recursively validate struct domains against their target parameter types. - Recursively resolves and populates derived domain struct fields on-demand during type-checking, including imported structs (via `ColonRef`s). - Decouples domain generator expression type-checking from base scalar type validation, allowing them to be evaluated as independent domains. PiperOrigin-RevId: 927455617
Fix XLS fuzzer hang by limiting BDD evaluations of wide shifts and sl… …ices. PiperOrigin-RevId: 926996217
[Explicit State Access] Add library functions to check for ambiguous … …or overlapping patterns Arc patterns are given scores to check if they match. If there exists two patterns that have the same score and different throughput, they enter a tie breaker. Tie Breaker: If two rules match the same arc but have different specificity scores, the rule with the higher score wins. If two rules have the same specificity score and different throughput values, they conflict unless there is a third, even more specific rule that covers their intersection (acting as a tie-breaker). PiperOrigin-RevId: 926231211
Bytecode interpreter support for explicit state access. The basic idea is: * Introduce a new kind of InterpValue for a reference to a state element. * Have type inference store these as the constexpr value for a state element NameDef in a proc with explicit state access. * Add bytecode operations for read and write, corresponding to the builtin functions, and emit these operations for the builtin calls. * Add a map of state element InterpValue by NameDef when interpreting a proc, and have the read and write operations use it. * Stop expecting next() to return updated state when using explicit state access. PiperOrigin-RevId: 925817995
Add --live_only flag to ir_to_cytoscape.py. This flag enables filtering out nodes that are marked as 'dead_after_synthesis' from the generated Cytoscape JSON. When enabled, only nodes not marked as dead and edges between such live nodes are included in the output. PiperOrigin-RevId: 924954504
fuzz: Add fuzzer crasher regression test for cf550c89 PiperOrigin-RevId: 923607315
PreviousNext