You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/research-log.md
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -118,3 +118,10 @@
118
118
- Updated compiler entries + direct EVM asm wiring for `initDouble`.
119
119
-`end_to_end` initially failed due to direct EVM asm mismatch in `initDouble`; fixed by aligning the stack order (`swap1` prelude + `swap1` before `sstore`) with solc output.
120
120
- Ran `PATH=/opt/lean-4.27.0/bin:$PATH lake build`, `./scripts/end_to_end.sh`, and `./scripts/foundry_test_generated.sh` (all green).
121
+
- Added `sstoreIfLt` stdlib helper to avoid redundant stores when capping a slot.
122
+
- Refactored `updateMin` to use `sstoreIfLt` (skip store when the slot is already below the cap).
123
+
- Added `capSlot` example (cap a slot to a maximum without reverting) with Spec + proof.
124
+
- Added Foundry test for `capSlot`.
125
+
- Updated compiler entries + direct EVM asm wiring for `updateMin` and `capSlot`.
126
+
-`end_to_end` initially failed due to direct EVM asm block layout for `capSlot`/`updateMin`; fixed by matching solc's `jump(tag_out)` shape and using `PUSH0` for zero.
127
+
- Ran `PATH=/opt/lean-4.27.0/bin:$PATH lake build`, `./scripts/end_to_end.sh`, and `./scripts/foundry_test_generated.sh` (all green).
0 commit comments