about summary refs log tree commit diff
path: root/src/libstd/sys/unix/stack_overflow.rs
diff options
context:
space:
mode:
authorSeo Sanghyeon <sanxiyn@gmail.com>2016-08-02 00:12:39 +0900
committerGitHub <noreply@github.com>2016-08-02 00:12:39 +0900
commit518524de1ab6ea48dc23479fc002d3ce60e1c057 (patch)
tree00690181b9ca8231b177139d955b12b7643496e8 /src/libstd/sys/unix/stack_overflow.rs
parent05a2d392654fc25dac7b41f94a55d6b9f05d3df6 (diff)
parentd5a5149617ff95a36405c4c9ac396a50b6ff3f17 (diff)
downloadrust-518524de1ab6ea48dc23479fc002d3ce60e1c057.tar.gz
rust-518524de1ab6ea48dc23479fc002d3ce60e1c057.zip
Rollup merge of #35114 - michaelwoerister:inline-meta-to-hir-map, r=eddyb
Move caching of inlined HIR into CrateStore

So far we've had separate HIR-inlining caches for each codegen unit and the caching for things inlined during constant evaluation had some holes. Consequently, things would be inlined multiple times if they were used from different codegen units, etc, leading to
- wasted memory,
- multiple `NodeId`s per `DefId` and,
- for things inlined during constant evaluation, no way to map a `NodeId` back to it's original `DefId`.

This PR moves all caching into the CrateStore, solving all of the above problems. It also fixes some bugs in the inlining code, like cyclic in the parent-chains in the HIR map and some `NodeId`'s being translated to more or less random values. There are assertions in place now that should prevent this kind of thing in the future.

This PR based on top of #35090, which contains some necessary fixes.
Diffstat (limited to 'src/libstd/sys/unix/stack_overflow.rs')
0 files changed, 0 insertions, 0 deletions