Files
wasmtime/cranelift/codegen/src
Julian Seward 955cdd5f83 VirtRegs::find: use SmallVec instead of Vec for val_stack.
Pushing on the `val_stack` vector is CL's biggest source of calls to
malloc/realloc/free, by some margin.  It accounts for about 27.7% of all heap
blocks allocated when compiling wasm_lua_binarytrees.  This change removes
pretty much all dynamic allocation by changing to a SmallVec<[Value; 8]>
instead.  A fixed size of 4 gets all the gains to be had, in testing, so 8
gives some safety margin and is harmless from a stack-use perspective: 8
Values will occupy 32 bytes.

As a bonus, this change also reduces the compiler's dynamic instruction count
by about 0.5%.
2019-09-09 11:30:59 +02:00
..
2019-09-05 17:55:03 +02:00
2019-09-07 09:55:09 -07:00
2019-09-07 09:55:09 -07:00
2019-07-31 15:20:08 +02:00
2019-09-04 15:12:17 -07:00
2019-03-26 09:11:57 -07:00