-
Notifications
You must be signed in to change notification settings - Fork 153
Add options for cross compilation #164
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
Conversation
wsmoses
left a comment
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.
lgtm, add a test that the llvm output is the correct arch?
|
It actually never seems to be the correct arch when compiling a .cu file, at least on my end, a bug perhaps? The generated module is with When the file is .cpp it works as expected: |
|
So part of that is that when compiling modules of two types it uses the one that was compiled first. I'd probably override it if it is set (and in the cuda lower case drop that after merged). |
|
I made it so that the triple and data layout do not get overridden when the compilation job target is nvptx* which is when the device code is compiled, unless that is the only type of compilation job we have. Does this work? |
|
Seems reasonable to me |
These options enabled me to cross compile an aarch64 object file which I was then able to link and run natively on aarch64.