Skip to content

[Driver][SYCL] Enable use of response files for sycl link step #2052

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

Merged
merged 3 commits into from
Jul 10, 2020

Conversation

mdtoguchi
Copy link
Contributor

It was found that with large command lines, with large numbers of files,
The default response file usage for sycl-link would end up failing at
the llvm-link stage due to the length of the command line. All of the
tools within the sycl-link step (clang-offload-wrapper, llvm-link,
llvm-spirv, llc) all support full response files. Go ahead and enable
usage of full response files for sycl-link.

Signed-off-by: Michael D Toguchi [email protected]

@mdtoguchi mdtoguchi requested a review from AGindinson as a code owner July 7, 2020 01:34
AGindinson
AGindinson previously approved these changes Jul 7, 2020
Copy link
Contributor

@AGindinson AGindinson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Cool to learn a new concept!

@AGindinson
Copy link
Contributor

@mdtoguchi, as a second thought, should RF_Full also be enabled for partial link? We could run into the same situation, supposing a large enough number of static libraries gets passed.

@mdtoguchi
Copy link
Contributor Author

@mdtoguchi, as a second thought, should RF_Full also be enabled for partial link? We could run into the same situation, supposing a large enough number of static libraries gets passed.

Done - good suggestion!

mdtoguchi added 2 commits July 7, 2020 09:18
It was found that with large command lines, with large numbers of files,
The default response file usage for sycl-link would end up failing at
the llvm-link stage due to the length of the command line.  All of the
tools within the sycl-link step (clang-offload-wrapper, llvm-link,
llvm-spirv, llc) all support full response files.  Go ahead and enable
usage of full response files for sycl-link.

Signed-off-by: Michael D Toguchi <[email protected]>
@mdtoguchi
Copy link
Contributor Author

Looks like the response file usage has been updated. The setting is now at the addCommand level opposed to the tool level. Modifications coming soon.

@mdtoguchi mdtoguchi force-pushed the private/mdtoguchi/sycl-link-response-file branch from f280bbb to ec11f49 Compare July 7, 2020 17:09
@mdtoguchi mdtoguchi requested a review from AGindinson July 9, 2020 17:07
@AGindinson
Copy link
Contributor

Whoops, sorry, I've somehow missed out on the latest branch update.

@bader bader merged commit 87b94d5 into intel:sycl Jul 10, 2020
Chenyang-L pushed a commit that referenced this pull request Jun 23, 2023
In SPIRVReader, we erase unused functions pretty late, but we were applying
the ExtInst for `--spirv-preserve-auxdata` after that, causing us to try
to work on a deleted function which lead to a crash.

This isn't a problem for the SPIRVWriter case because the unused function
deletion happens way earlier.

Signed-off-by: Sarnie, Nick <[email protected]>

Original commit:
KhronosGroup/SPIRV-LLVM-Translator@9823690
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants