auto merge of #10424 : alexcrichton/rust/optimize-buffered, r=brson
auto merge of #10424 : alexcrichton/rust/optimize-buffered, r=brson

I was benchmarking rust-http recently, and I saw that 50% of its time was spent
creating buffered readers/writers. Albeit rust-http wasn't using
std::rt::io::buffered, but the same idea applies here. It's much cheaper to
malloc a large region and not initialize it than to set it all to 0. Buffered
readers/writers never use uninitialized data, and their internal buffers are
encapsulated, so any usage of uninitialized slots are an implementation bug in
the readers/writers.

mitsuhiko/rust,robertg/rust,nwin/rust,gifnksm/rust,jashank/rust,mvdnes/rust,seanrivera/rust,ruud-v-a/rust,P1start/rust,pshc/rust,shepmaster/rand,servo/rust,bombless/rust,bombless/rust,erickt/rust,gifnksm/rust,mvdnes/rust,dwillmer/rust,krzysz00/rust,kimroen/rust,aidancully/rust,P1start/rust,untitaker/rust,jashank/rust,victorvde/rust,jbclements/rust,zubron/rust,defuz/rust,graydon/rust,SiegeLord/rust,krzysz00/rust,emk/rust,omasanori/rust,graydon/rust,kwantam/rust,zachwick/rust,zachwick/rust,aneeshusa/rust,Ryman/rust,ebfull/rust,AerialX/rust-rt-minimal,GBGamer/rust,Ryman/rust,quornian/rust,GBGamer/rust,mahkoh/rust,ebfull/rust,P1start/rust,AerialX/rust,vhbit/rust,SiegeLord/rust,KokaKiwi/rust,rohitjoshi/rust,jroesch/rust,P1start/rust,kwantam/rust,michaelballantyne/rust-gpu,GBGamer/rust,quornian/rust,seanrivera/rust,stepancheg/rust-ide-rust,bombless/rust,omasanori/rust,pythonesque/rust,jroesch/rust,pshc/rust,mihneadb/rust,pythonesque/rust,victorvde/rust,aidancully/rust,cllns/rust,philyoon/rust,krzysz00/rust,emk/rust,SiegeLord/rust,emk/rust,krzysz00/rust,mahkoh/rust,stepancheg/rust-ide-rust,victorvde/rust,waynenilsen/rand,nwin/rust,reem/rust,KokaKiwi/rust,carols10cents/rust,nwin/rust,dwillmer/rust,pczarn/rust,retep998/rand,richo/rust,pelmers/rust,seanrivera/rust,miniupnp/rust,arthurprs/rand,aneeshusa/rust,graydon/rust,carols10cents/rust,sae-bom/rust,KokaKiwi/rust,kimroen/rust,ebfull/rand,richo/rust,rohitjoshi/rust,hauleth/rust,zubron/rust,seanrivera/rust,zaeleus/rust,aneeshusa/rust,avdi/rust,kimroen/rust,nham/rust,stepancheg/rust-ide-rust,dinfuehr/rust,gifnksm/rust,hauleth/rust,TheNeikos/rust,P1start/rust,rprichard/rust,michaelballantyne/rust-gpu,andars/rust,rprichard/rust,zaeleus/rust,pythonesque/rust,zubron/rust,l0kod/rust,mdinger/rust,reem/rust,l0kod/rust,nham/rust,defuz/rust,carols10cents/rust,reem/rust,jbclements/rust,GBGamer/rust,andars/rust,ktossell/rust,ruud-v-a/rust,XMPPwocky/rust,philyoon/rust,ejjeong/rust,untitaker/rust,avdi/rust,reem/rust,defuz/rust,victorvde/rust,Ryman/rust,mitsuhiko/rust,l0kod/rust,servo/rust,dwillmer/rust,zaeleus/rust,pshc/rust,zachwick/rust,GBGamer/rust,nham/rust,bluss/rand,jroesch/rust,pczarn/rust,graydon/rust,ruud-v-a/rust,XMPPwocky/rust,emk/rust,dinfuehr/rust,aepsil0n/rust,mvdnes/rust,dwillmer/rust,ejjeong/rust,servo/rust,reem/rust,XMPPwocky/rust,aepsil0n/rust,aepsil0n/rust,avdi/rust,robertg/rust,jbclements/rust,aneeshusa/rust,jashank/rust,zubron/rust,miniupnp/rust,zubron/rust,ktossell/rust,nwin/rust,mitsuhiko/rust,servo/rust,omasanori/rust,AerialX/rust,bhickey/rand,quornian/rust,Ryman/rust,omasanori/rust,nham/rust,aturon/rust,0x73/rust,barosl/rust,philyoon/rust,hauleth/rust,barosl/rust,barosl/rust,AerialX/rust-rt-minimal,quornian/rust,dwillmer/rust,krzysz00/rust,ruud-v-a/rust,jroesch/rust,rprichard/rust,fabricedesre/rust,pythonesque/rust,vhbit/rust,avdi/rust,erickt/rust,defuz/rust,SiegeLord/rust,richo/rust,cllns/rust,aturon/rust,seanrivera/rust,erickt/rust,mitsuhiko/rust,krzysz00/rust,TheNeikos/rust,miniupnp/rust,mitsuhiko/rust,mdinger/rust,mvdnes/rust,mahkoh/rust,andars/rust,carols10cents/rust,andars/rust,hauleth/rust,robertg/rust,robertg/rust,TheNeikos/rust,fabricedesre/rust,cllns/rust,kimroen/rust,aidancully/rust,GBGamer/rust,emk/rust,0x73/rust,l0kod/rust,huonw/rand,rprichard/rust,XMPPwocky/rust,pshc/rust,jroesch/rust,bombless/rust-docs-chinese,michaelballantyne/rust-gpu,mdinger/rust,mahkoh/rust,AerialX/rust,l0kod/rust,aturon/rust,aepsil0n/rust,rohitjoshi/rust,stepancheg/rust-ide-rust,KokaKiwi/rust,vhbit/rust,0x73/rust,KokaKiwi/rust,0x73/rust,defuz/rust,philyoon/rust,ejjeong/rust,erickt/rust,TheNeikos/rust,victorvde/rust,mitsuhiko/rust,michaelballantyne/rust-gpu,jbclements/rust,jroesch/rust,dinfuehr/rust,erickt/rust,sae-bom/rust,barosl/rust,pczarn/rust,mvdnes/rust,pshc/rust,AerialX/rust,ktossell/rust,kimroen/rust,ktossell/rust,vhbit/rust,stepancheg/rust-ide-rust,bombless/rust,aidancully/rust,pczarn/rust,jashank/rust,quornian/rust,zachwick/rust,servo/rust,nham/rust,nwin/rust,nham/rust,jashank/rust,zachwick/rust,mvdnes/rust,l0kod/rust,jroesch/rust,fabricedesre/rust,vhbit/rust,cllns/rust,zachwick/rust,miniupnp/rust,mdinger/rust,nwin/rust,TheNeikos/rust,michaelballantyne/rust-gpu,omasanori/rust,stepancheg/rust-ide-rust,mihneadb/rust,philyoon/rust,aidancully/rust,dwillmer/rust,AerialX/rust-rt-minimal,sae-bom/rust,AerialX/rust-rt-minimal,mihneadb/rust,GBGamer/rust,untitaker/rust,bombless/rust,aidancully/rust,cllns/rust,michaelballantyne/rust-gpu,emk/rust,pshc/rust,0x73/rust,jbclements/rust,reem/rust,rohitjoshi/rust,barosl/rust,erickt/rust,Ryman/rust,l0kod/rust,zaeleus/rust,jbclements/rust,pythonesque/rust,aturon/rust,ktossell/rust,ejjeong/rust,barosl/rust,ruud-v-a/rust,sae-bom/rust,servo/rust,kimroen/rust,nwin/rust,aepsil0n/rust,AerialX/rust-rt-minimal,quornian/rust,pshc/rust,gifnksm/rust,miniupnp/rust,TheNeikos/rust,ejjeong/rust,SiegeLord/rust,gifnksm/rust,cllns/rust,vhbit/rust,kimroen/rust,hauleth/rust,Ryman/rust,rprichard/rust,XMPPwocky/rust,mihneadb/rust,l0kod/rust,robertg/rust,andars/rust,ebfull/rust,P1start/rust,pczarn/rust,defuz/rust,michaelballantyne/rust-gpu,AerialX/rust,andars/rust,servo/rust,dinfuehr/rust,philyoon/rust,SiegeLord/rust,miniupnp/rust,sae-bom/rust,hauleth/rust,pelmers/rust,avdi/rust,ktossell/rust,ejjeong/rust,zaeleus/rust,dinfuehr/rust,dwillmer/rust,zaeleus/rust,mahkoh/rust,zubron/rust,dinfuehr/rust,ebfull/rust,richo/rust,mihneadb/rust,mdinger/rust,aneeshusa/rust,zubron/rust,GrahamDennis/rand,nham/rust,rprichard/rust,aturon/rust,GBGamer/rust,mihneadb/rust,pczarn/rust,pythonesque/rust,jashank/rust,richo/rust,mitsuhiko/rust,kwantam/rust,carols10cents/rust,seanrivera/rust,mdinger/rust,graydon/rust,jashank/rust,AerialX/rust,miniupnp/rust,0x73/rust,quornian/rust,bombless/rust,0x73/rust,stepancheg/rust-ide-rust,SiegeLord/rust,kwantam/rust,miniupnp/rust,untitaker/rust,ebfull/rust,jashank/rust,pshc/rust,emk/rust,carols10cents/rust,fabricedesre/rust,kwantam/rust,victorvde/rust,kwantam/rust,aturon/rust,nwin/rust,jbclements/rust,dwillmer/rust,richo/rust,pelmers/rust,sae-bom/rust,barosl/rust,ktossell/rust,rohitjoshi/rust,aepsil0n/rust,ebfull/rust,Ryman/rust,rohitjoshi/rust,gifnksm/rust,XMPPwocky/rust,fabricedesre/rust,fabricedesre/rust,untitaker/rust,pelmers/rust,omasanori/rust,AerialX/rust-rt-minimal,erickt/rust,vhbit/rust,mahkoh/rust,robertg/rust,ruud-v-a/rust,jbclements/rust,P1start/rust,zubron/rust,untitaker/rust,aneeshusa/rust,KokaKiwi/rust,jbclements/rust,pczarn/rust,avdi/rust,jroesch/rust,graydon/rust,pythonesque/rust,pelmers/rust,achanda/rand,vhbit/rust,aturon/rust,fabricedesre/rust,pelmers/rust