-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Remove fastcomp-only EMULATED_FUNCTION_POINTERS setting #11864
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm.. I thought we had a binaryen pass that does emulated fps? Is that somehow different to this setting? Whats the store for programs that python that need this behaviour?
@@ -1795,19 +1785,6 @@ def test_bigarray(self): | |||
def test_mod_globalstruct(self): | |||
self.do_run_in_out_file_test('tests', 'core', 'test_mod_globalstruct') | |||
|
|||
@no_wasm_backend('long doubles are f128s in wasm backend') | |||
def test_pystruct(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if this test is still useful? It looks like it was disabled not because EMULATED_FUNCTION_POINTERS was missing but because of fp128.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think probably not... it just has some interesting structs in it, taken from python. We test equally interesting things in other places, and it's more of a clang-level feature anyhow. The interesting part of the test was the relocatable + emulated function pointers part which is removed, so I removed the whole test.
tests/test_core.py
Outdated
@@ -6012,20 +5989,9 @@ def count_relocations(): | |||
num_relocs = relocs.count('\n') | |||
return relocs, num_relocs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Huh.. this function looks completely unused both before and after this change...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good eye, removed.
# success! | ||
self.assertContained('Hello, world.', output) | ||
for relocatable in [0, 1]: | ||
for wasm in [0, 1]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yay, one level less!
Yeah, it can be confusing - emulated function pointers is not the same as emulated function pointer casts. The latter is necessary for python and we have a binaryen pass for it, yes. Getting rid of this setting will remove that confusion! |
Lets try to reference #11860 in all the cleanups. |
(some changes best viewed without whitespace)