@@ -280,6 +280,8 @@ where
280280 FcmpO ( Operation < ' func , M , F , operation:: Condition > ) ,
281281 FcmpUO ( Operation < ' func , M , F , operation:: Condition > ) ,
282282
283+ SeparateParamListSsa ( Operation < ' func , M , F , operation:: SeparateParamListSsa > ) ,
284+
283285 // TODO ADD_OVERFLOW
284286 Unimpl ( Operation < ' func , M , F , operation:: NoArgs > ) ,
285287 UnimplMem ( Operation < ' func , M , F , operation:: UnimplMem > ) ,
@@ -428,6 +430,10 @@ where
428430 LLIL_FCMP_O => LowLevelILExpressionKind :: FcmpO ( Operation :: new ( function, op, index) ) ,
429431 LLIL_FCMP_UO => LowLevelILExpressionKind :: FcmpUO ( Operation :: new ( function, op, index) ) ,
430432
433+ LLIL_SEPARATE_PARAM_LIST_SSA => {
434+ LowLevelILExpressionKind :: SeparateParamListSsa ( Operation :: new ( function, op, index) )
435+ }
436+
431437 LLIL_UNIMPL => LowLevelILExpressionKind :: Unimpl ( Operation :: new ( function, op, index) ) ,
432438 LLIL_UNIMPL_MEM => {
433439 LowLevelILExpressionKind :: UnimplMem ( Operation :: new ( function, op, index) )
@@ -598,6 +604,11 @@ where
598604 visit ! ( param_expr) ;
599605 }
600606 }
607+ SeparateParamListSsa ( ref op) => {
608+ for param_expr in op. param_exprs ( ) {
609+ visit ! ( param_expr) ;
610+ }
611+ }
601612 // Do not have any sub expressions.
602613 Pop ( _) | Reg ( _) | RegSsa ( _) | RegPartialSsa ( _) | RegSplit ( _) | RegSplitSsa ( _)
603614 | Const ( _) | ConstPtr ( _) | Flag ( _) | FlagBit ( _) | ExternPtr ( _) | FlagCond ( _)
@@ -668,6 +679,8 @@ where
668679 | FloatToInt ( ref op) | IntToFloat ( ref op) | FloatConv ( ref op) | RoundToInt ( ref op)
669680 | Floor ( ref op) | Ceil ( ref op) | Ftrunc ( ref op) => & op. op ,
670681
682+ SeparateParamListSsa ( ref op) => & op. op ,
683+
671684 UnimplMem ( ref op) => & op. op ,
672685 //TestBit(Operation<'func, M, F, operation::TestBit>), // TODO
673686 }
@@ -738,6 +751,8 @@ impl LowLevelILExpressionKind<'_, Mutable, NonSSA> {
738751 | FloatToInt ( ref op) | IntToFloat ( ref op) | FloatConv ( ref op) | RoundToInt ( ref op)
739752 | Floor ( ref op) | Ceil ( ref op) | Ftrunc ( ref op) => op. flag_write ( ) ,
740753
754+ SeparateParamListSsa ( ref op) => op. flag_write ( ) ,
755+
741756 UnimplMem ( ref op) => op. flag_write ( ) ,
742757 //TestBit(Operation<'func, M, F, operation::TestBit>), // TODO
743758 }
0 commit comments