about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-08-31 15:10:58 -0700
committerAlex Crichton <alex@alexcrichton.com>2017-09-05 07:37:58 -0700
commit0182c8bbda094c7a6abf89b6c45185ba1e5d38b3 (patch)
tree031aa208b7ebc20322202e5e2c2d66e1a0d607d2
parent7d9c98e4755e2d81c894e6517e3848b786cf7a3b (diff)
downloadrust-0182c8bbda094c7a6abf89b6c45185ba1e5d38b3.tar.gz
rust-0182c8bbda094c7a6abf89b6c45185ba1e5d38b3.zip
rustc: Rename item_body query to extern_const_body
Should hopefully more accurately reflect what's happening! This commit also
removes the cache in the cstore implementation as it's already cached through
the query infrastructure.
-rw-r--r--src/librustc/dep_graph/dep_node.rs2
-rw-r--r--src/librustc/ty/maps.rs2
-rw-r--r--src/librustc_const_eval/eval.rs4
-rw-r--r--src/librustc_const_eval/pattern.rs2
-rw-r--r--src/librustc_metadata/cstore_impl.rs7
-rw-r--r--src/librustc_metadata/decoder.rs8
-rw-r--r--src/librustdoc/clean/inline.rs2
7 files changed, 12 insertions, 15 deletions
diff --git a/src/librustc/dep_graph/dep_node.rs b/src/librustc/dep_graph/dep_node.rs
index d1453c247a3..431680eb36a 100644
--- a/src/librustc/dep_graph/dep_node.rs
+++ b/src/librustc/dep_graph/dep_node.rs
@@ -563,7 +563,7 @@ define_dep_nodes!( <'tcx>
     [] GetLangItems,
     [] DefinedLangItems(CrateNum),
     [] MissingLangItems(CrateNum),
-    [] ItemBody(DefId),
+    [] ExternConstBody(DefId),
     [] VisibleParentMap,
     [] IsDirectExternCrate(CrateNum),
     [] MissingExternCrateItem(CrateNum),
diff --git a/src/librustc/ty/maps.rs b/src/librustc/ty/maps.rs
index 9f8eb2f7535..ef21a3d56fe 100644
--- a/src/librustc/ty/maps.rs
+++ b/src/librustc/ty/maps.rs
@@ -1357,7 +1357,7 @@ define_maps! { <'tcx>
     [] get_lang_items: get_lang_items_node(CrateNum) -> Rc<LanguageItems>,
     [] defined_lang_items: DefinedLangItems(CrateNum) -> Rc<Vec<(DefIndex, usize)>>,
     [] missing_lang_items: MissingLangItems(CrateNum) -> Rc<Vec<LangItem>>,
-    [] item_body: ItemBody(DefId) -> &'tcx hir::Body,
+    [] extern_const_body: ExternConstBody(DefId) -> &'tcx hir::Body,
     [] visible_parent_map: visible_parent_map_node(CrateNum)
         -> Rc<DefIdMap<DefId>>,
     [] missing_extern_crate_item: MissingExternCrateItem(CrateNum) -> bool,
diff --git a/src/librustc_const_eval/eval.rs b/src/librustc_const_eval/eval.rs
index d9371807197..27a25ff73d1 100644
--- a/src/librustc_const_eval/eval.rs
+++ b/src/librustc_const_eval/eval.rs
@@ -354,7 +354,7 @@ fn eval_const_expr_partial<'a, 'tcx>(cx: &ConstContext<'a, 'tcx>,
             }
           } else {
             if tcx.is_const_fn(def_id) {
-                tcx.item_body(def_id)
+                tcx.extern_const_body(def_id)
             } else {
                 signal!(e, TypeckError)
             }
@@ -774,7 +774,7 @@ fn const_eval<'a, 'tcx>(tcx: TyCtxt<'a, 'tcx, 'tcx>,
         tcx.mir_const_qualif(def_id);
         tcx.hir.body(tcx.hir.body_owned_by(id))
     } else {
-        tcx.item_body(def_id)
+        tcx.extern_const_body(def_id)
     };
     ConstContext::new(tcx, key.param_env.and(substs), tables).eval(&body.value)
 }
diff --git a/src/librustc_const_eval/pattern.rs b/src/librustc_const_eval/pattern.rs
index a4040834cf5..5e1fbbc9ca2 100644
--- a/src/librustc_const_eval/pattern.rs
+++ b/src/librustc_const_eval/pattern.rs
@@ -609,7 +609,7 @@ impl<'a, 'tcx> PatternContext<'a, 'tcx> {
                         let body = if let Some(id) = self.tcx.hir.as_local_node_id(def_id) {
                             self.tcx.hir.body(self.tcx.hir.body_owned_by(id))
                         } else {
-                            self.tcx.item_body(def_id)
+                            self.tcx.extern_const_body(def_id)
                         };
                         let pat = self.lower_const_expr(&body.value, pat_id, span);
                         self.tables = old_tables;
diff --git a/src/librustc_metadata/cstore_impl.rs b/src/librustc_metadata/cstore_impl.rs
index 445ac601cb9..58ca22f7bf3 100644
--- a/src/librustc_metadata/cstore_impl.rs
+++ b/src/librustc_metadata/cstore_impl.rs
@@ -215,12 +215,9 @@ provide! { <'tcx> tcx, def_id, other, cdata,
     defined_lang_items => { Rc::new(cdata.get_lang_items(&tcx.dep_graph)) }
     missing_lang_items => { Rc::new(cdata.get_missing_lang_items(&tcx.dep_graph)) }
 
-    item_body => {
-        if let Some(cached) = tcx.hir.get_inlined_body_untracked(def_id) {
-            return cached;
-        }
+    extern_const_body => {
         debug!("item_body({:?}): inlining item", def_id);
-        cdata.item_body(tcx, def_id.index)
+        cdata.extern_const_body(tcx, def_id.index)
     }
 
     missing_extern_crate_item => {
diff --git a/src/librustc_metadata/decoder.rs b/src/librustc_metadata/decoder.rs
index 1e2f167f199..2523c97cfab 100644
--- a/src/librustc_metadata/decoder.rs
+++ b/src/librustc_metadata/decoder.rs
@@ -759,10 +759,10 @@ impl<'a, 'tcx> CrateMetadata {
         }
     }
 
-    pub fn item_body(&self,
-                     tcx: TyCtxt<'a, 'tcx, 'tcx>,
-                     id: DefIndex)
-                     -> &'tcx hir::Body {
+    pub fn extern_const_body(&self,
+                             tcx: TyCtxt<'a, 'tcx, 'tcx>,
+                             id: DefIndex)
+                             -> &'tcx hir::Body {
         assert!(!self.is_proc_macro(id));
         let ast = self.entry(id).ast.unwrap();
         let def_id = self.local_def_id(id);
diff --git a/src/librustdoc/clean/inline.rs b/src/librustdoc/clean/inline.rs
index d3b4d30208b..11fe8a64d41 100644
--- a/src/librustdoc/clean/inline.rs
+++ b/src/librustdoc/clean/inline.rs
@@ -474,7 +474,7 @@ impl hir::print::PpAnn for InlinedConst {
 }
 
 fn print_inlined_const(cx: &DocContext, did: DefId) -> String {
-    let body = cx.tcx.item_body(did);
+    let body = cx.tcx.extern_const_body(did);
     let inlined = InlinedConst {
         nested_bodies: cx.tcx.item_body_nested_bodies(did)
     };