Skip to content
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

Salsa produces a lot of duplicate (?) monomorphisations #220

Open
matklad opened this issue May 13, 2020 · 8 comments
Open

Salsa produces a lot of duplicate (?) monomorphisations #220

matklad opened this issue May 13, 2020 · 8 comments

Comments

@matklad
Copy link
Member

matklad commented May 13, 2020

I've looked at cargo-bloat output for rust-analyzer, and I see things like

 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
 0.0%   0.0%  2.7KiB           ra_assists <salsa::derived::slot::Slot<DB,Q,MP> as salsa::dependency::DatabaseSlot<DB>>::maybe_changed_since
...

Full output: https://gist.github.com/matklad/3be59ade1cae624f9705a3c13b1cbfeb

@bjorn3
Copy link
Contributor

bjorn3 commented May 13, 2020

The maybe_changed_since implementation for Slot<DB, Q, MP> reads from the Slot<DB, Q, MP>, whose layout depends on the used database DB and key Q::Key. While the layout likely doesn't depend on the full query Q as it is used behind a RwLock, there is no guarantee to this:

pub(super) struct Slot<DB, Q, MP>
where
Q: QueryFunction<DB>,
DB: Database + HasQueryGroup<Q::Group>,
MP: MemoizationPolicy<DB, Q>,
{
key: Q::Key,
state: RwLock<QueryState<DB, Q>>,
policy: PhantomData<MP>,
lru_index: LruIndex,
}

@matklad
Copy link
Member Author

matklad commented Jun 21, 2020

cargo llvm-lines points its finger in the same general direction: https://gist.github.com/matklad/688220f27cd54bf4967838fe5cb1d8f6#file-cargo-llvm-lines

@lnicola
Copy link
Contributor

lnicola commented Jul 1, 2020

Also seen here:

