|
@@ -144,6 +144,7 @@ impl Frame {
|
|
|
new_ctx[Arch::SP] = cfa as _;
|
|
|
new_ctx[Arch::RA] = 0;
|
|
|
|
|
|
+ #[warn(non_exhaustive_omitted_patterns)]
|
|
|
for (reg, rule) in row.registers() {
|
|
|
let value = match *rule {
|
|
|
RegisterRule::Undefined | RegisterRule::SameValue => ctx[*reg],
|
|
@@ -158,6 +159,8 @@ impl Frame {
|
|
|
}
|
|
|
RegisterRule::ValExpression(expr) => self.evaluate_expression(ctx, expr)?,
|
|
|
RegisterRule::Architectural => unreachable!(),
|
|
|
+ RegisterRule::Constant(value) => value as usize,
|
|
|
+ _ => unreachable!(),
|
|
|
};
|
|
|
new_ctx[*reg] = value;
|
|
|
}
|