Dynamic Constant Normalization
Status | Pipeline | Created by | Stages | Actions |
---|---|---|---|---|
Passed 00:01:21
| Stage: test |
Download artifacts
No artifacts found |
Implements #18 (closed). A few notes on the actual implementation
DynamicConstantView
trait (in hercules_ir/ir/dc_normalization.rs
), in particular this just requires implementing get_dynconst
which can be used to retrieve dynamic constant values from their IDs and add_dynconst
which takes a (normalized) dynamic constant object and interns it and produces its ID. An object that implements that trait can then be used to normalize and intern dynamic constants via the various dc_*
methods.min
and max
actually track their fields in a set since duplicates don't matter. Also, min
ignores 0 if it is one of the elements, since dynamic constants are non-negative so min {0, ...} = min {...}
.dc_normalize
which can take a dynamic constant and normalize it (unlike most of the other functions which take the arguments and normalize them).Status | Pipeline | Created by | Stages | Actions |
---|---|---|---|---|
Passed 00:01:21
| Stage: test |
Download artifacts
No artifacts found |