-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Roll Emdawnwebgpu and repoint USE_WEBGPU tests at Emdawnwebgpu #25397
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
base: main
Are you sure you want to change the base?
Changes from 4 commits
595792c
d12517b
ef5a6da
4f93d5f
3d62df6
e817b60
e070e8e
b3c5761
c674a2c
abd2580
1dd4a1c
9523fef
1946c55
1714f1c
8ebf5ef
74c3ec6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||
---|---|---|---|---|---|---|---|---|
|
@@ -2586,6 +2586,7 @@ def test_contrib_ports(self): | |||||||
|
||||||||
@requires_network | ||||||||
def test_remote_ports(self): | ||||||||
self.set_setting('NO_DEFAULT_TO_CXX', 0) # emdawnwebgpu uses C++ internally | ||||||||
self.emcc(test_file('hello_world.c'), ['--use-port=emdawnwebgpu']) | ||||||||
|
||||||||
@crossplatform | ||||||||
|
@@ -9585,13 +9586,15 @@ def test_closure_full_js_library(self, args): | |||||||
|
||||||||
@also_with_wasm64 | ||||||||
kainino0x marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||
def test_closure_webgpu(self): | ||||||||
# This test can be removed if USE_WEBGPU is later included in INCLUDE_FULL_LIBRARY. | ||||||||
if config.FROZEN_CACHE: | ||||||||
# TODO(crbug.com/446944885): Make Emdawnwebgpu work with FROZEN_CACHE if possible. | ||||||||
self.skipTest("test doesn't work with frozen cache") | ||||||||
self.set_setting('NO_DEFAULT_TO_CXX', 0) # emdawnwebgpu uses C++ internally | ||||||||
self.build('hello_world.c', cflags=[ | ||||||||
'--closure=1', | ||||||||
'-Werror=closure', | ||||||||
'-Wno-error=deprecated', | ||||||||
'-sINCLUDE_FULL_LIBRARY', | ||||||||
'-sUSE_WEBGPU', | ||||||||
'--use-port=emdawnwebgpu', | ||||||||
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. Do we have any remaining tests for 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. No, but I'm planning to remove it immediately after this (#25398). |
||||||||
]) | ||||||||
|
||||||||
# Tests --closure-args command line flag | ||||||||
|
@@ -12230,15 +12233,6 @@ def test_standalone_syscalls(self): | |||||||
for engine in config.WASM_ENGINES: | ||||||||
self.assertContained(expected, self.run_js('test.wasm', engine)) | ||||||||
|
||||||||
@parameterized({ | ||||||||
'': ([],), | ||||||||
'assertions': (['-sASSERTIONS'],), | ||||||||
'closure': (['-sASSERTIONS', '--closure=1'],), | ||||||||
'dylink': (['-sMAIN_MODULE'],), | ||||||||
}) | ||||||||
def test_webgpu_compiletest(self, args): | ||||||||
self.run_process([EMXX, test_file('webgpu_jsvalstore.cpp'), '-Wno-error=deprecated', '-sUSE_WEBGPU', '-sASYNCIFY'] + args) | ||||||||
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. Why is this test no longer useful? 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. The whole jsvalstore thing has been removed in Emdawnwebgpu. We have another mechanism but it would need entirely new tests. |
||||||||
|
||||||||
@flaky('https://github.com/emscripten-core/emscripten/issues/25343') | ||||||||
@also_with_wasm64 | ||||||||
@parameterized({ | ||||||||
|
@@ -12247,7 +12241,10 @@ def test_webgpu_compiletest(self, args): | |||||||
'closure_assertions': (['--closure=1', '-Werror=closure', '-sASSERTIONS'],), | ||||||||
}) | ||||||||
def test_emdawnwebgpu_link_test(self, args): | ||||||||
self.run_process([EMXX, test_file('test_emdawnwebgpu_link_test.cpp'), '--use-port=emdawnwebgpu', '-sASYNCIFY'] + args) | ||||||||
if config.FROZEN_CACHE: | ||||||||
# TODO(crbug.com/446944885): Make Emdawnwebgpu work with FROZEN_CACHE if possible. | ||||||||
self.skipTest("test doesn't work with frozen cache") | ||||||||
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. Why is this 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. I think it's because previously the cache was pre-populated with I can try to pre-populate the cache with the appropriate Emdawnwebgpu objects if you think that's appropriate. 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. Lines 103 to 104 in 3b22cd6
I think it comes from this? I don't think it'll be that easy to add Emdawnwebgpu here though. 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. Oh, it would be added via this Line 139 in 3b22cd6
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. But the old code and the new code here both use 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. Oh, sorry, I missed which test this was. I actually have no idea. If I remove emdawnwebgpu from my local cache and run the old test (on Could the 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. Oh, CI has an explicit separate Embuilder step. Let me figure out how to test that locally and then see where I need to skip tests. 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. Okay, I figured out which configurations don't get precached and skipped only those. 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. ... Although I did not figure out exactly why it was passing before and isn't now. |
||||||||
self.emcc(test_file('test_emdawnwebgpu_link_test.cpp'), ['--use-port=emdawnwebgpu', '-sASYNCIFY'] + args) | ||||||||
|
||||||||
def test_signature_mismatch(self): | ||||||||
create_file('a.c', 'void foo(); int main() { foo(); return 0; }') | ||||||||
|
Uh oh!
There was an error while loading. Please reload this page.