nacl_csr_write
nacl_csr_write(nacl_shmem(), __csr, __val); \
nacl_csr_write(nsh, CSR_VSISELECT, csr->vsiselect);
nacl_csr_write(nsh, CSR_HVIPRIO1, csr->hviprio1);
nacl_csr_write(nsh, CSR_HVIPRIO2, csr->hviprio2);
nacl_csr_write(nsh, CSR_VSIEH, csr->vsieh);
nacl_csr_write(nsh, CSR_HVIPH, csr->hviph);
nacl_csr_write(nsh, CSR_HVIPRIO1H, csr->hviprio1h);
nacl_csr_write(nsh, CSR_HVIPRIO2H, csr->hviprio2h);
nacl_csr_write(nsh, CSR_VSSTATUS, csr->vsstatus);
nacl_csr_write(nsh, CSR_VSIE, csr->vsie);
nacl_csr_write(nsh, CSR_VSTVEC, csr->vstvec);
nacl_csr_write(nsh, CSR_VSSCRATCH, csr->vsscratch);
nacl_csr_write(nsh, CSR_VSEPC, csr->vsepc);
nacl_csr_write(nsh, CSR_VSCAUSE, csr->vscause);
nacl_csr_write(nsh, CSR_VSTVAL, csr->vstval);
nacl_csr_write(nsh, CSR_HEDELEG, cfg->hedeleg);
nacl_csr_write(nsh, CSR_HVIP, csr->hvip);
nacl_csr_write(nsh, CSR_VSATP, csr->vsatp);
nacl_csr_write(nsh, CSR_HENVCFG, cfg->henvcfg);
nacl_csr_write(nsh, CSR_HENVCFGH, cfg->henvcfg >> 32);
nacl_csr_write(nsh, CSR_HSTATEEN0, cfg->hstateen0);
nacl_csr_write(nsh, CSR_HSTATEEN0H, cfg->hstateen0 >> 32);