-
Notifications
You must be signed in to change notification settings - Fork 787
[SYCL][DOC] Add build instructions for Windows to GetStartedWithSYCLC… #494
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
See the final result as it appears in browser (not in editor) here: https://github.com/v-klochkov/llvm/blob/public_windows_getting_started/sycl/doc/GetStartedWithSYCLCompiler.md |
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, I added a few inline comments. Thanks for documenting this!
set SYCL_HOME=%WORK_DIR%\sycl_workspace | ||
``` | ||
--- | ||
## Get `OpenCL-Headers` |
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.
Please, clarify that this is an optional step.
CMake will automatically configure OpenCL headers and ICD loader if OpenCL_INCLUDE_DIR and OpenCL_LIBRARY variables are not set.
BTW, these part of the instructions are not related to Windows enabling, so it would be better to have it committed separately. It should be okay to have a separate commit in this PR as long as it documentation only.
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.
I did not know that OpenCL-Headers and ICD-Loader parts were optional. Probably because I started SYCL build on some older machine with DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1, etc.
Thank you. I am removing these 2 big blocks now.
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.
Now I am not so sure that removing those two optional blocks (download OpenCL_Headers and download/build OpenCL-ICD-Loader) was good idea.
I am going to put them to this guide again.
The reason: even with this patch (that is in code-review now): #528 nmake and make work perfectly without those optional steps/blocks, while 'ninja' does not. Ninja (or our build scripts) have some problems with dependencies. Ninja does not build ICD-Loader before building sycl.lib. SYCL CMakeLists.txt look good to me.
c612f3d
to
d37b6e5
Compare
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.
I'd like to improve this document further including these changes, but we need to get them in first.
d37b6e5
to
af4eaa5
Compare
I updated the doc (added again those 2 optional steps for Headers and ICD-Loader). BTW, The doc says:
Do we really need -lOpenCL now after we've got the PluginInterface. If there are no more direct calls of OpenCL functions, then -lOpenCL is not needed, right? Edited (Aug21): I skip my question because from PRs like this (#517) I can see that direct calls of OpenCL functions are still exist in our sources. |
…ompiler.md 1. Fixed an error in cmake command for Linux. 2. Added steps for OpenCL-Headers and OpenCL-ICD-Loader components, which are required. 3. Added Windows build instructions. 4. Made the build process more verbose and clear. You can literally follow the guide step-by-step to build compiler and tools and run a simple test. Signed-off-by: Vyacheslav N Klochkov <[email protected]>
af4eaa5
to
842cf2d
Compare
- Add support for "partial" move - Teach the pass to look through addrspace cast - Add support for multiple casts Signed-off-by: Alexey Bader <[email protected]>
…ompiler.md
are required.
the guide step-by-step to build compiler and tools and run a simple test.
Signed-off-by: Vyacheslav N Klochkov [email protected]