Skip to content

Conversation

@adrian-prantl
Copy link
Contributor

Cherry-pick of #22954
rdar://problem/48259889

@adrian-prantl
Copy link
Contributor Author

@swift-ci test

Copy link
Contributor

@slavapestov slavapestov left a comment

Choose a reason for hiding this comment

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

Can we call them generic parameters and not "archetypes" here?

@adrian-prantl
Copy link
Contributor Author

Are you saying that we should rename swift::Demangle::archetypeName() to swift::Demangle::genericParameterName()?

I'm happy to do that, I just always thought that T was an Archetype and τ_0_0 was a generic parameter, so it would be the name of the Archetype...

@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - 58c93f147de21e2b952823ad3e73c66973ed9f6a

@slavapestov
Copy link
Contributor

Yeah, I would prefer if we not use the term "archetype" in the demangler at all. It's an implementation detail of the compiler.

@adrian-prantl
Copy link
Contributor Author

Works for me. I'll open a separate PR to rename everything.

@swift-ci
Copy link
Contributor

swift-ci commented Mar 1, 2019

Build failed
Swift Test OS X Platform
Git Sha - 58c93f147de21e2b952823ad3e73c66973ed9f6a

slavapestov and others added 5 commits March 1, 2019 21:08
Fixes <rdar://problem/48004306>.

(cherry picked from commit d0c7b15)
This is done by disallowing nodes with children to also have index or text payloads.
In some cases those payloads were not needed anyway, because the information can be derived later.
In other cases the fix was to insert an additional child node with the index/text payload.

Also, implement single or double children as "inline" children, which avoids needing a separate node vector for children.

All this reduces the needed size for node trees by over 2x.
LLDB would like to substitute the original Archetype names from the
source code when demangling symbols instead of the confusing generic
'A', 'B', ...

<rdar://problem/48259889>
@adrian-prantl
Copy link
Contributor Author

@swift-ci test and merge

@adrian-prantl
Copy link
Contributor Author

@swift-ci test and merge

@swift-ci swift-ci merged commit b04abaa into swiftlang:swift-5.1-branch Mar 2, 2019
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.

4 participants