@@ -27,7 +27,8 @@ pub use openvm_rv32im_transpiler::{
27
27
#[ repr( usize ) ]
28
28
// Note: these need to be exactly the same and in the exact same order as OpenVM's BaseAluOpcode
29
29
// in order to be able to re-use the original Alu core chip.
30
- // The alternative to that is to not have this new enum here and use OpenVM's BaseAluOpcode.
30
+ // We do re-use the `BaseAluOpcode` type for 32-bit operations, but need a new opcode/enum for
31
+ // 64-bit ops.
31
32
pub enum BaseAlu64Opcode {
32
33
ADD ,
33
34
SUB ,
@@ -55,7 +56,8 @@ pub enum BaseAlu64Opcode {
55
56
#[ repr( usize ) ]
56
57
// Note: these need to be exactly the same and in the exact same order as OpenVM's ShiftOpcode
57
58
// in order to be able to re-use the original Shift core chip.
58
- // The alternative to that is to not have this new enum here and use OpenVM's ShiftOpcode.
59
+ // We do re-use the `BaseAluOpcode` type for 32-bit operations, but need a new opcode/enum for
60
+ // 64-bit ops.
59
61
pub enum Shift64Opcode {
60
62
SLL ,
61
63
SRL ,
@@ -81,7 +83,8 @@ pub enum Shift64Opcode {
81
83
#[ repr( usize ) ]
82
84
// Note: these need to be exactly the same and in the exact same order as OpenVM's LessThanOpcode
83
85
// in order to be able to re-use the original LessThan core chip.
84
- // The alternative to that is to not have this new enum here and use OpenVM's LessThanOpcode.
86
+ // We do re-use the `BaseAluOpcode` type for 32-bit operations, but need a new opcode/enum for
87
+ // 64-bit ops.
85
88
pub enum LessThan64Opcode {
86
89
SLT ,
87
90
SLTU ,
@@ -190,7 +193,8 @@ pub enum JumpOpcode {
190
193
#[ allow( non_camel_case_types) ]
191
194
// Note: these need to be exactly the same and in the exact same order as OpenVM's MulOpcode
192
195
// in order to be able to re-use the original Mul core chip.
193
- // The alternative to that is to not have this new enum here and use OpenVM's MulOpcode.
196
+ // We do re-use the `BaseAluOpcode` type for 32-bit operations, but need a new opcode/enum for
197
+ // 64-bit ops.
194
198
pub enum Mul64Opcode {
195
199
MUL ,
196
200
}
@@ -215,7 +219,8 @@ pub enum Mul64Opcode {
215
219
#[ allow( non_camel_case_types) ]
216
220
// Note: these need to be exactly the same and in the exact same order as OpenVM's DivRemOpcode
217
221
// in order to be able to re-use the original DivRem core chip.
218
- // The alternative to that is to not have this new enum here and use OpenVM's DivRemOpcode.
222
+ // We do re-use the `BaseAluOpcode` type for 32-bit operations, but need a new opcode/enum for
223
+ // 64-bit ops.
219
224
pub enum DivRem64Opcode {
220
225
DIV ,
221
226
DIVU ,
0 commit comments