-
Notifications
You must be signed in to change notification settings - Fork 842
[SYCL RTC] Use in-memory libcxx/libc headers for SPIR-V targets #20502
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
Open
aelovikov-intel
wants to merge
19
commits into
intel:sycl
Choose a base branch
from
aelovikov-intel:sycl-rtc-runtimes-headers
base: sycl
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
ea115c6
[SYCL RTC] Add `sycl-rtc-experimental-redist-mode` option
aelovikov-intel d7a20b3
Address minor CR comments
aelovikov-intel 02fca66
Fix typo
aelovikov-intel dab7317
s/debug/debugging/
aelovikov-intel 0821704
Merge remote-tracking branch 'origin/sycl' into HEAD
aelovikov-intel ed22872
Extra comment
aelovikov-intel 4b85687
[clang][Driver][SYCL] Disable SYCL header search paths under `-nostd[…
aelovikov-intel 649561a
[WIP] Flip the default for libcxx/libc usage
aelovikov-intel 99affbb
Merge remote-tracking branch 'origin/sycl' into HEAD
aelovikov-intel f7a3ed5
Better CMake integration
aelovikov-intel da5ee80
Fix typos/add comments (thanks to Nick)
aelovikov-intel 6a6770c
Merge remote-tracking branch 'origin/sycl' into HEAD
aelovikov-intel fab3b51
Update extension
aelovikov-intel d76c4df
Add layout test
aelovikov-intel 3729836
Partially address review feedback
aelovikov-intel 5f88bca
clang-format
aelovikov-intel 1067a08
fp64 is optional
aelovikov-intel 4e0b4ba
Merge remote-tracking branch 'origin/sycl' into HEAD
aelovikov-intel 8a39ac6
clang-format
aelovikov-intel File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -7609,6 +7609,14 @@ let Visibility = [SYCLRTCOnlyOption] in { | |
| : Joined<["--"], "persistent-auto-pch=">, | ||
| HelpText<"Use Persistent Auto-PCH cache located at <dir> for SYCL " | ||
| "RTC Compilation">; | ||
| def sycl_rtc_use_system_includes | ||
| : Flag<["--"], "sycl-rtc-use-system-includes">, | ||
| HelpText<"Use system includes instead of in-memory libcxx/libc">; | ||
| def sycl_rtc_in_memory_fs_only | ||
| : Flag<["--"], "sycl-rtc-in-memory-fs-only">, | ||
| HelpText<"Disable real filesystem access for SYCL RTC compilation, " | ||
| "debugging/testing only">, | ||
| Flags<[HelpHidden]>; | ||
|
Comment on lines
+7615
to
+7619
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @gmlueck , I don't see much value in this for end users, so I decided not to document it in the extension specification. |
||
| } // let Group = sycl_rtc_only_Group | ||
| } // let Visibility = [SYCLRTCOnlyOption] | ||
|
|
||
|
|
||
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
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
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
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| if(EXISTS "${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/${LIBC_TARGET_ARCHITECTURE}/entrypoints.txt") | ||
| include("${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/${LIBC_TARGET_ARCHITECTURE}/entrypoints.txt") | ||
| else() | ||
| include("${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/entrypoints.txt") | ||
| endif() |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| include("${LIBC_SOURCE_DIR}/config/linux/x86_64/headers.txt") |
78 changes: 78 additions & 0 deletions
78
sycl-jit/jit-compiler/lib/resource-includes/include/sycl-rtc-standalone/__external_threading
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,78 @@ | ||
| _LIBCPP_BEGIN_NAMESPACE_STD | ||
|
|
||
| using __libcpp_timespec_t = int; | ||
|
|
||
| // | ||
| // Mutex | ||
| // | ||
| using __libcpp_mutex_t = int; | ||
| #define _LIBCPP_MUTEX_INITIALIZER 0 | ||
|
|
||
| using __libcpp_recursive_mutex_t = int; | ||
|
|
||
| int __libcpp_recursive_mutex_init(__libcpp_recursive_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS int __libcpp_recursive_mutex_lock(__libcpp_recursive_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS bool __libcpp_recursive_mutex_trylock(__libcpp_recursive_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS int __libcpp_recursive_mutex_unlock(__libcpp_recursive_mutex_t*); | ||
| int __libcpp_recursive_mutex_destroy(__libcpp_recursive_mutex_t*); | ||
|
|
||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS int __libcpp_mutex_lock(__libcpp_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS bool __libcpp_mutex_trylock(__libcpp_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS int __libcpp_mutex_unlock(__libcpp_mutex_t*); | ||
| int __libcpp_mutex_destroy(__libcpp_mutex_t*); | ||
|
|
||
| // | ||
| // Condition Variable | ||
| // | ||
| using __libcpp_condvar_t = int; | ||
| #define _LIBCPP_CONDVAR_INITIALIZER 0 | ||
|
|
||
| int __libcpp_condvar_signal(__libcpp_condvar_t*); | ||
| int __libcpp_condvar_broadcast(__libcpp_condvar_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS int __libcpp_condvar_wait(__libcpp_condvar_t*, __libcpp_mutex_t*); | ||
| _LIBCPP_NO_THREAD_SAFETY_ANALYSIS | ||
| int __libcpp_condvar_timedwait(__libcpp_condvar_t*, __libcpp_mutex_t*, __libcpp_timespec_t*); | ||
| int __libcpp_condvar_destroy(__libcpp_condvar_t*); | ||
|
|
||
| // | ||
| // Execute once | ||
| // | ||
| using __libcpp_exec_once_flag = int; | ||
| #define _LIBCPP_EXEC_ONCE_INITIALIZER 0 | ||
|
|
||
| int __libcpp_execute_once(__libcpp_exec_once_flag*, void (*__init_routine)()); | ||
|
|
||
| // | ||
| // Thread id | ||
| // | ||
| using __libcpp_thread_id = int; | ||
|
|
||
| bool __libcpp_thread_id_equal(__libcpp_thread_id, __libcpp_thread_id); | ||
| bool __libcpp_thread_id_less(__libcpp_thread_id, __libcpp_thread_id); | ||
|
|
||
| // | ||
| // Thread | ||
| // | ||
| #define _LIBCPP_NULL_THREAD 0 | ||
| using __libcpp_thread_t = int; | ||
|
|
||
| bool __libcpp_thread_isnull(const __libcpp_thread_t*); | ||
| int __libcpp_thread_create(__libcpp_thread_t*, void* (*__func)(void*), void* __arg); | ||
| __libcpp_thread_id __libcpp_thread_get_current_id(); | ||
| __libcpp_thread_id __libcpp_thread_get_id(const __libcpp_thread_t*); | ||
| int __libcpp_thread_join(__libcpp_thread_t*); | ||
| int __libcpp_thread_detach(__libcpp_thread_t*); | ||
| void __libcpp_thread_yield(); | ||
| void __libcpp_thread_sleep_for(const chrono::nanoseconds&); | ||
|
|
||
| // | ||
| // Thread local storage | ||
| // | ||
| #define _LIBCPP_TLS_DESTRUCTOR_CC 0 | ||
| using __libcpp_tls_key = int; | ||
|
|
||
| int __libcpp_tls_create(__libcpp_tls_key*, void (*__at_exit)(void*)); | ||
| void* __libcpp_tls_get(__libcpp_tls_key); | ||
| int __libcpp_tls_set(__libcpp_tls_key, void*); | ||
|
|
||
| _LIBCPP_END_NAMESPACE_STD |
Empty file.
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
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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.