Skip to content

[SYCL] Support standard library functions for AOT compilation #2012

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 7, 2020

Conversation

asavonic
Copy link
Contributor

Fallback libraries are now compiled into object files, so they can be
linked at compile time.

Signed-off-by: Andrew Savonichev andrew.savonichev@intel.com

Signed-off-by: Andrew Savonichev <andrew.savonichev@intel.com>
@asavonic asavonic requested review from jinge90 and vzakhari June 30, 2020 14:01
@asavonic asavonic requested review from jbrodman, mkinsner and a team as code owners June 30, 2020 14:01
@asavonic asavonic requested a review from sergey-semenov June 30, 2020 14:01
Comment on lines 284 to 285
files (e.g. `libsycl-fallback-cassert.o`). Device code in these object
files is identical to the the `*.spv` files.
Copy link
Contributor

Choose a reason for hiding this comment

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

I'd expect the device code in .o files to be llvm IR bitcode, if it is produced with '-fsycl -c'.
Is this really a SPIR-V now?

Copy link
Contributor

Choose a reason for hiding this comment

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

I guess Andrew meant that the device code in the object files is identical to the device code in the SPV files, but the format is unspecified. It should be LLVM IR bitcode, not SPIR-V, inside the fallback object files.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@vzakhari is correct. I will reword this section.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done. Please check if it is OK now.

Copy link
Contributor

Choose a reason for hiding this comment

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

LGTM, thanks

Comment on lines 284 to 285
files (e.g. `libsycl-fallback-cassert.o`). Device code in these object
files is identical to the the `*.spv` files.
Copy link
Contributor

Choose a reason for hiding this comment

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

I guess Andrew meant that the device code in the object files is identical to the device code in the SPV files, but the format is unspecified. It should be LLVM IR bitcode, not SPIR-V, inside the fallback object files.

Signed-off-by: Andrew Savonichev <andrew.savonichev@intel.com>
vzakhari
vzakhari previously approved these changes Jul 2, 2020
Copy link
Contributor

@vzakhari vzakhari left a comment

Choose a reason for hiding this comment

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

LGTM for devicelib

sergey-semenov
sergey-semenov previously approved these changes Jul 2, 2020
Signed-off-by: Andrew Savonichev <andrew.savonichev@intel.com>
@asavonic asavonic dismissed stale reviews from sergey-semenov and vzakhari via 3afc363 July 3, 2020 12:18
Copy link
Contributor

@kbobrovs kbobrovs left a comment

Choose a reason for hiding this comment

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

LGTM

@bader bader merged commit 2bd5dab into intel:sycl Jul 7, 2020
Chenyang-L pushed a commit that referenced this pull request Jun 23, 2023
Implement DebugLine/DebugNoLine for NonSemantic.Shader.DebugInfo.100 and NonSemantic.Shader.DebugInfo.200.
Updated test/DebugInfo/NonSemantic/Shader200/DebugInfoStringType.ll to test these changes.

Original commit:
KhronosGroup/SPIRV-LLVM-Translator@3f6d94a
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.

5 participants