Skip to content

[pull] swiftwasm from main #3601

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 31 commits into from
Sep 28, 2021
Merged

[pull] swiftwasm from main #3601

merged 31 commits into from
Sep 28, 2021

Conversation

pull[bot]
Copy link

@pull pull bot commented Sep 28, 2021

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

al45tair and others added 30 commits September 6, 2021 17:49
Mangling can fail, usually because the Node structure has been built
incorrectly or because something isn't supported with the old remangler.
We shouldn't just terminate the program when that happens, particularly
if it happens because someone has passed bad data to the demangler.

rdar://79725187
First pass at adding error handling to the actual Remangler.  There are
still some assert() calls at this point that I'm thinking about.

rdar://79725187
Fix the tests to work after the Remangler has been fixed to do error handling.

rdar://79725187
This lets us completely remove the unreachable() function from Remangler.cpp.

rdar://79725187
First pass at adding error handling to the OldRemangler.  Still pondering
assert() calls.

rdar://79725187
This returns an error code if we're in the runtime, rather than assert()ing.

rdar://79725187
Because DEMANGLER_ASSERT() might cause the remanglers to return a ManglingError
with the code ManglingError::AssertionFailed, it's useful to have a line number
in the ManglingError as well as the other information.  This is also potentially
helpful for other cases where the code is used multiple times in the remanglers.

rdar://79725187
Also fixed a test that broke with the previous commit.

rdar://79725187
This became an issue because git clang-format reorganised the includes
in one of the other files.

rdar://79725187
Defining DEMANGLE_ASSERT as assert() is simple but messes up the file/line
information from assert().  Make a dedicated assertion failure function and use
that instead to fix.

Also enable some tests that were disabled because they triggered abort()
calls in the remanglers.

rdar://79725187
Sed on our Windows builders appears to not support extended regex syntax.
Attempt fix by using basic syntax instead.  Also, add a '-e'.

rdar://79725187
I can't see why it's going wrong on Windows, and I don't want to turn the test
off just for Windows.  Without the "sed", if the line numbers in the remangler
files change, this test will fail, which is a bit irritating but I suspect
we'll live.

rdar://79725187
Previously, the flag was named -sil-view-guaranteed-cfg.  Here, it's
renamed to -sil-view-canonical-cfg.
To print the module, use the new llvm flag -sil-print-canonical-module
which parallels the existing flag -sil-view-canonical-cfg.  When that
flag is passed, the new pass ModulePrinter is added to the diagnostic
pass pipeline after mandatory diagnostics have run.  The new pass just
prints the module to stdout.
[Demangler] Improve remangler error handling
[swift-api-extract] Handle @_spi interfaces with correct APIAccess
)

This change adds support for WASI to `StdlibDeploymentTarget` in `swift_build_support/targets.py`. This will allow us to build stdlib for WASI in the future.

Related to SR-9307.
We shouldn't rely on the specific name of the operand.
…nteed-module

[SIL] Enabled printing canonical module.
Generalize the check from arm64e to also include arm64. Fixes
rdar://83502661.
- Skip permanent rules (there's no point, we'll add them back next time)
- Skip conformance rules (these will be handled separately)
- Delete 3-cells that are entirely "in-context" (but don't quote me on
  this one, I'm not quite yet convinced it's correct, but it feels right)
[nfc][cxx-interop] Fix regex in reference irgen test.
…nformances

RequirementMachine: Sketch out "generating conformances" algorithm
@MaxDesiatov MaxDesiatov merged commit 46b37c3 into swiftwasm Sep 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants