Skip to content

Don't arena-allocate static symbols. #61077

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 1 commit into from
May 26, 2019
Merged

Conversation

nnethercote
Copy link
Contributor

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label May 23, 2019
@petrochenkov
Copy link
Contributor

petrochenkov commented May 23, 2019

Haha, nice idea.

Minimized even further:

    fn prefill(init: &[&'static str]) -> Self {
        Interner {
            strings: init.into(),
            names: init.iter().copied().zip((0..).map(Symbol::new)).collect(),
            ..Default::default()
        }
    }

@petrochenkov petrochenkov added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 23, 2019
@nnethercote
Copy link
Contributor Author

Today I learned that collect works with HashMap :)

@nnethercote
Copy link
Contributor Author

@petrochenkov: I have updated the code.

@petrochenkov
Copy link
Contributor

Looks like the changes were not pushed to github.

It's just a waste of memory. This also gets rid of the special case for
"".
@nnethercote
Copy link
Contributor Author

Ok, changes are pushed now! Sorry about that.

@petrochenkov
Copy link
Contributor

Thanks!
@bors r+ rollup

@bors
Copy link
Collaborator

bors commented May 24, 2019

📌 Commit e396f99 has been approved by petrochenkov

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels May 24, 2019
Centril added a commit to Centril/rust that referenced this pull request May 24, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 24, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
bors added a commit that referenced this pull request May 24, 2019
Rollup of 13 pull requests

Successful merges:

 - #61077 (Don't arena-allocate static symbols.)
 - #61094 (Make find_local iterate instead of recurse)
 - #61095 (Update cargo)
 - #61096 (tidy: don't short-circuit on license error)
 - #61103 (Make find iterate instead of recurse)
 - #61104 (Make eval_place_to_op iterate instead of recurse)
 - #61107 (Fix a couple docs typos)
 - #61110 (Revert edition-guide toolstate override)
 - #61111 (Fixed type-alias-bounds lint doc)
 - #61113 (Deprecate `FnBox`. `Box<dyn FnOnce()>` can be called directly, since 1.35)
 - #61116 (Remove the incorrect warning from README.md)
 - #61118 (Dont ICE on an attempt to use GAT without feature gate)
 - #61125 (Updated my mailmap entry)

Failed merges:

r? @ghost
Centril added a commit to Centril/rust that referenced this pull request May 24, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
Rollup of 5 pull requests

Successful merges:

 - rust-lang#60928 (Changes the type `mir::Mir` into `mir::Body`)
 - rust-lang#61035 (Avoid more symbol interning)
 - rust-lang#61036 (PGO - Add a smoketest for combining PGO with cross-language LTO.)
 - rust-lang#61077 (Don't arena-allocate static symbols.)
 - rust-lang#61080 (Ship profiler with windows-gnu)

Failed merges:

r? @ghost
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 25, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
Centril added a commit to Centril/rust that referenced this pull request May 26, 2019
…henkov

Don't arena-allocate static symbols.

It's just a waste of memory. This also gets rid of the special case for
"".

r? @petrochenkov
bors added a commit that referenced this pull request May 26, 2019
Rollup of 4 pull requests

Successful merges:

 - #61077 (Don't arena-allocate static symbols.)
 - #61102 (Move path for iterate)
 - #61120 (Make eval_place iterate instead of recurse)
 - #61205 (docs: fix typo #61197)

Failed merges:

r? @ghost
@bors bors merged commit e396f99 into rust-lang:master May 26, 2019
@nnethercote nnethercote deleted the tweak-prefill branch May 26, 2019 23:01
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants