about summary refs log tree commit diff
path: root/src/rt/rust_exchange_alloc.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-02-14 18:27:54 -0800
committerbors <bors@rust-lang.org>2013-02-14 18:27:54 -0800
commit20fd0c53edd2cc5ef5d413b8698b2c5860aa4926 (patch)
tree6b3d2071563a7d64e8bd2bb24bc988f480cd8f08 /src/rt/rust_exchange_alloc.cpp
parentaf2f0ef0888d05209bddd16ab210ae0e8400b7de (diff)
parent1a41b484bf05514f469e69efd56fcd7039d34db9 (diff)
downloadrust-20fd0c53edd2cc5ef5d413b8698b2c5860aa4926.tar.gz
rust-20fd0c53edd2cc5ef5d413b8698b2c5860aa4926.zip
auto merge of #4938 : thestinger/rust/no_zero, r=brson
I removed the unused wrappers methods named `calloc` because they relied on the malloc wrapper having a `bool zero = true` default parameter (which resulted in some accidental zeroing). Perhaps wrapping the actual calloc function would be useful, but I don't know of an existing use case that could use it so I just removed these.

This gives an ~1% performance improvement for TreeMap, which does a lot of small allocations. Vectors use `realloc` which didn't zero before these changes so there's no measurable change in performance.
Diffstat (limited to 'src/rt/rust_exchange_alloc.cpp')
-rw-r--r--src/rt/rust_exchange_alloc.cpp10
1 files changed, 1 insertions, 9 deletions
diff --git a/src/rt/rust_exchange_alloc.cpp b/src/rt/rust_exchange_alloc.cpp
index 6c0204ca736..a92bc4edd41 100644
--- a/src/rt/rust_exchange_alloc.cpp
+++ b/src/rt/rust_exchange_alloc.cpp
@@ -18,12 +18,9 @@
 uintptr_t exchange_count = 0;
 
 void *
-rust_exchange_alloc::malloc(size_t size, bool zero) {
+rust_exchange_alloc::malloc(size_t size) {
   void *value = ::malloc(size);
   assert(value);
-  if (zero) {
-    memset(value, 0, size);
-  }
 
   sync::increment(exchange_count);
 
@@ -31,11 +28,6 @@ rust_exchange_alloc::malloc(size_t size, bool zero) {
 }
 
 void *
-rust_exchange_alloc::calloc(size_t size) {
-  return this->malloc(size);
-}
-
-void *
 rust_exchange_alloc::realloc(void *ptr, size_t size) {
   void *new_ptr = ::realloc(ptr, size);
   assert(new_ptr);