From 75efa0725d720369c3ecb552dcc63a7bad07123a Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Sun, 22 Dec 2013 13:39:02 -0800 Subject: [PATCH] librustc: De-`@mut` `n_null_glues` in the stats --- src/librustc/middle/trans/base.rs | 2 +- src/librustc/middle/trans/common.rs | 2 +- src/librustc/middle/trans/context.rs | 2 +- src/librustc/middle/trans/glue.rs | 24 ++++++++++++++++++++---- 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/librustc/middle/trans/base.rs b/src/librustc/middle/trans/base.rs index 6795accca9d6..459d49106d4b 100644 --- a/src/librustc/middle/trans/base.rs +++ b/src/librustc/middle/trans/base.rs @@ -3247,7 +3247,7 @@ pub fn trans_crate(sess: session::Session, println("--- trans stats ---"); println!("n_static_tydescs: {}", ccx.stats.n_static_tydescs.get()); println!("n_glues_created: {}", ccx.stats.n_glues_created.get()); - println!("n_null_glues: {}", ccx.stats.n_null_glues); + println!("n_null_glues: {}", ccx.stats.n_null_glues.get()); println!("n_real_glues: {}", ccx.stats.n_real_glues); println!("n_fns: {}", ccx.stats.n_fns); diff --git a/src/librustc/middle/trans/common.rs b/src/librustc/middle/trans/common.rs index 8c63044fd521..1f4ef563b619 100644 --- a/src/librustc/middle/trans/common.rs +++ b/src/librustc/middle/trans/common.rs @@ -128,7 +128,7 @@ pub struct tydesc_info { pub struct Stats { n_static_tydescs: Cell, n_glues_created: Cell, - n_null_glues: uint, + n_null_glues: Cell, n_real_glues: uint, n_fns: uint, n_monos: uint, diff --git a/src/librustc/middle/trans/context.rs b/src/librustc/middle/trans/context.rs index 5e190a825383..9038273a3466 100644 --- a/src/librustc/middle/trans/context.rs +++ b/src/librustc/middle/trans/context.rs @@ -213,7 +213,7 @@ impl CrateContext { stats: @mut Stats { n_static_tydescs: Cell::new(0u), n_glues_created: Cell::new(0u), - n_null_glues: 0u, + n_null_glues: Cell::new(0u), n_real_glues: 0u, n_fns: 0u, n_monos: 0u, diff --git a/src/librustc/middle/trans/glue.rs b/src/librustc/middle/trans/glue.rs index 500dce81eec3..be16195777d3 100644 --- a/src/librustc/middle/trans/glue.rs +++ b/src/librustc/middle/trans/glue.rs @@ -708,7 +708,11 @@ pub fn emit_tydescs(ccx: &CrateContext) { // calling it. let take_glue = match ti.take_glue.get() { - None => { ccx.stats.n_null_glues += 1u; C_null(glue_fn_ty) } + None => { + ccx.stats.n_null_glues.set(ccx.stats.n_null_glues.get() + + 1); + C_null(glue_fn_ty) + } Some(v) => { unsafe { ccx.stats.n_real_glues += 1u; @@ -718,7 +722,11 @@ pub fn emit_tydescs(ccx: &CrateContext) { }; let drop_glue = match ti.drop_glue.get() { - None => { ccx.stats.n_null_glues += 1u; C_null(glue_fn_ty) } + None => { + ccx.stats.n_null_glues.set(ccx.stats.n_null_glues.get() + + 1u); + C_null(glue_fn_ty) + } Some(v) => { unsafe { ccx.stats.n_real_glues += 1u; @@ -728,7 +736,11 @@ pub fn emit_tydescs(ccx: &CrateContext) { }; let free_glue = match ti.free_glue.get() { - None => { ccx.stats.n_null_glues += 1u; C_null(glue_fn_ty) } + None => { + ccx.stats.n_null_glues.set(ccx.stats.n_null_glues.get() + + 1u); + C_null(glue_fn_ty) + } Some(v) => { unsafe { ccx.stats.n_real_glues += 1u; @@ -738,7 +750,11 @@ pub fn emit_tydescs(ccx: &CrateContext) { }; let visit_glue = match ti.visit_glue.get() { - None => { ccx.stats.n_null_glues += 1u; C_null(glue_fn_ty) } + None => { + ccx.stats.n_null_glues.set(ccx.stats.n_null_glues.get() + + 1u); + C_null(glue_fn_ty) + } Some(v) => { unsafe { ccx.stats.n_real_glues += 1u;