zoc: Refactoring and fix build

This commit is contained in:
Joëlle van Essen 2025-03-03 13:21:40 +01:00
parent 63b7858720
commit 8e3a15ec3b
No known key found for this signature in database
GPG key ID: 28D3B5CDD4B43882
2 changed files with 6 additions and 8 deletions

View file

@ -23,7 +23,7 @@ members = [
"zoc",
]
default-members = ["zluda", "zluda_ml", "zluda_inject", "zluda_redirect"]
default-members = ["zluda", "zluda_ml", "zluda_inject", "zluda_redirect", "zoc"]
[profile.release-lto]
inherits = "release"

View file

@ -2,7 +2,7 @@ use std::error::Error;
use std::ffi::CStr;
use std::fs::{self, File};
use std::io::{self, Write};
use std::mem;
use std::mem::MaybeUninit;
use std::path::Path;
use std::str;
@ -54,12 +54,10 @@ fn ptx_to_llvm(ptx: &str) -> Result<LLVMArtifacts, Box<dyn Error>> {
fn llvm_to_elf(module: &LLVMArtifacts) -> Result<Vec<u8>, ElfError> {
use hip_runtime_sys::*;
unsafe { hipInit(0) }?;
let dev = 0;
let mut stream = unsafe { mem::zeroed() };
unsafe { hipStreamCreate(&mut stream) }?;
let mut dev_props = unsafe { mem::zeroed() };
unsafe { hipGetDevicePropertiesR0600(&mut dev_props, dev) }?;
let mut dev_props: MaybeUninit<hipDeviceProp_tR0600> = MaybeUninit::uninit();
unsafe { hipGetDevicePropertiesR0600(dev_props.as_mut_ptr(), 0) }?;
let dev_props = unsafe { dev_props.assume_init() };
comgr::compile_bitcode(
unsafe { CStr::from_ptr(dev_props.gcnArchName.as_ptr()) },
&module.bitcode,