feat: Support sol ___future_measure - #213
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
___future_measure currently returns a 0 “future reference” for unknown flags, which can propagate an invalid handle into future reads instead of failing fast.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR updates the SOL QIS interface and accompanying LLVM-IR test fixtures to support the new measurement entrypoint ___future_measure(qubit, flags) (flags 0 = normal binary measurement, 1 = ternary leakage measurement), while keeping ___lazy_measure and ___lazy_measure_leaked for backwards compatibility.
Changes:
- Add
___future_measure(uint64_t q, uint64_t flags)to the SOL QIS C interface, mapping flags 0/1 to the existing lazy-measure backends. - Keep
___lazy_measure/___lazy_measure_leakedas deprecated shims. - Update many
.lltest resources to declare/call___future_measureinstead of___lazy_measure/___lazy_measure_leaked.
File summaries
| File | Description |
|---|---|
| selene-ext/interfaces/sol_qis/c/include/sol_qis/sol_ops.h | Export ___future_measure and mark legacy lazy-measure APIs as deprecated. |
| selene-ext/interfaces/sol_qis/c/src/sol_ops.c | Implement ___future_measure and keep deprecated lazy-measure shims. |
| selene-sim/python/tests/resources/qis/sol/add_3_11-any.ll | Update SOL QIS test IR to declare/call ___future_measure(..., 0). |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_array_results_unparsed/array_results-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_array_results_unparsed/array_results-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_array_results_unparsed/array_results-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_array_results_unparsed/array_results-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_array_results_unparsed/array_results-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_corrupted_plugin_unparsed/corrupted_plugin-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_corrupted_plugin_unparsed/corrupted_plugin-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_corrupted_plugin_unparsed/corrupted_plugin-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_corrupted_plugin_unparsed/corrupted_plugin-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_corrupted_plugin_unparsed/corrupted_plugin-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_exit_unparsed/exit_unparsed-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_exit_unparsed/exit_unparsed-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_exit_unparsed/exit_unparsed-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_exit_unparsed/exit_unparsed-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_exit_unparsed/exit_unparsed-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_multishot_unparsed/unparsed_flip_n4-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_multishot_unparsed/unparsed_flip_n4-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_multishot_unparsed/unparsed_flip_n4-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_multishot_unparsed/unparsed_flip_n4-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_multishot_unparsed/unparsed_flip_n4-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_unparsed/unparsed_flip_n4-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_unparsed/unparsed_flip_n4-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_unparsed/unparsed_flip_n4-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_unparsed/unparsed_flip_n4-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_unparsed/unparsed_flip_n4-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_with_metrics_unparsed/unparsed_flip_n4-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_with_metrics_unparsed/unparsed_flip_n4-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_with_metrics_unparsed/unparsed_flip_n4-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_with_metrics_unparsed/unparsed_flip_n4-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_flip_some_with_metrics_unparsed/unparsed_flip_n4-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_infinite_loop_unparsed/infinite_loop-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_infinite_loop_unparsed/infinite_loop-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_infinite_loop_unparsed/infinite_loop-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_infinite_loop_unparsed/infinite_loop-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_infinite_loop_unparsed/infinite_loop-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_memory_allocation_unparsed/memory_allocation-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_memory_allocation_unparsed/memory_allocation-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_memory_allocation_unparsed/memory_allocation-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_memory_allocation_unparsed/memory_allocation-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_memory_allocation_unparsed/memory_allocation-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_panic_unparsed/panic_unparsed-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_panic_unparsed/panic_unparsed-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_panic_unparsed/panic_unparsed-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_panic_unparsed/panic_unparsed-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_unparsed/test_panic_unparsed/panic_unparsed-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_timeout/test_timeout/non_terminating_with_results-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_timeout/test_timeout/non_terminating_with_results-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_timeout/test_timeout/non_terminating_with_results-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_timeout/test_timeout/non_terminating_with_results-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_timeout/test_timeout/non_terminating_with_results-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_trace/test_ghz_trace/trace_test-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_trace/test_ghz_trace/trace_test-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_trace/test_ghz_trace/trace_test-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_trace/test_ghz_trace/trace_test-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_trace/test_ghz_trace/trace_test-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-QuestPlugin]/quantum_replay_state-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-QuestPlugin]/quantum_replay_state-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-QuestPlugin]/quantum_replay_state-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-QuestPlugin]/quantum_replay_state-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-QuestPlugin]/quantum_replay_state-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-QuestPlugin]/quantum_replay_state-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-QuestPlugin]/quantum_replay_state-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-QuestPlugin]/quantum_replay_state-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-QuestPlugin]/quantum_replay_state-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-QuestPlugin]/quantum_replay_state-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-StimPlugin]/quantum_replay_state-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-StimPlugin]/quantum_replay_state-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-StimPlugin]/quantum_replay_state-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-StimPlugin]/quantum_replay_state-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[1-StimPlugin]/quantum_replay_state-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-StimPlugin]/quantum_replay_state-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-StimPlugin]/quantum_replay_state-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-StimPlugin]/quantum_replay_state-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-StimPlugin]/quantum_replay_state-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_debug/test_quantum_replay_state[0-StimPlugin]/quantum_replay_state-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_2q_error/depolarising_2q_error-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_2q_error/depolarising_2q_error-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_2q_error/depolarising_2q_error-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_2q_error/depolarising_2q_error-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_2q_error/depolarising_2q_error-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_init_error/depolarising_init_error-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_init_error/depolarising_init_error-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_init_error/depolarising_init_error-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_init_error/depolarising_init_error-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_init_error/depolarising_init_error-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_measurement_error/depolarising_measurement_error-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_measurement_error/depolarising_measurement_error-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_measurement_error/depolarising_measurement_error-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_measurement_error/depolarising_measurement_error-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_measurement_error/depolarising_measurement_error-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_1q_error/depolarising_1q_error-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_1q_error/depolarising_1q_error-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_1q_error/depolarising_1q_error-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_1q_error/depolarising_1q_error-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_depolarising_error_model/test_1q_error/depolarising_1q_error-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_determinism/test_repetition/determinism_repetition-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_determinism/test_repetition/determinism_repetition-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_determinism/test_repetition/determinism_repetition-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_determinism/test_repetition/determinism_repetition-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_determinism/test_repetition/determinism_repetition-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_runtimes/test_simple_vs_softrz/simple_vs_softrz-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_runtimes/test_simple_vs_softrz/simple_vs_softrz-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_runtimes/test_simple_vs_softrz/simple_vs_softrz-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_runtimes/test_simple_vs_softrz/simple_vs_softrz-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_runtimes/test_simple_vs_softrz/simple_vs_softrz-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[QuestPlugin]/quantum_replay_quest-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[QuestPlugin]/quantum_replay_quest-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[QuestPlugin]/quantum_replay_quest-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[QuestPlugin]/quantum_replay_quest-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[QuestPlugin]/quantum_replay_quest-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_recursive_condition/recursive_condition-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_recursive_condition/recursive_condition-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_recursive_condition/recursive_condition-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_recursive_condition/recursive_condition-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_recursive_condition/recursive_condition-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[StimPlugin]/quantum_replay_quest-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[StimPlugin]/quantum_replay_quest-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[StimPlugin]/quantum_replay_quest-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[StimPlugin]/quantum_replay_quest-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_replay/test_quantum_replay[StimPlugin]/quantum_replay_quest-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_from_head-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_from_head-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_from_head-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_from_head-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_from_head-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_within_tail-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_within_tail-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_within_tail-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_within_tail-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measure_leaked/leak_within_tail-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure (incl. leakage flags). |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_circuit_output/circuit_output-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_circuit_output/circuit_output-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_circuit_output/circuit_output-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_circuit_output/circuit_output-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_circuit_output/circuit_output-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_corrupted_plugin/broken_plugin-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_corrupted_plugin/broken_plugin-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_corrupted_plugin/broken_plugin-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_corrupted_plugin/broken_plugin-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_corrupted_plugin/broken_plugin-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cy/cy_test-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cy/cy_test-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cy/cy_test-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cy/cy_test-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cy/cy_test-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cz/cz_test-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cz/cz_test-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cz/cz_test-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cz/cz_test-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_cz/cz_test-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_exit/exit-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_exit/exit-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_exit/exit-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_exit/exit-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_exit/exit-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_flip_some/flip_n4-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_flip_some/flip_n4-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_flip_some/flip_n4-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_flip_some/flip_n4-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_flip_some/flip_n4-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output/measurement_output-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output/measurement_output-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output/measurement_output-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output/measurement_output-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output/measurement_output-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output_multishot/measurement_output_multishot-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output_multishot/measurement_output_multishot-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output_multishot/measurement_output_multishot-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output_multishot/measurement_output_multishot-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_measurement_output_multishot/measurement_output_multishot-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics/metrics-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics/metrics-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics/metrics-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics/metrics-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics/metrics-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics_on_exit/metrics_on_exit-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics_on_exit/metrics_on_exit-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics_on_exit/metrics_on_exit-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics_on_exit/metrics_on_exit-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_metrics_on_exit/metrics_on_exit-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_no_results/no_results-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_no_results/no_results-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_no_results/no_results-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_no_results/no_results-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_no_results/no_results-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_panic/panic-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_panic/panic-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_panic/panic-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_panic/panic-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_panic/panic-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_print_array/flip_n4_arr-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_print_array/flip_n4_arr-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_print_array/flip_n4_arr-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_print_array/flip_n4_arr-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_print_array/flip_n4_arr-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_rus/repeat_until_success-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_rus/repeat_until_success-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_rus/repeat_until_success-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_rus/repeat_until_success-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_rus/repeat_until_success-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_sim_restriction/nonclifford-sol-aarch64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_sim_restriction/nonclifford-sol-aarch64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_sim_restriction/nonclifford-sol-x86_64-apple-darwin.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_sim_restriction/nonclifford-sol-x86_64-unknown-linux-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-sim/python/tests/resources/from_guppy/test_guppy/test_sim_restriction/nonclifford-sol-x86_64-windows-gnu.ll | Update test IR to declare/call ___future_measure. |
| selene-ext/runtimes/soft_rz/python/tests/resources/from_guppy/test_batching/test_batching_behaviour/qft_8qb-sol-aarch64-apple-darwin.ll | Update SoftRZ test IR to declare/call ___future_measure. |
| selene-ext/runtimes/soft_rz/python/tests/resources/from_guppy/test_batching/test_batching_behaviour/qft_8qb-sol-aarch64-unknown-linux-gnu.ll | Update SoftRZ test IR to declare/call ___future_measure. |
| selene-ext/runtimes/soft_rz/python/tests/resources/from_guppy/test_batching/test_batching_behaviour/qft_8qb-sol-x86_64-apple-darwin.ll | Update SoftRZ test IR to declare/call ___future_measure. |
| selene-ext/runtimes/soft_rz/python/tests/resources/from_guppy/test_batching/test_batching_behaviour/qft_8qb-sol-x86_64-unknown-linux-gnu.ll | Update SoftRZ test IR to declare/call ___future_measure. |
| selene-ext/runtimes/soft_rz/python/tests/resources/from_guppy/test_batching/test_batching_behaviour/qft_8qb-sol-x86_64-windows-gnu.ll | Update SoftRZ test IR to declare/call ___future_measure. |
Review details
- Files reviewed: 213/213 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
…asure. Modify sol interface to support future_measure.
jake-arkinstall
force-pushed
the
feat/sol-future-measure
branch
from
September 4, 2026 17:21
86bb0af to
7fd0bf4
Compare
jake-arkinstall
force-pushed
the
feat/sol-future-measure
branch
from
September 7, 2026 10:21
6356915 to
b2bcca6
Compare
jake-arkinstall
added a commit
that referenced
this pull request
Sep 7, 2026
🤖 I have created a release *beep* *boop* --- ## [0.3.1](selene-sim-v0.3.0...selene-sim-v0.3.1) (2026-09-07) ### Features * backtraces on panic ([#210](#210)) ([9f89a02](9f89a02)) * Modify inter-shot random_seed behaviour, provide legacy behaviour through seed_mode ([#209](#209)) ([d71751a](d71751a)) * Support sol ___future_measure ([#213](#213)) ([eb527d5](eb527d5)) ### Dependencies * Widen numpy, llvmlite, pyyaml, pydantic dependencies. Bump minimum ziglang and lief. ([#204](#204)) ([0e8aea3](0e8aea3)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: Jake Arkinstall <65358059+jake-arkinstall@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
___lazy_measureand___lazy_measure_leaked, which is___future_measure(qubit: u64, flags: u64). The flags 0 (normal binary measure) and 1 (ternary leakage measurement) are supported. A TODO is how to support different potential kinds of future measurement in future if any.___lazy_measureand___lazy_measure_leakedso that existing compilers remain supported.___future_measureinstead of___lazy_measureor___lazy_measure_leaked