diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2012-10-18 08:03:04 -0700 |
|---|---|---|
| committer | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2012-10-18 08:03:04 -0700 |
| commit | 4e03ffdb6547d9541de84b61d7798b497235472b (patch) | |
| tree | 5575a019b2718f29ca08dac619185c1234610175 /src | |
| parent | e28a161b720e267c837905e5f1b0760f71ebee14 (diff) | |
rustc: optimize away some mallocs when building GEP args
Diffstat (limited to 'src')
| -rw-r--r-- | src/rustc/middle/trans/build.rs | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/rustc/middle/trans/build.rs b/src/rustc/middle/trans/build.rs index dfcc66adc3a..ea992600ae1 100644 --- a/src/rustc/middle/trans/build.rs +++ b/src/rustc/middle/trans/build.rs @@ -433,8 +433,7 @@ fn GEP(cx: block, Pointer: ValueRef, Indices: ~[ValueRef]) -> ValueRef { // // XXX: Use a small-vector optimization to avoid allocations here. fn GEPi(cx: block, base: ValueRef, ixs: &[uint]) -> ValueRef { - let mut v: ~[ValueRef] = ~[]; - for vec::each(ixs) |i| { v.push(C_i32(*i as i32)); } + let v = do vec::map(ixs) |i| { C_i32(*i as i32) }; count_insn(cx, "gepi"); return InBoundsGEP(cx, base, v); } |
