]> git.lizzy.rs Git - rust.git/commit
rustc: put ty_trait behind some indirection.
authorHuon Wilson <dbau.pp+github@gmail.com>
Wed, 19 Mar 2014 11:01:30 +0000 (22:01 +1100)
committerHuon Wilson <dbau.pp+github@gmail.com>
Wed, 19 Mar 2014 11:19:05 +0000 (22:19 +1100)
commit405b5fc1ee21cc6bc29f97719600bd94066dd58c
tree514fb71b6af315fe4b55f0c6d8ee473c67195564
parenta39c29415503222d3271995573b9beafa3fcc30f
rustc: put ty_trait behind some indirection.

This reduces ty::sty from 160 bytes to just 112, and some measurements
eddyb made suggest that the ty_trait variant occurs very
rarely (e.g. ~1% of all sty instances) hence this will result in a large
memory saving, and the cost of the indirection is unlikely to be an
issue.
18 files changed:
src/librustc/metadata/tyencode.rs
src/librustc/middle/kind.rs
src/librustc/middle/lint.rs
src/librustc/middle/mem_categorization.rs
src/librustc/middle/trans/debuginfo.rs
src/librustc/middle/trans/glue.rs
src/librustc/middle/trans/reflect.rs
src/librustc/middle/ty.rs
src/librustc/middle/ty_fold.rs
src/librustc/middle/typeck/check/method.rs
src/librustc/middle/typeck/check/regionck.rs
src/librustc/middle/typeck/check/vtable.rs
src/librustc/middle/typeck/coherence.rs
src/librustc/middle/typeck/infer/coercion.rs
src/librustc/middle/typeck/infer/combine.rs
src/librustc/middle/typeck/infer/mod.rs
src/librustc/middle/typeck/variance.rs
src/librustc/util/ppaux.rs