-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support Windows/macOS #73
base: master
Are you sure you want to change the base?
Conversation
Co-authored-by: Lorenz Schmidt [email protected] Co-authored-by: William Moses [email protected]
I can now do this no a device function and the IR looks okay by eyeball. argo +enzyme rustc --release --target=nvptx64-nvidia-cuda -Zbuild-std -- --emit=llvm-ir
Thanks a lot! I looked through your CMakeList.txt changes and created this patch, can you make a PR for Enzyme core out of it? (I didn't had your gh email, so I couldn't commit in your name) Also, do you know what happened to your cargo.lock? It is ~7 times the original size, did you maybe run x or x.py from that folder? I am not sure why it would otherwise change so much. Final question, on which systems could you test this? We hope to add CI soonish, but I didn't got to it yet, so only some Linux versions are really tested. |
Also @motabbara, if you are currently free, we are discussing that in our weekly open Enzyme call at https://mit.zoom.us/j/96000853439 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are the Cargo.lock changes important/significant?
@ZuseZ4 Do you want to merge this into macro2
instead?
I'll put it into macro2 and remove the lock file noise. |
"llvm-target": "arm64-apple-macosx11.0.0", |
@motabbara, I went ahead and created a similar PR to Enzyme, since I just tried to rebuild rust-enzyme and ended up with similar errors. I additionally to your patch also had to update the BCLoader CMakeLists, and I didn't needed your Mac specific changes, so I left these for you. |
let (lib_prefix, lib_ext) = match env::consts::OS { | ||
"macos" => ("lib", "dylib"), | ||
"windows" => ("", "dll"), | ||
_ => ("", "so") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for linux it would also be lib as prefix, as with the dst_lib.
Also, I assume you will also need to update dst_lib with the prefix?
b4d09a6
to
4f0389e
Compare
For this to work I also had to modify Enzyme CMakeLists.txt
Not sure whether these make sense so I guess this is more of a draft PR
CMakeLists.txt