shared_ptrの最適化についてなんだが・・・

virtual void Hoge::Func()
{
 const boost::shared_ptr<Piyo> sp(this->pPiyo);
 Piyo* const p(sp.get()); // "ここ"

 p->SetX(1);
 p->SetY(3);
 p->Print();
}

上記の"ここ"がないとアセンブリが長くなるんだけど、なぜなんだ?