use cfg_if::cfg_if;
cfg_if! {
if #[cfg(zisk_guest)] {
use core::arch::asm;
use crate::{ziskos_fcall, ziskos_fcall_get, ziskos_fcall_param};
use super::{FCALL_GET_KECCAKF_CACHE_INDEX_ID, FCALL_SET_KECCAKF_CACHE_INDEX_ID};
} else {
use crate::zisklib::fcalls_impl::keccakf_cache::{
keccakf_cache_get_index, keccakf_cache_set_index,
};
}
}
#[allow(unused_variables)]
pub fn fcall_set_keccakf_cache_index(index: u64) {
#[cfg(not(zisk_guest))]
{
keccakf_cache_set_index(index);
}
#[cfg(zisk_guest)]
{
ziskos_fcall_param!(index, 1);
ziskos_fcall!(FCALL_SET_KECCAKF_CACHE_INDEX_ID);
}
}
#[allow(unused_variables)]
pub fn fcall_get_keccakf_cache_index(state: &[u64; 25]) -> u64 {
#[cfg(not(zisk_guest))]
{
keccakf_cache_get_index(state)
}
#[cfg(zisk_guest)]
{
ziskos_fcall_param!(state, 25);
ziskos_fcall!(FCALL_GET_KECCAKF_CACHE_INDEX_ID);
ziskos_fcall_get()
}
}