]> git.lizzy.rs Git - rust.git/commit
split CrateContext into shared and local pieces
authorStuart Pernsteiner <spernsteiner@mozilla.com>
Wed, 16 Jul 2014 18:27:57 +0000 (11:27 -0700)
committerStuart Pernsteiner <spernsteiner@mozilla.com>
Fri, 5 Sep 2014 16:18:55 +0000 (09:18 -0700)
commit0ab27b1d5b68d3bc3c727895e5219ce254c685ad
treeb10a7dbb6388cc4ed09513de861f2e7534700ce0
parentcf35cb365a4efee53f6372095aaff4798544bf94
split CrateContext into shared and local pieces

Break up `CrateContext` into `SharedCrateContext` and `LocalCrateContext`.  The
local piece corresponds to a single compilation unit, and contains all
LLVM-related components.  (LLVM data structures are tied to a specific
`LLVMContext`, and we will need separate `LLVMContext`s to safely run
multithreaded optimization.)  The shared piece contains data structures that
need to be shared across all compilation units, such as the `ty::ctxt` and some
tables related to crate metadata.
src/librustc/back/link.rs
src/librustc/driver/driver.rs
src/librustc/middle/trans/base.rs
src/librustc/middle/trans/builder.rs
src/librustc/middle/trans/common.rs
src/librustc/middle/trans/context.rs