[SYCL][Driver] Improve the diagnostic for FPGA device link errors#1077
Merged
bader merged 2 commits intointel:syclfrom Feb 6, 2020
Merged
[SYCL][Driver] Improve the diagnostic for FPGA device link errors#1077bader merged 2 commits intointel:syclfrom
bader merged 2 commits intointel:syclfrom
Conversation
df9a575 to
fb8b84c
Compare
FPGA compilations have a common use case of linking an object file against an arhive that contains a pre-compiled device image. If the archive was comprised without pulling in the object file in question, the presence of any device kernel in the object file would signal incomplete device code compilation/linkage. Within the SYCL flow, a check for this case is performed by the llvm-no-spir-kernel tool, so as to achieve a compile-time failure instead of an obscure runtime failure due to a missing kernel. This patch extends the Clang driver with the infrastructure to enhance error messages upon receiving specific error codes from external tools. The functionality is then used to enhance the diagnostic yielded by llvm-no-spir-kernel in the aforementioned case. Signed-off-by: Artem Gindinson <artem.gindinson@intel.com>
77c96a7 to
d476f8a
Compare
Fznamznon
reviewed
Feb 3, 2020
Signed-off-by: Artem Gindinson <artem.gindinson@intel.com>
mdtoguchi
approved these changes
Feb 5, 2020
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
FPGA compilations have a common use case of linking an object file against
an arhive that contains a pre-compiled device image. If the archive was
comprised without pulling in the object file in question, the presence
of any device kernel in the object file would signal incomplete device code
compilation/linkage.
Within the SYCL flow, a check for this case is performed by the
llvm-no-spir-kernel tool, so as to achieve a compile-time failure instead
of an obscure runtime failure due to a missing kernel.
This patch extends the Clang driver with the infrastructure to enhance
error messages upon receiving specific error codes from external tools.
The functionality is then used to enhance the diagnostic yielded by
llvm-no-spir-kernel in the aforementioned case.
Signed-off-by: Artem Gindinson artem.gindinson@intel.com