diff options
Diffstat (limited to 'src/Experiments/NewPipeline/AbstractInterpretation.v')
-rw-r--r-- | src/Experiments/NewPipeline/AbstractInterpretation.v | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Experiments/NewPipeline/AbstractInterpretation.v b/src/Experiments/NewPipeline/AbstractInterpretation.v index 3391c741b..bec6434a1 100644 --- a/src/Experiments/NewPipeline/AbstractInterpretation.v +++ b/src/Experiments/NewPipeline/AbstractInterpretation.v @@ -429,7 +429,11 @@ Module Compilers. => fun v m => match to_literal m, to_literal v with | Some m, Some v => of_literal (ident.interp idc v m) - | Some m, None => Some r[0 ~> m] + | Some m, None => Some (if (0 <? m)%Z + then r[0 ~> m-1] + else if (m =? 0)%Z + then r[0 ~> 0] + else r[m+1 ~> 0]) | _, _ => None end | ident.bool_rect _ |