0000000000000000 00000000000029cf t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17he4c108d4d45b0c8aE
0000000000000000 00000000000029af t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h105711be69e42350E
0000000000000000 0000000000002565 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h42b066ad4e0af51dE
0000000000000000 000000000000218a t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17he144e998e694cf1aE
0000000000000000 0000000000001f2f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h31ef3f7be1ced9dcE
0000000000000000 0000000000001d38 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hceee7185b8016b12E
0000000000000000 0000000000001d16 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17haf812467a93209dfE
0000000000000000 0000000000001c67 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hc462ddcd27f8727dE
0000000000000000 0000000000001c0a t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17he435c68032d8e081E
0000000000000000 0000000000001af4 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h0fda3a009585a459E
0000000000000000 0000000000001ace t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h3eaed239dafe3a2cE
0000000000000000 0000000000001ab4 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h4c7f1da8d22586a1E
0000000000000000 0000000000001a94 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h734fe20f7d1547d1E
0000000000000000 0000000000001a84 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h1432a5b926a249edE
0000000000000000 0000000000001a7c t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hbe2e4f6dbb5166c3E
0000000000000000 0000000000001a7c t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h18b1b8d89718466cE
0000000000000000 0000000000001a61 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hf055dd3533855b40E
0000000000000000 0000000000001a5e t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h7f935b8693783bdbE
0000000000000000 0000000000001a45 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hb02e05fbe4a87498E
0000000000000000 0000000000001a2f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h1715397b770e78fdE
0000000000000000 0000000000001a2e t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hc0cf9ce7544d6b30E
0000000000000000 0000000000001a2c t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17heef7364a7baf6618E
0000000000000000 0000000000001a28 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h514b643b16a27afeE
0000000000000000 0000000000001a22 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hcd3d516e77c11be3E
0000000000000000 0000000000001a22 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h8ceadceeba0f5e50E
0000000000000000 0000000000001a1f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hd243c23bdb7bdf6dE
0000000000000000 0000000000001a0f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hac5d271ae71ac7fdE
0000000000000000 0000000000001a0f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17ha464f67ba09cc679E
0000000000000000 0000000000001a08 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hd132590dae7e8244E
0000000000000000 0000000000001a08 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h482b4b726ea9236aE
0000000000000000 00000000000019fa t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17ha9df6842e142e224E
0000000000000000 00000000000019f8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h2584f164d4499a7bE
0000000000000000 00000000000019e8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h7e31385b3f8d9874E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hec83364df16a485bE
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17he4832e050e1fae40E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hdcd7491c84701bb4E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17hd8461f2020d3f7b6E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h9d3f680217b2e8cfE
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h89112d1975bf3e14E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h784fc7fa4772cadfE
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h51364254b0d6ccbcE
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h4aaeedb33884efe1E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h4a50df823bca2b90E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h46859beb9e4dfa9eE
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h376d056de62b8849E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h1b54dea32a3a20e7E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h1474fa72d14607c3E
0000000000000000 00000000000019d8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h0e84dcf0f4e00fa4E
0000000000000000 00000000000019be t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h1050073c7e32aabcE
0000000000000000 00000000000019af t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12read_upgrade17h6a21d64801a83940E
0000000000000000 0000000000000f12 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hab16ec90ad68e33fE
0000000000000000 0000000000000ef4 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h1445d334e2fdd3baE
0000000000000000 0000000000000c0b T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hdfbc13ca7894fdc9E
0000000000000000 0000000000000be6 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hab85b2bef50ea537E
0000000000000000 0000000000000b42 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17he6ffdb2d9015e04dE
0000000000000000 0000000000000b42 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hcbe14ecbed8b0498E
0000000000000000 0000000000000b42 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h6ea210f38a6b3999E
0000000000000000 0000000000000b29 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h4b7c17d2cc9d3c00E
0000000000000000 0000000000000b21 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h02ab65dbc9c2baadE
0000000000000000 0000000000000b08 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hfe8be9b6f2cec891E
0000000000000000 0000000000000afd T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h177bef856a3e2f87E
0000000000000000 0000000000000aee T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hdef2d9ccd2a1e487E
0000000000000000 0000000000000ad3 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hbdd96801f9515b02E
0000000000000000 0000000000000abc T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h63c41ea33c970d87E
0000000000000000 0000000000000abc T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h0c64f890fe35a689E
0000000000000000 0000000000000aae T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hd89a16910eddcaf4E
0000000000000000 0000000000000aae T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hc5119ce6fbd4c34cE
0000000000000000 0000000000000aac T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h949acd1392a0d6b4E
0000000000000000 0000000000000aac T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h799671dcd5e9c93eE
0000000000000000 0000000000000aac T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h77de0227b1b2dc5fE
0000000000000000 0000000000000aac T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h2913a5f64c1952b0E
0000000000000000 0000000000000aa9 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h21eb4f0f23a20266E
0000000000000000 0000000000000aa2 T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hc15d96522b807a68E
0000000000000000 0000000000000a9e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hcd0e35cd420251d8E
0000000000000000 0000000000000a9e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h469472394d14acbdE
0000000000000000 0000000000000a9e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h11c83d45e3621a90E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hfe9200197a57cce5E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hef9b994b34536af6E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hec6e73d37695b0e8E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17he7d682c003c65491E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hd01fc909463d6c96E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hce6a60ab10ea3994E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17hb6c2cb2c5a9608bdE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h9b0af4ac9bc6c17aE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h917e1f34e662f0c5E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h8ded642b6e12161aE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h8d8857ec6d0aaa03E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h8ba54d5655eb0f50E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h82113ccb3d6015deE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h72b00da3526cd697E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h691dae59f32a93aeE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h674c04f65c0bf270E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h4fcdced557f2b26fE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h4f5bdff698ffab71E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h427b0e64be57209eE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h42421e9ca9beb54cE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h3ee3ad27692e39f0E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h2bd5fc71d8cd5617E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h265a4449cec31863E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h247072adb0bd90ddE
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h1ac9269d335b9b35E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h15c2d47d089f2855E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h141c6ee8f4d49324E
0000000000000000 0000000000000a8e T _ZN107_$LT$salsa..derived..slot..Slot$LT$DB$C$Q$C$MP$GT$$u20$as$u20$salsa..dependency..DatabaseSlot$LT$DB$GT$$GT$19maybe_changed_since17h0cd619ea40d22652E
0000000000000000 0000000000000a5a T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hb56ff2e851fade62E
0000000000000000 0000000000000970 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h4f94c2be60795ec5E
0000000000000000 000000000000096d T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hdbee9429036e7863E
0000000000000000 000000000000096d T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17haa01a3d010071022E
0000000000000000 000000000000096d T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h1bfb9473df108ca9E
0000000000000000 0000000000000946 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h43870629911d0904E
0000000000000000 000000000000092e T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h96595f1000f0c77bE
0000000000000000 00000000000008f5 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17heafb12f48fc399ffE
0000000000000000 00000000000008e1 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hf854a6028a5435d7E
0000000000000000 00000000000008cb T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hebb00d0cdc344b67E
0000000000000000 00000000000008cb T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hcc82a3f950b801c0E
0000000000000000 00000000000008cb T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h6f787bc74ba7686aE
0000000000000000 00000000000008cb T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h51b17af1f9b60ed2E
0000000000000000 00000000000008ca T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hf478524fb8b566eaE
0000000000000000 00000000000008c6 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h91e2c7e2fd933accE
0000000000000000 00000000000008b2 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h3ca05431fca7f111E
0000000000000000 00000000000008a7 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h9e9b74036a09f988E
0000000000000000 00000000000008a7 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h17faeec7c6bcd419E
0000000000000000 00000000000008a7 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h0ffb51f4964ed6ceE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17heb7e911aa99bbf5dE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17he7bfdbd6dfa5ac29E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hd18822075d511181E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hb61e1a19b403b1dcE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hb1027a0dc894eba6E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17ha0741db412d99f45E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h98afe8d0ca10cceeE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h8abef05558a3c4f2E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h849d11b6bebe9278E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h7c8ebff8c1be3aa9E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h7338175ed42fa3caE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h724ffb53ba431d28E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h71086c82995b886bE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h70783729b562a08fE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h6d02d4b87f4eaafeE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h4bf8a330220afc24E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h4b1dd4a84bf873bfE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h3a14427be484f4c7E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h386bff121449dde6E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h36a9d1a57d581c57E
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h2e0652222211a37eE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h271ba17415c5779aE
0000000000000000 0000000000000898 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h249f5ba3c83aa03aE
0000000000000000 0000000000000891 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h37e10d4649313505E
0000000000000000 0000000000000890 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17haebe7d7d6df34e4bE
0000000000000000 000000000000087d T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hd9d54335aa52015fE
0000000000000000 0000000000000864 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h510b9bc00ab072ecE
0000000000000000 0000000000000860 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hee70fe5fe0c8f848E
0000000000000000 0000000000000860 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17hbe2f61f42d7566c7E
0000000000000000 000000000000083c T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h64a2219dde95eae3E
0000000000000000 000000000000083c T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$4read17h5eb9c7d99057006cE
0000000000000000 00000000000007bb T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h5cb073073cb83e38E
0000000000000000 00000000000007b6 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h2d5c09e4a2f87585E
0000000000000000 000000000000078f T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h103bb65b7595e7b4E
0000000000000000 0000000000000731 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hb27fc0d58bc3bc19E
0000000000000000 0000000000000710 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h40e6027dd5fbcd65E
0000000000000000 000000000000070b T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hd8dcc5de2bc83bf5E
0000000000000000 000000000000070b T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hc44afe4e53e53dc0E
0000000000000000 00000000000006ed T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h70d50c00ebc29ae1E
0000000000000000 00000000000006e7 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hfaea6000b7cf7056E
0000000000000000 00000000000006e7 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h963bc64a0f94df35E
0000000000000000 00000000000006e7 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h673fb00da11231d7E
0000000000000000 00000000000006e7 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h5105f47fa6c71314E
0000000000000000 00000000000006e4 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hdee5c6b79388b11eE
0000000000000000 00000000000006d9 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hcd58bef94d1b09afE
0000000000000000 00000000000006d9 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hc0ae5af3f59a5bafE
0000000000000000 00000000000006d9 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h0c32ff96c05fde3fE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hfd25b8aad7a4deabE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hf81456e9385c96fbE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hf21f10f01f8b7f7eE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hf19b494d0d781796E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hebedf1efc0fde331E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hdf47879ac14f1a8dE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hdedd6f216d6d78b6E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hda5dba423fdfaaaaE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hd4e124db0bd6e5ffE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hd0e5e7b2169cf80dE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hc767345a9717ba2bE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hc3fc85797ebe7d98E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hbe088b5cc52010faE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17haaa2dc39b7358481E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17ha9c17fdc7d56d3caE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h9ec900830d946199E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h9dfff9313c74eadaE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h931c6bac13fbfe34E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h7366b80138a17dc6E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h6ff6e470bb742d01E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h5ff3c8845df8f431E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h5f7b0bc28c5e167cE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h5df2fafd2f258f24E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h55de03f5ecdedd4eE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h3784247d90c100a0E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h15cd619962bf9258E
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h0193431d018e724eE
0000000000000000 00000000000006b5 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h01555375b467ab0fE
0000000000000000 000000000000069b T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17h8b188e304cee8694E
0000000000000000 0000000000000697 T _ZN5salsa7derived4slot29PanicGuard$LT$DB$C$Q$C$MP$GT$21overwrite_placeholder17hadbd45b692095070E
0000000000000000 0000000000000372 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h5f4d0aeeebb45f6dE
0000000000000000 00000000000002d1 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hec8f4f452a80c912E
0000000000000000 00000000000002cb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hfd93ce39c9ac9ce5E
0000000000000000 00000000000002cb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h9bdb09e618ed09acE
0000000000000000 00000000000002cb T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$12database_key17hacb020f822bef71fE
0000000000000000 00000000000002c5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hf98dd57da262f60aE
0000000000000000 00000000000002c5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hd592063b867cc7d4E
0000000000000000 00000000000002c5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h9f3deed4d94c2b8eE
0000000000000000 00000000000002c3 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hfa044305165bc4afE
0000000000000000 00000000000002c3 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hee977ed34d9a4e9eE
0000000000000000 00000000000002bf t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h9296400cb500f0c6E
0000000000000000 00000000000002bb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hd1896a667dc62c8dE
0000000000000000 00000000000002bb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h8eada82b1c5ffabaE
0000000000000000 00000000000002bb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h8d3e527dd29a6100E
0000000000000000 00000000000002bb t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h788a48e6f2127199E
0000000000000000 00000000000002ba t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hca8cb56413f03fbfE
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h994f308aee866e85E
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h8b89f079f3ce43d5E
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h7b33775e8682de83E
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h6460851e1acad285E
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h4e77c7762b3e53bfE
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h3a481ca1402badc8E
0000000000000000 00000000000002b7 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h24eab4e768123ca7E
0000000000000000 00000000000002b5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hcfe5bc5817b5cdcdE
0000000000000000 00000000000002b5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hb3b9cd4261f559afE
0000000000000000 00000000000002b5 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h03b33f05e8ae99a8E
0000000000000000 00000000000002ad t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hb43c5b5a49767197E
0000000000000000 00000000000002ad t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h792b3167031e6817E
0000000000000000 00000000000002ad t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h199797b8a37f259bE
0000000000000000 00000000000002ab t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hb9e7d8b5c82ec3d8E
0000000000000000 00000000000002a9 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h606a25ae8c6956c6E
0000000000000000 00000000000002a9 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h382b8d459bdbd897E
0000000000000000 00000000000002a8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h5f4a9de5a33e1b0eE
0000000000000000 00000000000002a8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h3847a851584414c7E
0000000000000000 00000000000002a8 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h2463c3b2ee34d1dfE
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hf3b419849ce4bc9dE
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17he136498e1ea4aa12E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hd4bd3c1c2b5b0e48E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hd43ac72073cb908bE
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17hbc812880b9f07d66E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h6a9fe1179de52948E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h5e9eae4788a512f5E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h597cf4d1d4ed3959E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h54f18a494832df52E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h455c1d50b9f93a69E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h217efd4d414b5fa2E
0000000000000000 00000000000002a6 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h04b6ab3c258033e5E
0000000000000000 0000000000000298 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h85098890c8a35603E
0000000000000000 0000000000000298 t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h1fa13ad77fe5d935E
0000000000000000 000000000000028f t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17haef6dfa7bcff3538E
0000000000000000 000000000000028d t _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$32register_with_in_progress_thread17h00f6753b91860b3dE
0000000000000000 0000000000000166 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hde96c61603094ec5E
0000000000000000 0000000000000166 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hcf43b50bb6b42acbE
0000000000000000 0000000000000166 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h0268073a1207398eE
0000000000000000 000000000000014d T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h980333667ecfa146E
0000000000000000 000000000000013c T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h322709b20572052cE
0000000000000000 000000000000013b t _ZN4core3ptr13drop_in_place17h3523cd29cbfc1fb6E
0000000000000000 0000000000000128 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h8a483bf2e226c036E
0000000000000000 0000000000000117 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb5091c27ac9e3109E
0000000000000000 0000000000000110 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$3new17h03059f7deba8e592E
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17ha74b0ffd59cdc2ecE
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h893fe65f9c90d534E
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h3585804ab68d0489E
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h193b322895053b71E
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h18a8ec287eb9e62dE
0000000000000000 000000000000010f t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h02df0ad5e5572fb0E
0000000000000000 000000000000010d t _ZN4core3ptr13drop_in_place17h1958d990b14f413aE
0000000000000000 0000000000000109 t _ZN5salsa7derived4slot18Memo$LT$DB$C$Q$GT$16check_durability17h23cd6168bd204514E
0000000000000000 0000000000000101 t _ZN4core3ptr13drop_in_place17h7cb369a774cd89b3E
0000000000000000 00000000000000f1 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$14as_table_entry17h28f1487da159c2aeE
0000000000000000 00000000000000f0 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h721dbe7a44ce8381E
0000000000000000 00000000000000f0 t _ZN4core3ptr13drop_in_place17h35da0659b6ef1699E
0000000000000000 00000000000000ef t _ZN4core3ptr13drop_in_place17h322dc91702cb9bdbE
0000000000000000 00000000000000e5 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h6255b65209d8a20eE
0000000000000000 00000000000000dd t _ZN72_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h4f983900d37aa7d3E
0000000000000000 00000000000000dd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h3ca79356b2c60cfdE
0000000000000000 00000000000000d6 t _ZN4core3ptr13drop_in_place17h7e65ab5100f6a614E
0000000000000000 00000000000000cd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb4a8147deb68bfc2E
0000000000000000 00000000000000cd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb0664a5ccc1d5b1dE
0000000000000000 00000000000000c6 t _ZN4core3ptr13drop_in_place17hee95d3d441f273f4E
0000000000000000 00000000000000c5 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$14as_table_entry17hdee1ecc68609bb31E
0000000000000000 00000000000000c3 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hfc58d71c0e2195d4E
0000000000000000 00000000000000c3 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hfb4a7d1341b65004E
0000000000000000 00000000000000c3 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hab36603fa3182dc7E
0000000000000000 00000000000000c3 T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h81361a76ab5bc6aeE
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17hbfa7e31ee8623e90E
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17hbb2a1c0657f27b52E
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17h92344a75315a02f8E
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17h75b73b7f0decc161E
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17h42a3686e87c94f9dE
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17h258cc32f425c41acE
0000000000000000 00000000000000c1 t _ZN4core3ptr13drop_in_place17h18d4dde65aebea96E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hfe207ce31856ea62E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hf2b2d591accf093fE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hcbf48b26327f52a3E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb137d512c0dcfdd0E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17ha8686dec713b7a6fE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h9ae7da8476421b3aE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h885e33ca7224a991E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h85b361f87fe2dd7cE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h7e6bafeed6e77c51E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h7a3190e35215eee8E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h78b01a017703ca37E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h6ebc630d9c88097bE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h67bada8ce517a854E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h48d48192acefe06eE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h4047bd8244902445E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h3ffc72141ba41531E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h369e1ed608e7701cE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h3460d1b56fc83674E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h2d9f9e1dd2735ea7E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h2b5c12bfb531b473E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h24d52fe0f87ae592E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h247841aa490eea54E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h1ee8bd3b9c397374E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h1e618192024f9c3aE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h1975658d07edbb86E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h09dbe8a9a2837008E
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h01446e361599f21fE
0000000000000000 00000000000000bd T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h0071bac0083ff0cfE
0000000000000000 00000000000000bc T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hee1a7e84ca1fb9daE
0000000000000000 00000000000000bc T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb79ccb6ccce7d254E
0000000000000000 00000000000000bc T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17hb675545da585aa5fE
0000000000000000 00000000000000bc T _ZN5salsa7derived4slot23Slot$LT$DB$C$Q$C$MP$GT$5evict17h8efce675bb983314E

