string_f2c Subroutine

public subroutine string_f2c(fstring, cstring, string_size)

Convert Fortran string to C string

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: fstring

Fortran string

character(kind=c_char, len=1), intent(inout) :: cstring(*)

C string

integer(kind=int64), intent(out), optional :: string_size

Size of the C string


Called by

proc~~string_f2c~~CalledByGraph proc~string_f2c string_f2c proc~astring_f2c astring_f2c proc~astring_f2c->proc~string_f2c proc~dtfft_get_backend_string_c dtfft_get_backend_string_c proc~dtfft_get_backend_string_c->proc~string_f2c proc~dtfft_get_error_string_c dtfft_get_error_string_c proc~dtfft_get_error_string_c->proc~string_f2c proc~dtfft_get_executor_string_c dtfft_get_executor_string_c proc~dtfft_get_executor_string_c->proc~string_f2c proc~dtfft_get_precision_string_c dtfft_get_precision_string_c proc~dtfft_get_precision_string_c->proc~string_f2c proc~compile_program compile_program proc~compile_program->proc~astring_f2c proc~set_name_expression set_name_expression proc~compile_program->proc~set_name_expression proc~create_nvtx_domain create_nvtx_domain proc~create_nvtx_domain->proc~astring_f2c proc~get_name_expression get_name_expression proc~get_name_expression->proc~astring_f2c proc~load_library load_library proc~load_library->proc~astring_f2c proc~load_symbol load_symbol proc~load_symbol->proc~astring_f2c proc~push_nvtx_domain_range push_nvtx_domain_range proc~push_nvtx_domain_range->proc~astring_f2c proc~push_nvtx_domain_range->proc~create_nvtx_domain proc~autotune_adaptive autotune_adaptive proc~autotune_adaptive->proc~push_nvtx_domain_range proc~autotune_grid autotune_grid proc~autotune_grid->proc~push_nvtx_domain_range proc~run_autotune_backend run_autotune_backend proc~autotune_grid->proc~run_autotune_backend proc~autotune_reshape_plan autotune_reshape_plan proc~autotune_reshape_plan->proc~push_nvtx_domain_range proc~autotune_reshape_plan->proc~autotune_adaptive proc~compress~2 abstract_compressor%compress proc~compress~2->proc~push_nvtx_domain_range proc~create reshape_plan%create proc~create->proc~push_nvtx_domain_range proc~create->proc~autotune_reshape_plan proc~init~2 reshape_plan_base%init proc~create->proc~init~2 proc~create_c2c_internal dtfft_plan_c2c_t%create_c2c_internal proc~create_c2c_internal->proc~push_nvtx_domain_range proc~create_host kernel_host%create_host proc~create_host->proc~push_nvtx_domain_range proc~execute_benchmark kernel_host%execute_benchmark proc~create_host->proc~execute_benchmark proc~select_access_mode_f128 kernel_host%select_access_mode_f128 proc~create_host->proc~select_access_mode_f128 proc~select_access_mode_f32 kernel_host%select_access_mode_f32 proc~create_host->proc~select_access_mode_f32 proc~select_access_mode_f64 kernel_host%select_access_mode_f64 proc~create_host->proc~select_access_mode_f64 proc~create_r2c_internal dtfft_plan_r2c_t%create_r2c_internal proc~create_r2c_internal->proc~push_nvtx_domain_range proc~create_r2r_internal dtfft_plan_r2r_t%create_r2r_internal proc~create_r2r_internal->proc~push_nvtx_domain_range proc~create~12 abstract_executor%create proc~create~12->proc~push_nvtx_domain_range proc~create~15 transpose_plan%create proc~create~15->proc~push_nvtx_domain_range proc~autotune_grid_decomposition autotune_grid_decomposition proc~create~15->proc~autotune_grid_decomposition proc~create~15->proc~run_autotune_backend proc~create~15->proc~init~2 proc~create~6 nvrtc_module%create proc~create~6->proc~compile_program proc~create~6->proc~push_nvtx_domain_range proc~decompress~2 abstract_compressor%decompress proc~decompress~2->proc~push_nvtx_domain_range proc~destroy~10 dtfft_plan_t%destroy proc~destroy~10->proc~push_nvtx_domain_range proc~dynamic_load dynamic_load proc~dynamic_load->proc~load_library proc~dynamic_load->proc~load_symbol proc~execute_benchmark->proc~push_nvtx_domain_range proc~execute_end~3 reshape_plan_base%execute_end proc~execute_end~3->proc~push_nvtx_domain_range proc~execute_many execute_many proc~execute_many->proc~push_nvtx_domain_range proc~execute_single execute_single proc~execute_many->proc~execute_single proc~execute_ptr dtfft_plan_t%execute_ptr proc~execute_ptr->proc~push_nvtx_domain_range proc~execute_private dtfft_plan_t%execute_private proc~execute_ptr->proc~execute_private proc~execute_self_copy abstract_backend%execute_self_copy proc~execute_self_copy->proc~push_nvtx_domain_range proc~execute_single->proc~push_nvtx_domain_range proc~execute_single_transpose_modes execute_single_transpose_modes proc~execute_single->proc~execute_single_transpose_modes proc~execute~10 reshape_plan_base%execute proc~execute~10->proc~push_nvtx_domain_range proc~execute~6 abstract_kernel%execute proc~execute~6->proc~push_nvtx_domain_range proc~execute~6->proc~compress~2 proc~execute~6->proc~decompress~2 proc~execute~9 abstract_executor%execute proc~execute~9->proc~push_nvtx_domain_range proc~get_kernel get_kernel proc~get_kernel->proc~push_nvtx_domain_range proc~create_nvrtc_module create_nvrtc_module proc~get_kernel->proc~create_nvrtc_module proc~get_kernel_instance get_kernel_instance proc~get_kernel->proc~get_kernel_instance proc~get_mangled_name get_mangled_name proc~get_mangled_name->proc~get_name_expression proc~reshape_end dtfft_plan_t%reshape_end proc~reshape_end->proc~push_nvtx_domain_range proc~reshape_end->proc~execute_end~3 proc~reshape_ptr dtfft_plan_t%reshape_ptr proc~reshape_ptr->proc~push_nvtx_domain_range proc~reshape_private dtfft_plan_t%reshape_private proc~reshape_ptr->proc~reshape_private proc~reshape_start_ptr dtfft_plan_t%reshape_start_ptr proc~reshape_start_ptr->proc~push_nvtx_domain_range proc~reshape_start_ptr->proc~reshape_private proc~run_execute_single run_execute_single proc~run_execute_single->proc~push_nvtx_domain_range proc~select_access_mode_f128->proc~push_nvtx_domain_range proc~select_access_mode_f128->proc~execute_benchmark proc~select_access_mode_f32->proc~push_nvtx_domain_range proc~select_access_mode_f32->proc~execute_benchmark proc~select_access_mode_f64->proc~push_nvtx_domain_range proc~select_access_mode_f64->proc~execute_benchmark proc~set_name_expression->proc~get_name_expression proc~transpose_end dtfft_plan_t%transpose_end proc~transpose_end->proc~push_nvtx_domain_range proc~transpose_end->proc~execute_end~3 proc~transpose_ptr dtfft_plan_t%transpose_ptr proc~transpose_ptr->proc~push_nvtx_domain_range proc~transpose_private dtfft_plan_t%transpose_private proc~transpose_ptr->proc~transpose_private proc~transpose_start_ptr dtfft_plan_t%transpose_start_ptr proc~transpose_start_ptr->proc~push_nvtx_domain_range proc~transpose_start_ptr->proc~transpose_private proc~autotune_grid_decomposition->proc~autotune_grid proc~create_c2c dtfft_plan_c2c_t%create_c2c proc~create_c2c->proc~create_c2c_internal proc~create_c2c_pencil dtfft_plan_c2c_t%create_c2c_pencil proc~create_c2c_pencil->proc~create_c2c_internal proc~create_nvrtc_module->proc~create~6 proc~create_r2c dtfft_plan_r2c_t%create_r2c proc~create_r2c->proc~create_r2c_internal proc~create_r2c_pencil dtfft_plan_r2c_t%create_r2c_pencil proc~create_r2c_pencil->proc~create_r2c_internal proc~create_r2r dtfft_plan_r2r_t%create_r2r proc~create_r2r->proc~create_r2r_internal proc~create_r2r_pencil dtfft_plan_r2r_t%create_r2r_pencil proc~create_r2r_pencil->proc~create_r2r_internal proc~create~5 kernel_device%create proc~create~5->proc~get_kernel proc~dtfft_destroy_c dtfft_destroy_c proc~dtfft_destroy_c->proc~destroy~10 proc~dtfft_execute_c dtfft_execute_c proc~dtfft_execute_c->proc~execute_ptr proc~dtfft_reshape_c dtfft_reshape_c proc~dtfft_reshape_c->proc~reshape_ptr proc~dtfft_reshape_end_c dtfft_reshape_end_c proc~dtfft_reshape_end_c->proc~reshape_end proc~dtfft_reshape_start_c dtfft_reshape_start_c proc~dtfft_reshape_start_c->proc~reshape_start_ptr proc~dtfft_transpose_c dtfft_transpose_c proc~dtfft_transpose_c->proc~transpose_ptr proc~dtfft_transpose_end_c dtfft_transpose_end_c proc~dtfft_transpose_end_c->proc~transpose_end proc~dtfft_transpose_start_c dtfft_transpose_start_c proc~dtfft_transpose_start_c->proc~transpose_start_ptr proc~execute_2d dtfft_plan_t%execute_2d proc~execute_2d->proc~execute~10 proc~execute_2d_reshape dtfft_plan_t%execute_2d_reshape proc~execute_2d_reshape->proc~execute~10 proc~execute_end~2 reshape_handle_generic%execute_end proc~execute_end~2->proc~execute~6 proc~execute_fused backend_mpi%execute_fused proc~execute_fused->proc~execute_self_copy proc~execute_fused->proc~execute~6 proc~execute_generic dtfft_plan_t%execute_generic proc~execute_generic->proc~execute~10 proc~execute_generic_reshape dtfft_plan_t%execute_generic_reshape proc~execute_generic_reshape->proc~execute~10 proc~execute_mpi backend_mpi%execute_mpi proc~execute_mpi->proc~execute_self_copy proc~execute_mpi->proc~execute~6 proc~execute_mpi->proc~execute_fused proc~execute_p2p_scheduled backend_mpi%execute_p2p_scheduled proc~execute_mpi->proc~execute_p2p_scheduled proc~execute_nccl backend_nccl%execute_nccl proc~execute_nccl->proc~execute_self_copy proc~execute_nccl->proc~execute~6 proc~execute_p2p_scheduled->proc~execute_self_copy proc~execute_single_transpose_modes->proc~run_execute_single proc~execute_test execute_test proc~execute_test->proc~execute~6 proc~execute_z_slab dtfft_plan_t%execute_z_slab proc~execute_z_slab->proc~execute~10 proc~execute_z_slab->proc~execute_generic proc~execute_z_slab_reshape dtfft_plan_t%execute_z_slab_reshape proc~execute_z_slab_reshape->proc~execute~10 proc~execute~2 abstract_backend%execute proc~execute~2->proc~execute_self_copy proc~execute~2->proc~execute~6 proc~execute~7 dtfft_plan_t%execute proc~execute~7->proc~execute_ptr proc~get nvrtc_module%get proc~get->proc~get_mangled_name proc~load load proc~load->proc~dynamic_load proc~load_cuda load_cuda proc~load_cuda->proc~dynamic_load proc~load_nvrtc load_nvrtc proc~load_nvrtc->proc~dynamic_load proc~reshape dtfft_plan_t%reshape proc~reshape->proc~reshape_ptr proc~reshape_private->proc~execute~10 proc~reshape_start dtfft_plan_t%reshape_start proc~reshape_start->proc~reshape_start_ptr proc~run_autotune_backend->proc~execute_many proc~run_autotune_backend->proc~execute_single proc~test_pack_unpack test_pack_unpack proc~test_pack_unpack->proc~execute~6 proc~test_transpose test_transpose proc~test_transpose->proc~execute~6 proc~transpose dtfft_plan_t%transpose proc~transpose->proc~transpose_ptr proc~transpose_private->proc~execute~10 proc~transpose_start dtfft_plan_t%transpose_start proc~transpose_start->proc~transpose_start_ptr proc~execute_private->proc~execute_2d proc~execute_private->proc~execute_2d_reshape proc~execute_private->proc~execute_generic proc~execute_private->proc~execute_generic_reshape proc~execute_private->proc~execute_z_slab proc~execute_private->proc~execute_z_slab_reshape proc~execute~4 reshape_handle_generic%execute proc~execute~4->proc~execute~2 proc~get_kernel_instance->proc~get proc~init~2->proc~load_cuda proc~init~2->proc~load_nvrtc proc~load_vkfft load_vkfft proc~load_vkfft->proc~load program~test_compression test_compression program~test_compression->proc~test_pack_unpack program~test_compression->proc~test_transpose program~test_device_kernels test_device_kernels program~test_device_kernels->proc~execute_test program~test_device_kernels->proc~load_cuda program~test_device_kernels->proc~load_nvrtc proc~create~10 vkfft_executor%create proc~create~10->proc~load_vkfft