era-compiler-solidity contains a `xor(zext(cmp), -1)` misoptimization
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| matter-labs | era-compiler-solidity | affected |
|
No data.
No data.
| Vendor | Product | Versions |
|---|---|---|
| Matter-labs | Era-compiler-solidity | — |
| Source | ID | Title |
|---|---|---|
EUVD |
EUVD-2024-34999 | era-compiler-solidity is the ZKsync compiler for Solidity. The problem occurred during instruction selection in the `DAGCombine` phase while visiting the XOR operation. The issue arises when attempting to fold the expression `!(x cc y)` into `(x !cc y)`. To perform this transformation, the second operand of XOR should be a constant representing the true value. However, it was incorrectly assumed that -1 represents the true value, when in fact, 1 is the correct representation, so this transformation for this case should be skipped. This vulnerability is fixed in 1.4.1. |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.466% probability within 30 days)
Key SSVC decision points have not yet been added.
No history.