| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
member out of line. ftostr is not particularly speedy,
so that method is presumably not perf sensitive.
llvm-svn: 79885
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- This also shortens the Format.h implementation, and uses the print buffer
fully (it was wasting a character).
- This manifested as llvm-test failures, because one side effect was that
raw_ostream would write garbage '\x00' values into the output stream if it
happened that the string was at the end of the buffer. This meant that grep
would report 'Binary file matches', which meant the silly pattern matching
llvm-test eventually does would fail. Cute. :)
llvm-svn: 79862
|
|
|
|
| |
llvm-svn: 79845
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of as two bools. Use this to add a F_Append flag
which has the obvious behavior.
Other unrelated changes conflated into this patch:
1. REmove EH stuff from llvm-dis and llvm-as, the try blocks
are dead.
2. Simplify the filename inference code in llvm-as/llvm-dis,
because raw_fd_ostream does the right thing with '-'.
3. Switch machine verifier to use raw_ostream instead of ostream
(Which is the thing that needed append in the first place).
llvm-svn: 79807
|
|
|
|
|
|
|
|
| |
OS.indent(i) << "whatever";
people seem to like indenting things ;-)
llvm-svn: 79784
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
right.
- This class turns out to be much more convenient to use if we do this; clients
can make sure the buffer is always big enough if they care (since our current
idiom tends to be to use a SmallString<256> for the input to this we should
generally be avoiding an unnecessary malloc).
Also, add a convenience raw_svector_ostream::str method which flushes the buffer
and returns a StringRef for the vector contents.
llvm-svn: 79446
|
|
|
|
|
|
|
| |
- This avoids unnecessary malloc/free overhead in the common case, and
unnecessary copying from the ostream buffer into the output vector.
llvm-svn: 79434
|
|
|
|
|
|
| |
rather obscure way (the other candidate is r79377).
llvm-svn: 79426
|
|
|
|
|
|
| |
unsigned).
llvm-svn: 79386
|
|
|
|
|
|
| |
- The base class implementation is correct.
llvm-svn: 79385
|
|
|
|
|
|
| |
buffer.
llvm-svn: 79382
|
|
|
|
|
|
| |
div/mods in 32-bits.
llvm-svn: 79375
|
|
|
|
|
|
|
|
|
| |
allow underlying stream classes to decline buffering. After
calling SetBuffered(), re-check whether the stream is Unbuffered
in order to handle the case where the underlying stream has
declined buffering.
llvm-svn: 79362
|
|
|
|
| |
llvm-svn: 79361
|
|
|
|
| |
llvm-svn: 79142
|
|
|
|
|
|
| |
a terminal, not just when it's STDOUT_FILENO.
llvm-svn: 79066
|
|
|
|
|
|
|
|
| |
mimic the behavior of stdtout, which is line-buffered when the output
is a terminal. This fixes some issues with bugpoint output appearing
being printed out of order.
llvm-svn: 78953
|
|
|
|
| |
llvm-svn: 78933
|
|
|
|
| |
llvm-svn: 78926
|
|
|
|
|
|
|
|
| |
unbuffered. std::ostream does its own buffering, and std::string and
SmallVector both have allocation strategies intended to handle frequent
appending.
llvm-svn: 78924
|
|
|
|
|
|
|
| |
needs of the underlying output mechanism. raw_fd_ostream now uses
st_blksize from fstat to determine a buffer size.
llvm-svn: 78923
|
|
|
|
| |
llvm-svn: 78909
|
|
|
|
|
|
|
| |
a full buffer, rather than often being called with a
slightly-less-than-full buffer.
llvm-svn: 78907
|
|
|
|
| |
llvm-svn: 77614
|
|
|
|
| |
llvm-svn: 77477
|
|
|
|
| |
llvm-svn: 77444
|
|
|
|
|
|
|
| |
it conforms to the assertion added in r77245. This fixes a failure
in qa_override.c in clang's testsuite.
llvm-svn: 77255
|
|
|
|
|
|
| |
that the subclass hasn't left any pending data in the buffer.
llvm-svn: 77245
|
|
|
|
|
|
| |
- No functionality change.
llvm-svn: 76103
|
|
|
|
| |
llvm-svn: 76069
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
immediately on every output error. Instead, add a flag to
raw_ostream, and set the flag whenever an error is detected.
The flag can be queried and cleared from the public API. This
gives applications more flexibility to handling errors in
application-specific ways.
If the flag is not cleared when the raw_ostream is destructed,
llvm_report_error is called from the destructor. This ensures
that errors are not implicitly silenced, and provides
convenient default behavior for tools like llc and opt.
Clients wishing to avoid llvm_report_error calls from
raw_ostream should check for errors and clear the error flag.
llvm-svn: 75857
|
|
|
|
|
|
|
|
| |
an existing file is considered an error. Convert several tools
to use raw_fd_ostream instead of std::ostream, and to use this
new option instead of doing a manual check.
llvm-svn: 75801
|
|
|
|
| |
llvm-svn: 75793
|
|
|
|
|
|
|
| |
consistent with common std::ostream implmentations, and it gives
the user the option of using the umask group write bit.
llvm-svn: 75792
|
|
|
|
| |
llvm-svn: 75758
|
|
|
|
|
|
| |
dynamic_cast<>.
llvm-svn: 75670
|
|
|
|
|
|
|
|
|
| |
hooks as they're no longer needed.
The major change with this patch is to make formatted_raw_ostream usable
by any client of raw_ostream.
llvm-svn: 75283
|
|
|
|
|
|
| |
allow derived classes to examine the stream buffer before it's flushed.
llvm-svn: 75199
|
|
|
|
| |
llvm-svn: 72854
|
|
|
|
| |
llvm-svn: 69583
|
|
|
|
|
|
|
|
|
| |
- Use for exceptional buffer conditions in raw_ostream:write to shave
off a cycle or two.
- Please rename if you have a better one.
llvm-svn: 67103
|
|
|
|
|
|
|
|
| |
under a single branch.
Also, add a FIXME for formatted output.
llvm-svn: 67069
|
|
|
|
|
|
|
|
|
| |
a single character requires only one branch to follow slow path.
- Never use a buffer when writing on an unbuffered stream.
- Move default buffer size to header.
llvm-svn: 67066
|
|
|
|
|
|
|
|
|
| |
write as arguments.
- Add raw_ostream::GetNumBytesInBuffer.
- Privatize buffer pointers.
- Get rid of slow and unnecessary code for writing out large strings.
llvm-svn: 67060
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Flush a known non-empty buffers; enforces the interface to
flush_impl and kills off HandleFlush (which I saw no reason to be
an inline method, Chris?).
- Clarify invariant that flush_impl is only called with OutBufCur >
OutBufStart.
- This also cleary collects all places where we have to deal with the
buffer possibly not existing.
- A few more comments and fixing the unbuffered behavior remain in
this commit sequence.
llvm-svn: 67057
|
|
|
|
|
|
| |
it is easy.
llvm-svn: 67054
|
|
|
|
|
|
| |
single characters writes outside of the fast path in raw_ostream.h
llvm-svn: 67053
|
|
|
|
|
|
|
| |
- Add unbuffered flag to raw_ostream, forwarded by raw_fd_ostream and
used by raw_stderr_ostream.
llvm-svn: 66545
|
|
|
|
| |
llvm-svn: 63044
|
|
|
|
|
|
| |
faster by not requiring a flush().
llvm-svn: 60560
|