@nikomatsakis
Copy link
Member

See also #231 which does a lot of restructuring and would presumably address this problem.

@jonas-schievink
Copy link
Contributor

Seems like this can be closed now?

@matklad
Copy link
Member Author

matklad commented Jul 13, 2020

@jonas-schievink I think we produce some extra monomophisations for Drop of query table

@matklad
Copy link
Member Author

matklad commented Aug 28, 2021

I think we've solved the rest of the mystery in rust-lang/rust-analyzer#10065.

Every crate/codegen-unit that goes from ConcerteDatabase -> dyn DatabaseTrait generates a copy of vtable. For usual queries, we counter that with our __shim functions. The problem is that the vtable also includes generated drop. That drop is not only user-provided custom drop, but the standard drop-every-field-in-order glue as well. That glue is what causing us the extra duplication we still see.

EDIT: and jonas-schievink came up with a genious hack for this: rust-lang/rust-analyzer#10069

@lnicola
Copy link
Contributor

lnicola commented Aug 29, 2021

New cargo bloat --release output:

 File  .text    Size                Crate Name
 0.2%   0.5% 69.8KiB               ide_db ide_db::apply_change::<impl ide_db::RootDatabase>::per_query_memory_usage
 0.2%   0.4% 59.2KiB              hir_def hir_def::body::lower::ExprCollector::maybe_collect_expr
 0.1%   0.3% 50.9KiB               hir_ty hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_expr_inner
 0.1%   0.3% 47.4KiB       proc_macro_srv <proc_macro_srv::abis::abi_1_56::proc_macro::bridge::server::Dispatcher<proc_macro_srv::abis::abi_1_56::proc_macro::bridge::server::MarkedTypes<S>> as proc_macro_srv:...
 0.1%   0.3% 39.0KiB       proc_macro_srv <proc_macro_srv::abis::abi_1_55::proc_macro::bridge::server::Dispatcher<proc_macro_srv::abis::abi_1_55::proc_macro::bridge::server::MarkedTypes<S>> as proc_macro_srv:...
 0.1%   0.2% 38.5KiB       proc_macro_srv <proc_macro_srv::abis::abi_1_47::proc_macro::bridge::server::Dispatcher<proc_macro_srv::abis::abi_1_47::proc_macro::bridge::server::MarkedTypes<S>> as proc_macro_srv:...
 0.1%   0.2% 27.8KiB        rust_analyzer rust_analyzer::config::field_props
 0.1%   0.2% 26.1KiB              hir_def hir_def::nameres::collector::ModCollector::collect
 0.1%   0.2% 24.0KiB        rust_analyzer rust_analyzer::cli::flags::RustAnalyzer::parse_
 0.1%   0.1% 22.2KiB                  ide ide::hover::hover
 0.1%   0.1% 20.6KiB          chalk_solve <chalk_solve::rust_ir::AssociatedTyDatum<I> as chalk_solve::clauses::program_clauses::ToProgramClauses<I>>::to_program_clauses::{{closure}}
 0.1%   0.1% 19.9KiB        project_model project_model::workspace::ProjectWorkspace::to_crate_graph
 0.1%   0.1% 19.0KiB       pulldown_cmark pulldown_cmark::parse::Parser::handle_inline_pass1
 0.1%   0.1% 18.6KiB        rust_analyzer rust_analyzer::main_loop::<impl rust_analyzer::global_state::GlobalState>::handle_event
 0.1%   0.1% 18.0KiB               hir_ty hir_ty::diagnostics::decl_check::DeclValidator::validate_item
 0.0%   0.1% 17.4KiB                  std std::backtrace_rs::symbolize::gimli::elf::<impl std::backtrace_rs::symbolize::gimli::Mapping>::new::{{closure}}
 0.0%   0.1% 17.1KiB          ide_assists ide_assists::handlers::extract_function::extract_function
 0.0%   0.1% 16.9KiB               hir_ty chalk_solve::clauses::builder::ClauseBuilder<I>::push_binders
 0.0%   0.1% 16.7KiB                  ide ide::syntax_highlighting::highlight::element
 0.0%   0.1% 16.0KiB        rust_analyzer rust_analyzer::cli::analysis_stats::<impl rust_analyzer::cli::flags::AnalysisStats>::run
 0.0%   0.1% 15.4KiB                  mbe mbe::expander::matcher::match_loop_inner
 0.0%   0.1% 15.1KiB               notify notify::inotify::EventLoop::event_loop_thread
 0.0%   0.1% 15.0KiB              hir_def hir_def::nameres::collector::collect_defs
 0.0%   0.1% 14.9KiB               ide_db ide_db::helpers::insert_use::insert_use
 0.0%   0.1% 14.8KiB       pulldown_cmark pulldown_cmark::parse::FirstPass::parse_block
 0.0%   0.1% 14.6KiB                  std std::backtrace_rs::symbolize::gimli::Cache::with_global
 0.0%   0.1% 14.5KiB       ide_completion ide_completion::context::CompletionContext::fill
 0.0%   0.1% 14.2KiB      cargo_metadata? <cargo_metadata::_::<impl serde::de::Deserialize for cargo_metadata::Package>::deserialize::__Visitor as serde::de::Visitor>::visit_map
 0.0%   0.1% 13.8KiB               hir_ty <chalk_ir::Ty<hir_ty::interner::Interner> as hir_ty::display::HirDisplay>::hir_fmt
 0.0%   0.1% 13.5KiB       rust_analyzer? <rust_analyzer::config::Config as core::clone::Clone>::clone
 0.0%   0.1% 13.4KiB        rust_analyzer rust_analyzer::config::ConfigData::from_json
 0.0%   0.1% 12.9KiB          ide_assists ide_assists::utils::gen_trait_fn_body::gen_trait_fn_body
 0.0%   0.1% 12.7KiB           serde_json serde_json::value::de::visit_object
 0.0%   0.1% 12.5KiB        rust_analyzer rust_analyzer::main
 0.0%   0.1% 12.5KiB               ide_db ide_db::search::FindUsages::search
 0.0%   0.1% 12.3KiB                  ide ide::extend_selection::extend_selection
 0.0%   0.1% 12.2KiB              ide_ssr ide_ssr::matching::Matcher::attempt_match_node
 0.0%   0.1% 12.0KiB               hir_ty chalk_solve::infer::unify::Unifier<I>::generalize_ty
 0.0%   0.1% 12.0KiB       cargo_metadata <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1% 11.8KiB               hir_ty hir_ty::db::HirDatabaseGroupStorage__::new
 0.0%   0.1% 11.7KiB rustc_ap_rustc_lexer rustc_ap_rustc_lexer::<impl rustc_ap_rustc_lexer::cursor::Cursor>::advance_token
 0.0%   0.1% 11.7KiB               syntax syntax::validation::validate
 0.0%   0.1% 11.6KiB        project_model <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1% 11.6KiB               hir_ty chalk_solve::clauses::builder::ClauseBuilder<I>::push_binders
 0.0%   0.1% 11.5KiB               hir_ty hir_ty::infer::pat::<impl hir_ty::infer::InferenceContext>::infer_pat
 0.0%   0.1% 11.0KiB        rust_analyzer rust_analyzer::to_proto::completion_items
 0.0%   0.1% 10.9KiB               parser parser::grammar::expressions::atom::atom_expr
 0.0%   0.1% 10.6KiB              hir_def hir_def::find_path::find_path_inner
 0.0%   0.1% 10.3KiB        rust_analyzer serde_json::value::de::visit_object
 0.0%   0.1% 10.3KiB                  ide ide::goto_definition::goto_definition
 0.0%   0.1% 10.3KiB              hir_def hir_def::db::DefDatabaseGroupStorage__::new
 0.0%   0.1% 10.1KiB        project_model project_model::cargo_workspace::CargoWorkspace::new
 0.0%   0.1% 10.1KiB           serde_json serde_json::value::de::visit_array
 0.0%   0.1% 10.0KiB               hir_ty hir_ty::diagnostics::expr::BodyValidationDiagnostic::collect
 0.0%   0.1% 10.0KiB               hir_ty chalk_recursive::solve::SolveIteration::solve_iteration
 0.0%   0.1%  9.9KiB          ide_assists ide_assists::utils::gen_trait_fn_body::gen_partial_eq
 0.0%   0.1%  9.9KiB               hir_ty chalk_solve::clauses::program_clauses_that_could_match
 0.0%   0.1%  9.8KiB       ide_completion ide_completion::completions::postfix::complete_postfix
 0.0%   0.1%  9.7KiB       cargo_metadata <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1%  9.6KiB               hir_ty chalk_recursive::fulfill::Fulfill<I,Solver>::solve
 0.0%   0.1%  9.4KiB          ide_assists ide_assists::assist_context::Assists::add
 0.0%   0.1%  9.3KiB              hir_def hir_def::item_tree::lower::Ctx::lower_mod_item
 0.0%   0.1%  9.3KiB          ide_assists ide_assists::utils::suggest_name::for_variable
 0.0%   0.1%  9.3KiB              hir_def hir_def::nameres::path_resolution::<impl hir_def::nameres::DefMap>::resolve_path_fp_with_macro_single
 0.0%   0.1%  9.2KiB          ide_assists ide_assists::utils::gen_trait_fn_body::gen_debug_impl
 0.0%   0.1%  9.1KiB                  std addr2line::ResUnit<R>::parse_lines
 0.0%   0.1%  9.1KiB          miniz_oxide miniz_oxide::inflate::core::decompress
 0.0%   0.1%  9.1KiB                  ide ide::syntax_highlighting::traverse
 0.0%   0.1%  9.0KiB         regex_syntax <regex_syntax::hir::translate::TranslatorI as regex_syntax::ast::visitor::Visitor>::visit_post
 0.0%   0.1%  8.8KiB                  ide ide::join_lines::remove_newlines
 0.0%   0.1%  8.8KiB        rust_analyzer rust_analyzer::caps::server_capabilities
 0.0%   0.1%  8.8KiB              hir_def hir_def::item_tree::pretty::Printer::print_mod_item
 0.0%   0.1%  8.8KiB      ide_diagnostics ide_diagnostics::handlers::unlinked_file::unlinked_file
 0.0%   0.1%  8.7KiB                  ide ide::folding_ranges::folding_ranges
 0.0%   0.1%  8.7KiB               ide_db ide_db::helpers::import_assets::import_for_item
 0.0%   0.1%  8.7KiB                  ide pulldown_cmark_to_cmark::cmark_with_options
 0.0%   0.1%  8.6KiB         regex_syntax <regex_syntax::hir::translate::TranslatorI as regex_syntax::ast::visitor::Visitor>::visit_class_set_item_post
 0.0%   0.1%  8.6KiB               parser parser::grammar::items::maybe_item
 0.0%   0.1%  8.4KiB                  ide ide::inlay_hints::inlay_hints
 0.0%   0.1%  8.4KiB        project_model <serde::__private::de::content::ContentDeserializer<E> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1%  8.4KiB             flycheck <serde::__private::de::content::ContentDeserializer<E> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1%  8.4KiB                  ide pulldown_cmark_to_cmark::cmark_with_options
 0.0%   0.1%  8.3KiB              hir_def hir_def::import_map::ImportMap::import_map_query
 0.0%   0.1%  8.2KiB        rust_analyzer rust_analyzer::config::Config::json_schema
 0.0%   0.1%  8.2KiB       regex_automata regex_automata::minimize::Minimizer<S>::run
 0.0%   0.1%  8.2KiB         tracing_tree tracing_tree::format::Buffers::indent_current
 0.0%   0.1%  8.2KiB          ide_assists ide_assists::handlers::extract_function::format_function
 0.0%   0.1%  8.2KiB       ide_completion ide_completion::completions::trait_impl::complete_trait_impl
 0.0%   0.1%  8.1KiB       proc_macro_srv <proc_macro_srv::abis::abi_1_56::proc_macro::bridge::api_tags::Method as proc_macro_srv::abis::abi_1_56::proc_macro::bridge::rpc::Encode<S>>::encode
 0.0%   0.1%  8.1KiB               hir_ty chalk_solve::clauses::builder::ClauseBuilder<I>::push_binders
 0.0%   0.1%  8.0KiB        rust_analyzer <serde::__private::de::content::ContentRefDeserializer<E> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.1%  7.8KiB        rust_analyzer rust_analyzer::diagnostics::to_proto::map_rust_diagnostic_to_lsp
 0.0%   0.1%  7.8KiB                  mbe mbe::expander::matcher::match_
 0.0%   0.1%  7.7KiB        rust_analyzer serde_json::value::de::visit_array
 0.0%   0.0%  7.7KiB        rust_analyzer core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &mut F>::call_once
 0.0%   0.0%  7.7KiB        project_model <serde::__private::de::content::ContentDeserializer<E> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.0%  7.7KiB             flycheck <serde::__private::de::content::ContentDeserializer<E> as serde::de::Deserializer>::deserialize_struct
 0.0%   0.0%  7.7KiB           dissimilar dissimilar::diff
 0.0%   0.0%  7.6KiB                  ide ide::rename::rename
 0.0%   0.0%  7.6KiB           hir_expand hir_expand::builtin_macro::option_env_expand
38.7%  89.1% 13.5MiB                      And 39248 smaller methods. Use -n N to show more.
43.4% 100.0% 15.1MiB                      .text section size, the file size is 34.8MiB

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

No branches or pull requests

5 participants