11use crate :: {
2- ast:: { AluOpFlags , AsmMnemonic , CpuMnemonic , Expression , Modifier , Operation , Register } ,
2+ ast:: { AluCpuMnemonic , AluOpFlags , AsmMnemonic , Expression , Modifier , Operation , Register } ,
33 error:: Error ,
44 expression:: expression_result:: { ExpressionResult , Number } ,
55 generator:: { self , Generatable } ,
@@ -15,12 +15,12 @@ pub(super) fn generate_alu_op(
1515 operation : & Spanned < & Operation > ,
1616 symbol_table : & SymbolTable ,
1717) -> Result < u32 , Error > {
18- let mnemonic = if let AsmMnemonic :: BinaryAlu ( mnemonic ) = operation . full_mnemonic . mnemonic . val {
19- assert ! ( mnemonic. is_alu_op ( ) ) ;
20- operation. full_mnemonic . mnemonic . span_to ( mnemonic)
21- } else {
22- panic ! ( "Function was not called with AsmMnemonic::BinaryAlu" ) ;
23- } ;
18+ let mnemonic: Spanned < AluCpuMnemonic > =
19+ if let AsmMnemonic :: BinaryAlu ( mnemonic) = operation . full_mnemonic . mnemonic . val {
20+ operation. full_mnemonic . mnemonic . span_to ( mnemonic. into ( ) )
21+ } else {
22+ panic ! ( "Function was not called with AsmMnemonic::BinaryAlu" ) ;
23+ } ;
2424
2525 if operation. operands . len ( ) == 2 {
2626 generate_alu_op_2 (
@@ -47,7 +47,7 @@ pub(super) fn generate_alu_op(
4747}
4848
4949fn generate_alu_op_2 (
50- mnemonic : & Spanned < & CpuMnemonic > ,
50+ mnemonic : & Spanned < & AluCpuMnemonic > ,
5151 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
5252 operands : & Spanned < & Vec < Spanned < Expression > > > ,
5353 symbol_table : & SymbolTable ,
@@ -71,7 +71,7 @@ fn generate_alu_op_2(
7171}
7272
7373fn generate_alu_op_2_reg (
74- mnemonic : & Spanned < & CpuMnemonic > ,
74+ mnemonic : & Spanned < & AluCpuMnemonic > ,
7575 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
7676 register : & Spanned < & Register > ,
7777 operands : & Spanned < & Vec < Spanned < Expression > > > ,
@@ -96,7 +96,7 @@ fn generate_alu_op_2_reg(
9696}
9797
9898fn generate_alu_op_2_reg_reg (
99- mnemonic : & Spanned < & CpuMnemonic > ,
99+ mnemonic : & Spanned < & AluCpuMnemonic > ,
100100 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
101101 register1 : & Spanned < & Register > ,
102102 register2 : & Spanned < & Register > ,
@@ -105,7 +105,7 @@ fn generate_alu_op_2_reg_reg(
105105}
106106
107107fn generate_alu_op_2_reg_num (
108- mnemonic : & Spanned < & CpuMnemonic > ,
108+ mnemonic : & Spanned < & AluCpuMnemonic > ,
109109 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
110110 register : & Spanned < & Register > ,
111111 number : & Spanned < & Number > ,
@@ -114,7 +114,7 @@ fn generate_alu_op_2_reg_num(
114114}
115115
116116fn generate_alu_op_2_num (
117- mnemonic : & Spanned < & CpuMnemonic > ,
117+ mnemonic : & Spanned < & AluCpuMnemonic > ,
118118 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
119119 number : & Spanned < & Number > ,
120120 operands : & Spanned < & Vec < Spanned < Expression > > > ,
@@ -132,7 +132,7 @@ fn generate_alu_op_2_num(
132132}
133133
134134fn generate_alu_op_2_num_reg (
135- mnemonic : & Spanned < & CpuMnemonic > ,
135+ mnemonic : & Spanned < & AluCpuMnemonic > ,
136136 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
137137 number : & Spanned < & Number > ,
138138 register : & Spanned < & Register > ,
@@ -141,7 +141,7 @@ fn generate_alu_op_2_num_reg(
141141}
142142
143143fn generate_alu_op_3 (
144- mnemonic : & Spanned < & CpuMnemonic > ,
144+ mnemonic : & Spanned < & AluCpuMnemonic > ,
145145 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
146146 operands : & Spanned < & Vec < Spanned < Expression > > > ,
147147 symbol_table : & SymbolTable ,
@@ -158,7 +158,7 @@ fn generate_alu_op_3(
158158}
159159
160160fn generate_alu_op_3_reg (
161- mnemonic : & Spanned < & CpuMnemonic > ,
161+ mnemonic : & Spanned < & AluCpuMnemonic > ,
162162 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
163163 register : & Spanned < & Register > ,
164164 operands : & Spanned < & Vec < Spanned < Expression > > > ,
@@ -197,7 +197,7 @@ fn generate_alu_op_3_reg(
197197}
198198
199199fn generate_alu_op_3_reg_reg (
200- mnemonic : & Spanned < & CpuMnemonic > ,
200+ mnemonic : & Spanned < & AluCpuMnemonic > ,
201201 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
202202 register1 : & Spanned < & Register > ,
203203 register2 : & Spanned < & Register > ,
@@ -223,7 +223,7 @@ fn generate_alu_op_3_reg_reg(
223223}
224224
225225fn generate_alu_op_3_reg_reg_reg (
226- mnemonic : & Spanned < & CpuMnemonic > ,
226+ mnemonic : & Spanned < & AluCpuMnemonic > ,
227227 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
228228 register1 : & Spanned < & Register > ,
229229 register2 : & Spanned < & Register > ,
@@ -239,7 +239,7 @@ fn generate_alu_op_3_reg_reg_reg(
239239}
240240
241241fn generate_alu_op_3_reg_reg_num (
242- mnemonic : & Spanned < & CpuMnemonic > ,
242+ mnemonic : & Spanned < & AluCpuMnemonic > ,
243243 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
244244 register1 : & Spanned < & Register > ,
245245 register2 : & Spanned < & Register > ,
@@ -258,7 +258,7 @@ fn generate_alu_op_3_reg_reg_num(
258258}
259259
260260fn generate_alu_op_3_reg_num (
261- mnemonic : & Spanned < & CpuMnemonic > ,
261+ mnemonic : & Spanned < & AluCpuMnemonic > ,
262262 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
263263 register : & Spanned < & Register > ,
264264 number : & Spanned < & Number > ,
@@ -277,7 +277,7 @@ fn generate_alu_op_3_reg_num(
277277}
278278
279279fn generate_alu_op_3_reg_num_reg (
280- mnemonic : & Spanned < & CpuMnemonic > ,
280+ mnemonic : & Spanned < & AluCpuMnemonic > ,
281281 modifiers : & Spanned < & Vec < Spanned < Modifier > > > ,
282282 register1 : & Spanned < & Register > ,
283283 number : & Spanned < & Number > ,
0 commit comments