From fedf88180a5e8e2731e9bf016a39293f137d91fd Mon Sep 17 00:00:00 2001 From: Andrzej Janik Date: Mon, 12 Apr 2021 00:42:35 +0200 Subject: [PATCH] Dump all modules, even if not enqueued --- zluda_dump/src/lib.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/zluda_dump/src/lib.rs b/zluda_dump/src/lib.rs index 7387dcc..768d6f1 100644 --- a/zluda_dump/src/lib.rs +++ b/zluda_dump/src/lib.rs @@ -184,6 +184,17 @@ unsafe fn record_module_image(module: CUmodule, image: &str) { }, ); } + if let Err(e) = try_dump_module_image(image) { + os_log!("Errors when saving module: {:?}, {}", module, e); + } +} + +unsafe fn try_dump_module_image(image: &str) -> Result<(), Box> { + let mut dump_path = get_dump_dir()?; + dump_path.push(format!("module_{:04}.ptx", MODULES.as_ref().unwrap().len())); + let mut file = File::create(dump_path)?; + file.write_all(image.as_bytes())?; + Ok(()) } unsafe fn to_str(image: *const T) -> Option<&'static str> {