@@ -133,6 +133,14 @@ Module EORMMUOFF.
133133 vm_compute (_ <$> _).
134134 reflexivity.
135135 Qed .
136+
137+ Definition test_results_pf :=
138+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
139+
140+ Goal reg_extract R0 0%fin <$> test_results_pf = Listset [Ok 0x110%Z].
141+ vm_compute (_ <$> _).
142+ reflexivity.
143+ Qed .
136144End EORMMUOFF.
137145
138146(* Run EOR X0, X1, X2 at PC.
@@ -199,6 +207,14 @@ Module EOR.
199207 vm_compute (_ <$> _).
200208 reflexivity.
201209 Qed .
210+
211+ Definition test_results_pf :=
212+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
213+
214+ Goal reg_extract R0 0%fin <$> test_results_pf = Listset [Ok 0x110%Z].
215+ vm_compute (_ <$> _).
216+ reflexivity.
217+ Qed .
202218End EOR.
203219
204220(* LDR X0, [X1, X0] at VA 0x8000000500, loading from VA 0x8000001000
@@ -252,6 +268,14 @@ Module LDR.
252268 vm_compute (_ <$> _).
253269 reflexivity.
254270 Qed .
271+
272+ Definition test_results_pf :=
273+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
274+
275+ Goal reg_extract R0 0%fin <$> test_results_pf = Listset [Ok 0x2a%Z].
276+ vm_compute (_ <$> _).
277+ reflexivity.
278+ Qed .
255279End LDR.
256280
257281(* STR X2, [X1, X0]; LDR X0, [X1, X0] at VA 0x8000000500,
@@ -304,6 +328,14 @@ Module STRLDR.
304328 vm_compute (_ <$> _).
305329 set_solver.
306330 Qed .
331+
332+ Definition test_results_pf :=
333+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
334+
335+ Goal reg_extract R0 0%fin <$> test_results_pf ≡ Listset [Ok 0x2a%Z].
336+ vm_compute (_ <$> _).
337+ set_solver.
338+ Qed .
307339End STRLDR.
308340
309341(* Sequential page table modification in single thread *)
@@ -367,7 +399,7 @@ Module LDRPT.
367399 Definition fuel := 5%nat.
368400
369401 Definition test_results :=
370- VMPromising_cert_c arm_sem fuel n_threads termCond initState.
402+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
371403
372404 (* R0 should be 0x2a (from old mapping), R4 should be 0x42 (from new mapping) *)
373405 Goal elements (regs_extract [(0%fin, R0); (0%fin, R4)] <$> test_results) ≡ₚ
@@ -460,7 +492,7 @@ Module MP.
460492 Definition fuel := 8%nat.
461493
462494 Definition test_results :=
463- VMPromising_cert_c arm_sem fuel n_threads termCond initState.
495+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
464496
465497 Goal elements (regs_extract [(1%fin, R5); (1%fin, R2)] <$> test_results) ≡ₚ
466498 [Ok [0x0%Z;0x2a%Z]; Ok [0x0%Z;0x0%Z]; Ok [0x1%Z; 0x2a%Z]; Ok [0x1%Z; 0x0%Z]].
@@ -552,7 +584,7 @@ Module MPDMBS.
552584 Definition fuel := 8%nat.
553585
554586 Definition test_results :=
555- VMPromising_cert_c arm_sem fuel n_threads termCond initState.
587+ VMPromising_cert_c_pf arm_sem fuel n_threads termCond initState.
556588
557589 (** The test is fenced enough, the 0x1; 0x0 outcome is impossible *)
558590 Goal elements (regs_extract [(1%fin, R5); (1%fin, R2)] <$> test_results) ≡ₚ
0 commit comments