search for: xsputn

Displaying 9 results from an estimated 9 matches for "xsputn".

2005 Nov 22
2
[LLVMdev] llvm-ranlib: Bus Error in regressions + fix
...quot;GNU.a" file in the llvm/test/Regression/Archive directory (make a copy first: it corrupts it). It then crashes with a Bus Error. The stack trace is: #0 0x4207c1aa in memcpy () from /lib/tls/libc.so.6 #1 0x400d55e8 in std::basic_streambuf<char, std::char_traits<char> >::xsputn(char const*, int) () from /usr/lib/libstdc++.so.5 #2 0x4009c818 in std::basic_filebuf<char, std::char_traits<char> >::xsputn(char const*, int) () from /usr/lib/libstdc++.so.5 #3 0x400cbed1 in std::ostream::write(char const*, int) () from /usr/lib/libstdc++.so.5 #4 0x0829c9d0 in...
2007 Aug 15
0
[LLVMdev] Extending AsmPrinter
...ow libstdc++-v3 defines cout and friends. It's not pretty. Basically, there's a stdio_sync_filebuf used as a proxy to C's FILE *. Because stdio_sync_filebuf does no buffering itself (delegating that to FILE), basic_streambuf::overflow is called a lot. Some of this is mitigated with xsputn for multiple characters, but it's a lot of virtual function calls. To get something faster probably means a custom buffering solution (which my custom streambuf has, but is not particularly intelligent) and native syscalls. The downside of my implementation is that it is POSIX-specific and...
2007 Aug 16
2
[LLVMdev] Extending AsmPrinter
On Thu, 16 Aug 2007, David Greene wrote: > Actually, there's another reason not to use unlocked calls. They require > POSIX compliance. Posix is pretty available, what system doesn't have them? > To get portability and most of the performance I plan to look at unbuffered > stdio. Buffering is goodness, no? -Chris -- http://nondot.org/sabre/ http://llvm.org/
2007 Aug 17
0
[LLVMdev] Extending AsmPrinter
...to support non-POSIX systems. > > To get portability and most of the performance I plan to look at > > unbuffered stdio. > > Buffering is goodness, no? Buffering is goodness. The problem with using buffered cstdio under iostreams is that you have to go through overflow() and/or xsputn() to send data to cstdio. These are virtual calls and they will be more frequent because there's no buffering at the iostreams level. It seems wasteful to do buffering at two different levels so I'd say it's better to do it before the virtual calls happen, for performance reasons....
2007 Aug 15
2
[LLVMdev] Extending AsmPrinter
On Wed, 2007-08-15 at 09:32 -0700, Chris Lattner wrote: > On Tue, 14 Aug 2007, David Greene wrote: > >> Yes, this is one advantage, another is that we wouldn't have to fix the > >> same bug in multiple places :) > > > > Right. I've figured out where I need to make the changes in AsmWriterEmitter > > given the current design. > > Ok, cool. >
2005 Nov 22
0
[LLVMdev] llvm-ranlib: Bus Error in regressions + fix
...test/Regression/Archive directory (make a copy first: it corrupts > it). It then crashes with a Bus Error. > > The stack trace is: > > #0 0x4207c1aa in memcpy () from /lib/tls/libc.so.6 > #1 0x400d55e8 in std::basic_streambuf<char, std::char_traits<char> > >::xsputn(char const*, int) () from /usr/lib/libstdc++.so.5 > #2 0x4009c818 in std::basic_filebuf<char, std::char_traits<char> > >::xsputn(char const*, int) () from /usr/lib/libstdc++.so.5 > #3 0x400cbed1 in std::ostream::write(char const*, int) () > from /usr/lib/libstdc++.so....
2007 Aug 15
2
[LLVMdev] Extending AsmPrinter
...fines cout and friends. > It's not pretty. Basically, there's a stdio_sync_filebuf used as a proxy to > C's FILE *. Because stdio_sync_filebuf does no buffering itself (delegating > that to FILE), basic_streambuf::overflow is called a lot. Some of this is > mitigated with xsputn for multiple characters, but it's a lot of virtual > function calls. Yes, it is extremely inefficient. > To get something faster probably means a custom buffering solution (which > my custom streambuf has, but is not particularly intelligent) and native > syscalls. The downside o...
2007 Aug 17
2
[LLVMdev] Extending AsmPrinter
.... >>> To get portability and most of the performance I plan to look at >>> unbuffered stdio. >> >> Buffering is goodness, no? > > Buffering is goodness. The problem with using buffered cstdio under > iostreams is that you have to go through overflow() and/or xsputn() to send > data to cstdio. I'm not suggesting using iostreams. I'm suggesting using FILE*'s directly. > These are virtual calls and they will be more frequent because there's > no buffering at the iostreams level. It seems wasteful to do buffering > at two differ...
2015 Jun 26
0
Wine release 1.7.46
...Iv?n Matellanes (9): msvcirt: Add implementation of streambuf::sgetc. msvcirt: Add implementation of streambuf::sputc. msvcirt: Print error messages in unimplemented functions. msvcirt: Add implementation of streambuf::xsgetn. msvcirt: Add implementation of streambuf::xsputn. msvcirt: Add implementation of streambuf::sgetn/sputn. msvcirt: Add implementation of streambuf::snextc. msvcirt: Add implementation of streambuf::sbumpc. msvcirt: Add implementation of streambuf::stossc. Jacek Caban (18): scrrun: Added IFile::put_Attributes imepleme...