gitextract_ehz427hu/ ├── .cargo/ │ └── config.toml ├── .devcontainer/ │ ├── Dockerfile │ └── devcontainer.json ├── .git-blame-ignore-revs ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── config.yml │ │ └── zluda_dump.yml │ └── workflows/ │ ├── move_tests.sh │ ├── nightly_tests.yml │ ├── pr_master.yml │ ├── push_master.yml │ ├── rocm_setup_build.sh │ ├── rocm_setup_run.sh │ └── trigger_nightly_tests.yml ├── .gitignore ├── .gitmodules ├── .rustfmt.toml ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── compiler/ │ ├── Cargo.toml │ └── src/ │ ├── error.rs │ └── main.rs ├── cuda_check/ │ ├── Cargo.toml │ └── src/ │ ├── main.rs │ └── win.rs ├── cuda_macros/ │ ├── .rustfmt.toml │ ├── Cargo.toml │ ├── build/ │ │ └── wrapper.h │ └── src/ │ ├── cublas.rs │ ├── cublaslt.rs │ ├── cublaslt_internal.rs │ ├── cuda.rs │ ├── cudnn8.rs │ ├── cudnn9.rs │ ├── cufft.rs │ ├── cusparse.rs │ ├── lib.rs │ └── nvml.rs ├── cuda_types/ │ ├── .rustfmt.toml │ ├── Cargo.toml │ └── src/ │ ├── cublas.rs │ ├── cublaslt.rs │ ├── cuda.rs │ ├── cudnn.rs │ ├── cudnn8.rs │ ├── cudnn9.rs │ ├── cufft.rs │ ├── cusparse.rs │ ├── dark_api.rs │ ├── lib.rs │ └── nvml.rs ├── dark_api/ │ ├── Cargo.toml │ └── src/ │ ├── fatbin.rs │ └── lib.rs ├── detours-sys/ │ ├── Cargo.toml │ ├── LICENSE-APACHE │ ├── LICENSE-MIT │ ├── README.md │ ├── build/ │ │ └── wrapper.h │ ├── build.rs │ └── src/ │ ├── bundled_bindings.rs │ └── lib.rs ├── docs/ │ ├── .gitignore │ ├── .readthedocs.yaml │ ├── book.toml │ └── src/ │ ├── SUMMARY.md │ ├── building.md │ ├── faq.md │ ├── hip_sdk.md │ ├── llama_cpp.md │ ├── precompiling.md │ ├── quick_start.md │ └── troubleshooting.md ├── ext/ │ ├── detours/ │ │ ├── .github/ │ │ │ ├── ISSUE_TEMPLATE/ │ │ │ │ ├── bug-report.md │ │ │ │ └── question.md │ │ │ ├── PULL_REQUEST_TEMPLATE/ │ │ │ │ └── pull_request_template.md │ │ │ ├── codeql/ │ │ │ │ └── codeql-config.yml │ │ │ └── workflows/ │ │ │ └── main.yml │ │ ├── .gitignore │ │ ├── CREDITS.TXT │ │ ├── LICENSE.md │ │ ├── Makefile │ │ ├── README.md │ │ ├── samples/ │ │ │ ├── Makefile │ │ │ ├── README.TXT │ │ │ ├── comeasy/ │ │ │ │ ├── Makefile │ │ │ │ ├── comeasy.cpp │ │ │ │ ├── wrotei.cpp │ │ │ │ └── wrotei.rc │ │ │ ├── commem/ │ │ │ │ ├── Makefile │ │ │ │ └── commem.cpp │ │ │ ├── common.mak │ │ │ ├── cping/ │ │ │ │ ├── Makefile │ │ │ │ ├── ReadMe.Txt │ │ │ │ ├── cping.cpp │ │ │ │ └── iping.idl │ │ │ ├── disas/ │ │ │ │ ├── Makefile │ │ │ │ ├── arm.asm │ │ │ │ ├── disas.cpp │ │ │ │ ├── ia64.asm │ │ │ │ ├── unk.cpp │ │ │ │ ├── x64.asm │ │ │ │ └── x86.cpp │ │ │ ├── dtest/ │ │ │ │ ├── Makefile │ │ │ │ ├── NORMAL_IA64.TXT │ │ │ │ ├── NORMAL_X64.TXT │ │ │ │ ├── NORMAL_X86.TXT │ │ │ │ ├── dtarge.cpp │ │ │ │ ├── dtarge.h │ │ │ │ ├── dtarge.rc │ │ │ │ └── dtest.cpp │ │ │ ├── dumpe/ │ │ │ │ ├── Makefile │ │ │ │ └── dumpe.cpp │ │ │ ├── dumpi/ │ │ │ │ ├── Makefile │ │ │ │ └── dumpi.cpp │ │ │ ├── dynamic_alloc/ │ │ │ │ ├── Makefile │ │ │ │ ├── main.cpp │ │ │ │ ├── x64.asm │ │ │ │ └── x86.asm │ │ │ ├── echo/ │ │ │ │ ├── Makefile │ │ │ │ ├── echofx.cpp │ │ │ │ ├── echofx.rc │ │ │ │ ├── echonul.cpp │ │ │ │ └── main.cpp │ │ │ ├── einst/ │ │ │ │ ├── Makefile │ │ │ │ ├── edll1x.cpp │ │ │ │ ├── edll2x.cpp │ │ │ │ ├── edll3x.cpp │ │ │ │ └── einst.cpp │ │ │ ├── excep/ │ │ │ │ ├── Makefile │ │ │ │ ├── excep.cpp │ │ │ │ ├── firstexc.cpp │ │ │ │ └── firstexc.h │ │ │ ├── findfunc/ │ │ │ │ ├── Makefile │ │ │ │ ├── extend.cpp │ │ │ │ ├── extend.rc │ │ │ │ ├── findfunc.cpp │ │ │ │ ├── symtest.cpp │ │ │ │ ├── target.cpp │ │ │ │ ├── target.h │ │ │ │ └── target.rc │ │ │ ├── impmunge/ │ │ │ │ ├── Makefile │ │ │ │ └── impmunge.cpp │ │ │ ├── member/ │ │ │ │ ├── Makefile │ │ │ │ └── member.cpp │ │ │ ├── opengl/ │ │ │ │ ├── Makefile │ │ │ │ ├── ogldet.cpp │ │ │ │ ├── ogldet.rc │ │ │ │ └── testogl.cpp │ │ │ ├── region/ │ │ │ │ ├── Makefile │ │ │ │ └── region.cpp │ │ │ ├── setdll/ │ │ │ │ ├── Makefile │ │ │ │ └── setdll.cpp │ │ │ ├── simple/ │ │ │ │ ├── Makefile │ │ │ │ ├── simple.cpp │ │ │ │ ├── simple.rc │ │ │ │ └── sleep5.cpp │ │ │ ├── slept/ │ │ │ │ ├── Makefile │ │ │ │ ├── NORMAL_IA64.TXT │ │ │ │ ├── NORMAL_X64.TXT │ │ │ │ ├── NORMAL_X86.TXT │ │ │ │ ├── dslept.cpp │ │ │ │ ├── dslept.rc │ │ │ │ ├── sleepbed.cpp │ │ │ │ ├── sleepnew.cpp │ │ │ │ ├── sleepold.cpp │ │ │ │ ├── slept.cpp │ │ │ │ ├── slept.h │ │ │ │ ├── slept.rc │ │ │ │ └── verify.cpp │ │ │ ├── syelog/ │ │ │ │ ├── Makefile │ │ │ │ ├── sltest.cpp │ │ │ │ ├── sltestp.cpp │ │ │ │ ├── syelog.cpp │ │ │ │ ├── syelog.h │ │ │ │ └── syelogd.cpp │ │ │ ├── talloc/ │ │ │ │ ├── Makefile │ │ │ │ ├── NORMAL_IA64.TXT │ │ │ │ ├── NORMAL_X64.TXT │ │ │ │ ├── talloc.cpp │ │ │ │ ├── tdll1x.cpp │ │ │ │ ├── tdll2x.cpp │ │ │ │ ├── tdll3x.cpp │ │ │ │ ├── tdll4x.cpp │ │ │ │ ├── tdll5x.cpp │ │ │ │ ├── tdll6x.cpp │ │ │ │ ├── tdll7x.cpp │ │ │ │ ├── tdll8x.cpp │ │ │ │ └── tdll9x.cpp │ │ │ ├── traceapi/ │ │ │ │ ├── Makefile │ │ │ │ ├── _win32.cpp │ │ │ │ ├── testapi.cpp │ │ │ │ ├── trcapi.cpp │ │ │ │ └── trcapi.rc │ │ │ ├── tracebld/ │ │ │ │ ├── Makefile │ │ │ │ ├── tracebld.cpp │ │ │ │ ├── tracebld.h │ │ │ │ ├── trcbld.cpp │ │ │ │ └── trcbld.rc │ │ │ ├── tracelnk/ │ │ │ │ ├── Makefile │ │ │ │ ├── trclnk.cpp │ │ │ │ └── trclnk.rc │ │ │ ├── tracemem/ │ │ │ │ ├── Makefile │ │ │ │ ├── trcmem.cpp │ │ │ │ └── trcmem.rc │ │ │ ├── tracereg/ │ │ │ │ ├── Makefile │ │ │ │ ├── trcreg.cpp │ │ │ │ └── trcreg.rc │ │ │ ├── traceser/ │ │ │ │ ├── Makefile │ │ │ │ ├── trcser.cpp │ │ │ │ └── trcser.rc │ │ │ ├── tracessl/ │ │ │ │ ├── Makefile │ │ │ │ ├── trcssl.cpp │ │ │ │ └── trcssl.rc │ │ │ ├── tracetcp/ │ │ │ │ ├── Makefile │ │ │ │ ├── trctcp.cpp │ │ │ │ └── trctcp.rc │ │ │ ├── tryman/ │ │ │ │ ├── Makefile │ │ │ │ ├── managed.cs │ │ │ │ ├── size.cpp │ │ │ │ ├── tryman.cpp │ │ │ │ ├── tstman.cpp │ │ │ │ └── tstman.rc │ │ │ └── withdll/ │ │ │ ├── Makefile │ │ │ └── withdll.cpp │ │ ├── src/ │ │ │ ├── Makefile │ │ │ ├── creatwth.cpp │ │ │ ├── detours.cpp │ │ │ ├── detours.h │ │ │ ├── detver.h │ │ │ ├── disasm.cpp │ │ │ ├── disolarm.cpp │ │ │ ├── disolarm64.cpp │ │ │ ├── disolia64.cpp │ │ │ ├── disolx64.cpp │ │ │ ├── disolx86.cpp │ │ │ ├── image.cpp │ │ │ ├── modules.cpp │ │ │ └── uimports.cpp │ │ ├── system.mak │ │ ├── tests/ │ │ │ ├── Makefile │ │ │ ├── catch.hpp │ │ │ ├── corruptor.cpp │ │ │ ├── corruptor.h │ │ │ ├── main.cpp │ │ │ ├── test_image_api.cpp │ │ │ └── test_module_api.cpp │ │ └── vc/ │ │ ├── Detours.sln │ │ ├── Detours.vcxproj │ │ └── Detours.vcxproj.filters │ ├── highs-sys/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── build.rs │ │ ├── install-dependencies.sh │ │ ├── src/ │ │ │ ├── c_bindings.rs │ │ │ └── lib.rs │ │ ├── tests/ │ │ │ ├── test_highs_call.rs │ │ │ └── test_highs_functions.rs │ │ └── wrapper.h │ ├── hip_runtime-sys/ │ │ ├── .rustfmt.toml │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── lib.rs │ ├── hipblaslt-sys/ │ │ ├── .rustfmt.toml │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── lib.rs │ ├── miopen-sys/ │ │ ├── .rustfmt.toml │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── lib.rs │ ├── rocblas-sys/ │ │ ├── .rustfmt.toml │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── lib.rs │ ├── rocm_smi-sys/ │ │ ├── .rustfmt.toml │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── lib.rs │ └── rocsparse-sys/ │ ├── .rustfmt.toml │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ └── lib.rs ├── format/ │ ├── .rustfmt.toml │ ├── Cargo.toml │ └── src/ │ ├── dark_api.rs │ ├── dnn8.rs │ ├── dnn9.rs │ ├── format_generated.rs │ ├── format_generated_blas.rs │ ├── format_generated_blaslt.rs │ ├── format_generated_blaslt_internal.rs │ ├── format_generated_dnn8.rs │ ├── format_generated_dnn9.rs │ ├── format_generated_fft.rs │ ├── format_generated_nvml.rs │ ├── format_generated_sparse.rs │ └── lib.rs ├── llvm_zluda/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── compile.rs │ ├── device-libs/ │ │ ├── LICENSE.TXT │ │ ├── README.md │ │ ├── ockl.bc │ │ └── ocml.bc │ ├── ffi.rs │ ├── lib.cpp │ ├── lib.rs │ └── utils.rs ├── ptx/ │ ├── Cargo.toml │ ├── lib/ │ │ ├── zluda_ptx_impl.bc │ │ └── zluda_ptx_impl.cpp │ └── src/ │ ├── lib.rs │ ├── pass/ │ │ ├── deparamize_functions.rs │ │ ├── expand_operands.rs │ │ ├── fix_special_registers.rs │ │ ├── hoist_globals.rs │ │ ├── insert_explicit_load_store.rs │ │ ├── insert_implicit_conversions.rs │ │ ├── insert_post_saturation.rs │ │ ├── instruction_mode_to_global_mode/ │ │ │ ├── call_with_mode.ptx │ │ │ ├── fold_denormal.ptx │ │ │ ├── mod.rs │ │ │ └── test.rs │ │ ├── llvm/ │ │ │ ├── attributes.rs │ │ │ ├── emit.rs │ │ │ └── mod.rs │ │ ├── mod.rs │ │ ├── normalize_basic_blocks.rs │ │ ├── normalize_identifiers.rs │ │ ├── normalize_predicates.rs │ │ ├── remove_unreachable_basic_blocks.rs │ │ ├── replace_instructions_with_functions.rs │ │ ├── replace_instructions_with_functions_fp_required.rs │ │ ├── replace_known_functions.rs │ │ ├── resolve_function_pointers.rs │ │ └── test/ │ │ ├── expand_operands/ │ │ │ ├── immediate_conversion.ptx │ │ │ ├── immediates.ptx │ │ │ ├── mod.rs │ │ │ ├── vector_extract.ptx │ │ │ ├── vector_operand.ptx │ │ │ └── vector_operand_convert.ptx │ │ ├── insert_implicit_conversions/ │ │ │ ├── default.ptx │ │ │ ├── default_reg_b32_reg_f16x2.ptx │ │ │ ├── default_reg_b32_reg_v2_b16.ptx │ │ │ ├── default_relaxed.ptx │ │ │ └── mod.rs │ │ ├── instruction_mode_to_global_mode/ │ │ │ ├── mod.rs │ │ │ └── mode_conflict.ptx │ │ ├── mod.rs │ │ └── normalize_basic_blocks/ │ │ ├── mod.rs │ │ └── trap.ptx │ └── test/ │ ├── _Z9vectorAddPKfS0_Pfi.ptx │ ├── ll/ │ │ ├── _attributes.ll │ │ ├── abs.ll │ │ ├── activemask.ll │ │ ├── add.ll │ │ ├── add_extended.ll │ │ ├── add_ftz.ll │ │ ├── add_non_coherent.ll │ │ ├── add_s32_sat.ll │ │ ├── add_tuning.ll │ │ ├── addc_cc_s32.ll │ │ ├── and.ll │ │ ├── assertfail.ll │ │ ├── atom_add.ll │ │ ├── atom_add_float.ll │ │ ├── atom_cas.ll │ │ ├── atom_inc.ll │ │ ├── b64tof64.ll │ │ ├── bar_red_and_pred.ll │ │ ├── bench.ll │ │ ├── bfe.ll │ │ ├── bfi.ll │ │ ├── block.ll │ │ ├── bmsk_clamp_b32.ll │ │ ├── bra.ll │ │ ├── brev.ll │ │ ├── call.ll │ │ ├── call_rnd.ll │ │ ├── clz.ll │ │ ├── const.ll │ │ ├── const_ident.ll │ │ ├── constant_f32.ll │ │ ├── constant_negative.ll │ │ ├── copysign.ll │ │ ├── cos.ll │ │ ├── cp_async.ll │ │ ├── createpolicy.ll │ │ ├── cvt_f16x2_f32.ll │ │ ├── cvt_f64_f32.ll │ │ ├── cvt_pack.ll │ │ ├── cvt_relu_f16x2_f32.ll │ │ ├── cvt_rn_bf16x2_f32.ll │ │ ├── cvt_rn_f16x2_e4m3x2.ll │ │ ├── cvt_rn_f16x2_e5m2x2.ll │ │ ├── cvt_rn_satfinite_e4m3x2_f32.ll │ │ ├── cvt_rn_satfinite_e5m2x2_f32.ll │ │ ├── cvt_rni.ll │ │ ├── cvt_rni_u16_f32.ll │ │ ├── cvt_rzi.ll │ │ ├── cvt_s16_s8.ll │ │ ├── cvt_s32_f32.ll │ │ ├── cvt_s64_s32.ll │ │ ├── cvt_sat_s_u.ll │ │ ├── cvta.ll │ │ ├── div_approx.ll │ │ ├── div_ftz.ll │ │ ├── div_noftz.ll │ │ ├── dp2a.ll │ │ ├── dp4a.ll │ │ ├── ex2.ll │ │ ├── extern_func.ll │ │ ├── extern_shared.ll │ │ ├── extern_shared_call.ll │ │ ├── fma.ll │ │ ├── fma_bf16x2.ll │ │ ├── fma_f16x2.ll │ │ ├── fmax.ll │ │ ├── global_array.ll │ │ ├── global_array_f32.ll │ │ ├── lanemask_le.ll │ │ ├── lanemask_lt.ll │ │ ├── ld_st.ll │ │ ├── ld_st_implicit.ll │ │ ├── ld_st_offset.ll │ │ ├── ldmatrix.ll │ │ ├── ldmatrix_trans.ll │ │ ├── lg2.ll │ │ ├── local_align.ll │ │ ├── mad_extended.ll │ │ ├── mad_s32.ll │ │ ├── mad_wide.ll │ │ ├── malformed_label.ll │ │ ├── max.ll │ │ ├── membar.ll │ │ ├── min.ll │ │ ├── min_f16.ll │ │ ├── min_nan_f16.ll │ │ ├── mma_m16n8k16_f32_bf16_bf16_f32.ll │ │ ├── mma_m16n8k16_f32_bf16_bf16_f32_2x.ll │ │ ├── mma_m16n8k16_f32_f16_f16_f32.ll │ │ ├── mma_m16n8k32_s32_s8_s8_s32.ll │ │ ├── mma_m16n8k32_s32_s8_s8_s32_interleave.ll │ │ ├── mov.ll │ │ ├── mov_address.ll │ │ ├── mul24_hi_s32.ll │ │ ├── mul24_hi_u32.ll │ │ ├── mul24_lo_s32.ll │ │ ├── mul24_lo_u32.ll │ │ ├── mul_ftz.ll │ │ ├── mul_hi.ll │ │ ├── mul_lo.ll │ │ ├── mul_non_ftz.ll │ │ ├── mul_wide.ll │ │ ├── multiple_return.ll │ │ ├── nanosleep.ll │ │ ├── neg.ll │ │ ├── non_scalar_ptr_offset.ll │ │ ├── noreturn.ll │ │ ├── not.ll │ │ ├── ntid.ll │ │ ├── or.ll │ │ ├── param_is_addressable.ll │ │ ├── popc.ll │ │ ├── pred_not.ll │ │ ├── prmt.ll │ │ ├── prmt_slow.ll │ │ ├── rcp.ll │ │ ├── redux_sync_add_u32_partial.ll │ │ ├── redux_sync_op_s32.ll │ │ ├── redux_sync_op_u32.ll │ │ ├── reg_local.ll │ │ ├── reg_multi.ll │ │ ├── rem.ll │ │ ├── rsqrt.ll │ │ ├── sad_s64.ll │ │ ├── selp.ll │ │ ├── selp_true.ll │ │ ├── set_f16.ll │ │ ├── setp.ll │ │ ├── setp_gt.ll │ │ ├── setp_leu.ll │ │ ├── setp_nan.ll │ │ ├── setp_num.ll │ │ ├── shared_ptr_32.ll │ │ ├── shared_ptr_take_address.ll │ │ ├── shared_unify_extern.ll │ │ ├── shared_unify_local.ll │ │ ├── shared_variable.ll │ │ ├── shf_l.ll │ │ ├── shf_l_clamp.ll │ │ ├── shf_l_wrap.ll │ │ ├── shf_r.ll │ │ ├── shf_r_clamp.ll │ │ ├── shf_r_wrap.ll │ │ ├── shfl_sync_bfly_b32_pred.ll │ │ ├── shfl_sync_down_b32_pred.ll │ │ ├── shfl_sync_idx_b32_pred.ll │ │ ├── shfl_sync_mode_b32.ll │ │ ├── shfl_sync_up_b32_pred.ll │ │ ├── shl.ll │ │ ├── shr.ll │ │ ├── shr_oob.ll │ │ ├── sign_extend.ll │ │ ├── sin.ll │ │ ├── sqrt.ll │ │ ├── sqrt_rn_ftz.ll │ │ ├── stateful_ld_st_ntid.ll │ │ ├── stateful_ld_st_ntid_chain.ll │ │ ├── stateful_ld_st_ntid_sub.ll │ │ ├── stateful_ld_st_simple.ll │ │ ├── stateful_neg_offset.ll │ │ ├── sub.ll │ │ ├── sub_extended.ll │ │ ├── subc_cc_s32.ll │ │ ├── tanh.ll │ │ ├── tid.ll │ │ ├── trap.ll │ │ ├── uint_to_fp_bf16.ll │ │ ├── vector.ll │ │ ├── vector4.ll │ │ ├── vector8.ll │ │ ├── vector8_extract.ll │ │ ├── vector_extract.ll │ │ ├── vector_operand.ll │ │ ├── vote_all.ll │ │ ├── vote_all_sub.ll │ │ ├── vote_any.ll │ │ ├── vote_ballot.ll │ │ ├── warp_sz.ll │ │ └── xor.ll │ ├── mod.rs │ ├── operands.ptx │ ├── spirv_build/ │ │ ├── bar_sync.ptx │ │ ├── global_extern_array.ptx │ │ └── param_func_array_0.ptx │ ├── spirv_fail/ │ │ ├── const_ptr.ptx │ │ ├── global_ptr.ptx │ │ ├── local_ptr.txt │ │ ├── param_entry_array_0.ptx │ │ ├── param_vector.ptx │ │ ├── shared_ptr.ptx │ │ └── shared_ptr2.ptx │ ├── spirv_run/ │ │ ├── abs.ptx │ │ ├── activemask.ptx │ │ ├── add.ptx │ │ ├── add_extended.ptx │ │ ├── add_ftz.ptx │ │ ├── add_non_coherent.ptx │ │ ├── add_s32_sat.ptx │ │ ├── add_tuning.ptx │ │ ├── addc_cc_s32.ptx │ │ ├── and.ptx │ │ ├── assertfail.ptx │ │ ├── atom_add.ptx │ │ ├── atom_add_float.ptx │ │ ├── atom_cas.ptx │ │ ├── atom_inc.ptx │ │ ├── atomics_128.ptx │ │ ├── b64tof64.ptx │ │ ├── bar_red_and_pred.ptx │ │ ├── bfe.ptx │ │ ├── bfi.ptx │ │ ├── block.ptx │ │ ├── bmsk_clamp_b32.ptx │ │ ├── bra.ptx │ │ ├── brev.ptx │ │ ├── call.ptx │ │ ├── call_rnd.ptx │ │ ├── clz.ptx │ │ ├── const.ptx │ │ ├── const_ident.ptx │ │ ├── constant_f32.ptx │ │ ├── constant_negative.ptx │ │ ├── copysign.ptx │ │ ├── cos.ptx │ │ ├── cp_async.ptx │ │ ├── createpolicy.ptx │ │ ├── cvt_f16x2_f32.ptx │ │ ├── cvt_f64_f32.ptx │ │ ├── cvt_pack.ptx │ │ ├── cvt_relu_f16x2_f32.ptx │ │ ├── cvt_rn_bf16x2_f32.ptx │ │ ├── cvt_rn_f16x2_e4m3x2.ptx │ │ ├── cvt_rn_f16x2_e5m2x2.ptx │ │ ├── cvt_rn_satfinite_e4m3x2_f32.ptx │ │ ├── cvt_rn_satfinite_e5m2x2_f32.ptx │ │ ├── cvt_rni.ptx │ │ ├── cvt_rni_u16_f32.ptx │ │ ├── cvt_rzi.ptx │ │ ├── cvt_s16_s8.ptx │ │ ├── cvt_s32_f32.ptx │ │ ├── cvt_s64_s32.ptx │ │ ├── cvt_sat_s_u.ptx │ │ ├── cvta.ptx │ │ ├── div_approx.ptx │ │ ├── div_ftz.ptx │ │ ├── div_noftz.ptx │ │ ├── dp2a.ptx │ │ ├── dp4a.ptx │ │ ├── ex2.ptx │ │ ├── extern_func.ptx │ │ ├── extern_shared.ptx │ │ ├── extern_shared_call.ptx │ │ ├── fma.ptx │ │ ├── fma_bf16x2.ptx │ │ ├── fma_f16x2.ptx │ │ ├── fmax.ptx │ │ ├── func_ptr.ptx │ │ ├── global_array.ptx │ │ ├── global_array_f32.ptx │ │ ├── implicit_param.ptx │ │ ├── lanemask_lt.ptx │ │ ├── ld_st.ptx │ │ ├── ld_st_implicit.ptx │ │ ├── ld_st_offset.ptx │ │ ├── ldmatrix.ptx │ │ ├── ldmatrix_trans.ptx │ │ ├── lg2.ptx │ │ ├── local_align.ptx │ │ ├── mad_extended.ptx │ │ ├── mad_s32.ptx │ │ ├── mad_wide.ptx │ │ ├── malformed_label.ptx │ │ ├── max.ptx │ │ ├── membar.ptx │ │ ├── min.ptx │ │ ├── min_f16.ptx │ │ ├── min_nan_f16.ptx │ │ ├── mma_m16n8k16_f32_bf16_bf16_f32.ptx │ │ ├── mma_m16n8k16_f32_bf16_bf16_f32_2x.ptx │ │ ├── mma_m16n8k16_f32_f16_f16_f32.ptx │ │ ├── mma_m16n8k32_s32_s8_s8_s32.ptx │ │ ├── mma_m16n8k32_s32_s8_s8_s32_interleave.ptx │ │ ├── mod.rs │ │ ├── mov.ptx │ │ ├── mov_address.ptx │ │ ├── mul24_hi_s32.ptx │ │ ├── mul24_hi_u32.ptx │ │ ├── mul24_lo_s32.ptx │ │ ├── mul24_lo_u32.ptx │ │ ├── mul_ftz.ptx │ │ ├── mul_hi.ptx │ │ ├── mul_lo.ptx │ │ ├── mul_non_ftz.ptx │ │ ├── mul_wide.ptx │ │ ├── multiple_return.ptx │ │ ├── nanosleep.ptx │ │ ├── neg.ptx │ │ ├── non_scalar_ptr_offset.ptx │ │ ├── noreturn.ptx │ │ ├── not.ptx │ │ ├── ntid.ptx │ │ ├── or.ptx │ │ ├── param_is_addressable.ptx │ │ ├── popc.ptx │ │ ├── pred_not.ptx │ │ ├── prmt.ptx │ │ ├── prmt_slow.ptx │ │ ├── rcp.ptx │ │ ├── redux_sync_add_u32_partial.ptx │ │ ├── redux_sync_op_s32.ptx │ │ ├── redux_sync_op_u32.ptx │ │ ├── reg_local.ptx │ │ ├── reg_multi.ptx │ │ ├── rem.ptx │ │ ├── rsqrt.ptx │ │ ├── sad_s64.ptx │ │ ├── selp.ptx │ │ ├── selp_true.ptx │ │ ├── set_f16.ptx │ │ ├── setp.ptx │ │ ├── setp_gt.ptx │ │ ├── setp_leu.ptx │ │ ├── setp_nan.ptx │ │ ├── setp_num.ptx │ │ ├── shared_ptr_32.ptx │ │ ├── shared_ptr_take_address.ptx │ │ ├── shared_unify_extern.ptx │ │ ├── shared_unify_local.ptx │ │ ├── shared_variable.ptx │ │ ├── shf_l.ptx │ │ ├── shf_l_clamp.ptx │ │ ├── shf_l_wrap.ptx │ │ ├── shf_r.ptx │ │ ├── shf_r_clamp.ptx │ │ ├── shf_r_wrap.ptx │ │ ├── shfl_sync_bfly_b32_pred.ptx │ │ ├── shfl_sync_down_b32_pred.ptx │ │ ├── shfl_sync_idx_b32_pred.ptx │ │ ├── shfl_sync_mode_b32.ptx │ │ ├── shfl_sync_up_b32_pred.ptx │ │ ├── shl.ptx │ │ ├── shr.ptx │ │ ├── shr_oob.ptx │ │ ├── sign_extend.ptx │ │ ├── sin.ptx │ │ ├── sqrt.ptx │ │ ├── sqrt_rn_ftz.ptx │ │ ├── stateful_ld_st_ntid.ptx │ │ ├── stateful_ld_st_ntid_chain.ptx │ │ ├── stateful_ld_st_ntid_sub.ptx │ │ ├── stateful_ld_st_simple.ptx │ │ ├── stateful_neg_offset.ptx │ │ ├── sub.ptx │ │ ├── sub_extended.ptx │ │ ├── subc_cc_s32.ptx │ │ ├── tanh.ptx │ │ ├── tid.ptx │ │ ├── trap.ptx │ │ ├── uint_to_fp_bf16.ptx │ │ ├── vector.ptx │ │ ├── vector4.ptx │ │ ├── vector8.ptx │ │ ├── vector8_extract.ptx │ │ ├── vector_extract.ptx │ │ ├── vector_operand.ptx │ │ ├── verify.py │ │ ├── vote_all.ptx │ │ ├── vote_all_sub.ptx │ │ ├── vote_any.ptx │ │ ├── vote_ballot.ptx │ │ ├── warp_sz.ptx │ │ └── xor.ptx │ ├── vectorAdd_11.ptx │ └── vectorAdd_kernel64.ptx ├── ptx_parser/ │ ├── Cargo.toml │ └── src/ │ ├── ast.rs │ ├── check_args.py │ └── lib.rs ├── ptx_parser_macros/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── ptx_parser_macros_impl/ │ ├── Cargo.toml │ └── src/ │ ├── lib.rs │ └── parser.rs ├── ptxas/ │ ├── Cargo.toml │ └── src/ │ └── main.rs ├── xtask/ │ ├── Cargo.toml │ └── src/ │ └── main.rs ├── zluda/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── impl/ │ │ ├── context.rs │ │ ├── device.rs │ │ ├── driver.rs │ │ ├── event.rs │ │ ├── function.rs │ │ ├── graph.rs │ │ ├── hipfix.rs │ │ ├── kernel.rs │ │ ├── library.rs │ │ ├── memory.rs │ │ ├── mod.rs │ │ ├── module.rs │ │ ├── os_unix.rs │ │ ├── os_win.rs │ │ ├── pointer.rs │ │ └── stream.rs │ ├── lib.rs │ ├── os_unix.rs │ ├── os_win.rs │ └── tests.rs ├── zluda_bindgen/ │ ├── Cargo.toml │ ├── build/ │ │ ├── cublasLt_internal.h │ │ ├── cublas_wrapper.h │ │ ├── cuda_wrapper.h │ │ ├── cudnn_v8/ │ │ │ ├── cudnn_adv_infer.h │ │ │ ├── cudnn_adv_train.h │ │ │ ├── cudnn_backend.h │ │ │ ├── cudnn_cnn_infer.h │ │ │ ├── cudnn_cnn_train.h │ │ │ ├── cudnn_ops_infer.h │ │ │ ├── cudnn_ops_train.h │ │ │ └── cudnn_version.h │ │ ├── cufft_wraper.h │ │ └── decompile_cublaslt_internal.py │ └── src/ │ ├── main.rs │ └── process_table.rs ├── zluda_blas/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── impl.rs │ ├── lib.rs │ └── tests.rs ├── zluda_blaslt/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── impl.rs │ └── lib.rs ├── zluda_cache/ │ ├── Cargo.toml │ ├── diesel.toml │ ├── migrations/ │ │ ├── .keep │ │ └── 2025-08-04-203347_create_initial/ │ │ ├── down.sql │ │ └── up.sql │ └── src/ │ ├── lib.rs │ ├── models.rs │ └── schema.rs ├── zluda_common/ │ ├── Cargo.toml │ └── src/ │ ├── constants.rs │ ├── lib.rs │ ├── os_unix.rs │ └── os_win.rs ├── zluda_dnn/ │ ├── Cargo.toml │ └── src/ │ ├── impl.rs │ └── lib.rs ├── zluda_dnn8/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ └── lib.rs ├── zluda_dnn9/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── lib.rs │ └── tests.rs ├── zluda_fft/ │ ├── Cargo.toml │ └── src/ │ ├── impl.rs │ └── lib.rs ├── zluda_inject/ │ ├── Cargo.toml │ ├── build.rs │ ├── src/ │ │ ├── args.rs │ │ ├── bin.rs │ │ ├── main.rs │ │ └── win.rs │ └── tests/ │ ├── helpers/ │ │ ├── direct_cuinit.rs │ │ ├── do_cuinit.rs │ │ ├── do_cuinit_early.rs │ │ ├── do_cuinit_late.rs │ │ ├── do_cuinit_late_clr.cs │ │ ├── indirect_cuinit.rs │ │ └── subprocess.rs │ └── inject.rs ├── zluda_ld/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_ml/ │ ├── Cargo.toml │ └── src/ │ ├── impl_common.rs │ ├── impl_unix.rs │ ├── impl_win.rs │ └── lib.rs ├── zluda_precompile/ │ ├── Cargo.toml │ └── src/ │ └── main.rs ├── zluda_redirect/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_sparse/ │ ├── Cargo.toml │ ├── build.rs │ └── src/ │ ├── impl.rs │ └── lib.rs ├── zluda_trace/ │ ├── Cargo.toml │ └── src/ │ ├── dark_api.rs │ ├── lib.rs │ ├── log.rs │ ├── os_unix.rs │ ├── os_win.rs │ └── trace.rs ├── zluda_trace_blas/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_blaslt/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_common/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_dnn8/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_dnn9/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_fft/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_nvml/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── zluda_trace_sparse/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs └── zluda_windows/ ├── Cargo.toml ├── library.manifest ├── manifest.rc └── src/ └── lib.rs