-
-
Notifications
You must be signed in to change notification settings - Fork 73
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
improvement(memory): full support for struct memory mapping #171
Conversation
Codecov Report
@@ Coverage Diff @@
## master #171 +/- ##
==========================================
+ Coverage 82.87% 82.94% +0.07%
==========================================
Files 163 163
Lines 11269 11509 +240
==========================================
+ Hits 9339 9546 +207
- Misses 1930 1963 +33
Continue to review full report at Codecov.
|
c98364b
to
6fefc2c
Compare
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 just had one question but overall it looks good. Currently the colors of all nodes will always be white unless we are currently allocating so that all looks good too.
I've added a commit that resolves your comment. Could you please review it @baszalmstra? |
6217ca6
to
b7fcf06
Compare
as memory mapping requires knowledge about a struct's memory kind, this needed to be added to one of the memory::Type{..} traits. TypeLayout seemed most applicable
this also fixes "identity" memory mapping, where only an old type pointer needed to be replaced with a new pointer to the same type information
b7fcf06
to
8a4e9b1
Compare
In addition to previous available struct memory mapping, this PR adds:
gc -> gc
,gc -> value
,value -> value
,value -> gc
structs of the same typegc -> gc
,gc -> value
,value -> value
,value -> gc
structs of the different typesIt also fixes a bug with "identity" memory mapping; i.e. when only an old type pointer needed to be replaced with a new pointer to the same type information, instead of actually mapping memory.