re PR libstdc++/11722 ([3.4 only] Unbuffered filebuf::sgetn is slow)

2004-09-13  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/11722
	* include/std/std_fstream.h (xsgetn): Declare only.
	* include/bits/fstream.tcc (xsgetn): Define, optimize for the
	always_noconv() case: when __n > __buflen, copy the available
	buffer and issue a direct read.
	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.

	* include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
	conditional.

From-SVN: r87453
This commit is contained in:
Paolo Carlini 2004-09-13 22:21:34 +00:00
parent 90c609e51a
commit c56e3d82fc
4 changed files with 166 additions and 21 deletions