Skip to content

Commit 23389a5

Browse files
committed
fix: MODEXP_XBS instruction must use normalized xbs
1 parent dc3b783 commit 23389a5

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

oob/osaka/precompiles/modexp/xbs.lisp

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050
(defun (prc-modexp-xbs---xbs-is-LE-the-EIP-7823-upper-bound) (shift OUTGOING_RES_LO ROFF___MODEXP_XBS___XBS_VS_EIP_7823_UPPER_BOUND ))
5151
(defun (prc-modexp-xbs---xbs-is-GT-the-EIP-7823-upper-bound) (- 1 (prc-modexp-xbs---xbs-is-LE-the-EIP-7823-upper-bound)))
5252

53+
(defun (prc-modexp-xbs---xbs-normalized) (* (prc-modexp-xbs---xbs-lo) (prc-modexp-xbs---xbs-is-LE-the-EIP-7823-upper-bound)))
54+
(defun (prc-modexp-xbs---ybs-normalized) (* (prc-modexp-xbs---ybs-lo) (prc-modexp-xbs---xbs-is-LE-the-EIP-7823-upper-bound)))
55+
5356

5457

5558
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -64,9 +67,9 @@
6467
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6568
(call-to-LT ROFF___MODEXP_XBS___XBS_VS_YBS
6669
0
67-
(prc-modexp-xbs---xbs-lo)
70+
(prc-modexp-xbs---xbs-normalized)
6871
0
69-
(prc-modexp-xbs---ybs-lo)
72+
(prc-modexp-xbs---ybs-normalized)
7073
))
7174

7275
(defun (prc-modexp-xbs---xbs-is-LT-ybs) (shift OUTGOING_RES_LO ROFF___MODEXP_XBS___XBS_VS_YBS ))
@@ -85,7 +88,7 @@
8588
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8689
(call-to-ISZERO ROFF___MODEXP_XBS___XBS_ISZERO_CHECK
8790
0
88-
(prc-modexp-xbs---xbs-lo)
91+
(prc-modexp-xbs---xbs-normalized)
8992
))
9093

9194
(defun (prc-modexp-xbs---xbs-is-zero) (shift OUTGOING_RES_LO ROFF___MODEXP_XBS___XBS_ISZERO_CHECK ))
@@ -141,8 +144,8 @@
141144
(if-zero (prc-modexp-xbs---xbs-is-LT-ybs)
142145
;; false case
143146
(eq! (prc-modexp-xbs---max-xbs-ybs)
144-
(prc-modexp-xbs---xbs-lo))
147+
(prc-modexp-xbs---xbs-normalized))
145148
;; true case
146149
(eq! (prc-modexp-xbs---max-xbs-ybs)
147-
(prc-modexp-xbs---ybs-lo))
150+
(prc-modexp-xbs---ybs-normalized))
148151
))))

0 commit comments

Comments
 (0)