| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
anything which would mess up binary/object comparisons. Currently:
- Disables 'Built on ...' in 'foo --version'.
- Disables timestamps from being embedded into .dir files.
llvm-svn: 103423
|
|
|
|
|
|
| |
ungracefully.
llvm-svn: 103334
|
|
|
|
|
|
|
|
| |
automatic syscall restarting is disabled.
Also, fix the build on systems which don't define EWOULDBLOCK.
llvm-svn: 103158
|
|
|
|
|
|
|
|
|
| |
EAGAIN and EWOULDBLOCK are used here.
Also, handle the case where a write call is interrupted after
some data has already been written.
llvm-svn: 103153
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Microoptimize Twine's with unsigned and int to not pin their value to
the stack. This saves stack space in common cases and allows mem2reg
in the caller. A simple example is:
void foo(const Twine &);
void bar(int x) {
foo("xyz: " + Twine(x));
}
Before:
__Z3bari:
subq $40, %rsp
movl %edi, 36(%rsp)
leaq L_.str3(%rip), %rax
leaq 36(%rsp), %rcx
leaq 8(%rsp), %rdi
movq %rax, 8(%rsp)
movq %rcx, 16(%rsp)
movb $3, 24(%rsp)
movb $7, 25(%rsp)
callq __Z3fooRKN4llvm5TwineE
addq $40, %rsp
ret
After:
__Z3bari:
subq $24, %rsp
leaq L_.str3(%rip), %rax
movq %rax, (%rsp)
movslq %edi, %rax
movq %rax, 8(%rsp)
movb $3, 16(%rsp)
movb $7, 17(%rsp)
leaq (%rsp), %rdi
callq __Z3fooRKN4llvm5TwineE
addq $24, %rsp
ret
It saves 16 bytes of stack and one instruction in this case.
llvm-svn: 103107
|
|
|
|
|
|
|
| |
This should fix mysteriously crashing boost regression tests when stderr is
managed by bjam (PR7043).
llvm-svn: 103085
|
|
|
|
| |
llvm-svn: 101812
|
|
|
|
| |
llvm-svn: 101805
|
|
|
|
| |
llvm-svn: 101692
|
|
|
|
| |
llvm-svn: 101376
|
|
|
|
| |
llvm-svn: 101138
|
|
|
|
|
|
|
| |
We have some code in llvm and clang where a BumpPtrAllocator is declared in a
class but never used in the common case. Stop wasting memory there.
llvm-svn: 101130
|
|
|
|
|
|
| |
patch by 'ether'.
llvm-svn: 101116
|
|
|
|
| |
llvm-svn: 100895
|
|
|
|
| |
llvm-svn: 100894
|
|
|
|
|
|
| |
passed to free.
llvm-svn: 100767
|
|
|
|
|
|
| |
and friends.
llvm-svn: 100717
|
|
|
|
| |
llvm-svn: 100709
|
|
|
|
|
|
|
| |
Add a simplified constructor for clients that don't have locations
like "file not found" errors.
llvm-svn: 100538
|
|
|
|
| |
llvm-svn: 100504
|
|
|
|
|
|
| |
diagnostic handler.
llvm-svn: 100503
|
|
|
|
|
|
| |
a co-committed clang patch.
llvm-svn: 100485
|
|
|
|
| |
llvm-svn: 100438
|
|
|
|
| |
llvm-svn: 100107
|
|
|
|
|
|
|
|
|
|
| |
- Use a RAII object to close the FD.
- Use sys::StrError instead of thread-unsafe strerror calls.
- Recover gracefully if read returns zero. This works around an issue on
DragonFlyBSD where /dev/null has an st_size of 136 but we can't read 136 bytes
from it.
llvm-svn: 100106
|
|
|
|
|
|
|
| |
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.
llvm-svn: 99919
|
|
|
|
|
|
|
| |
passing the command-line parameter "-stats" and to print the resulting
statistics without calling llvm_shutdown().
llvm-svn: 99893
|
|
|
|
| |
llvm-svn: 99883
|
|
|
|
| |
llvm-svn: 99882
|
|
|
|
|
|
|
|
|
|
| |
on all objects it has allocated, if they are all of the same size and alignment.
Use this to destruct all VNInfos allocated in LiveIntervalAnalysis (PR6653).
valnos is not reliable for this purpose, as seen in r99400
(which still leaked, and sometimes caused double frees).
llvm-svn: 99881
|
|
|
|
| |
llvm-svn: 99877
|
|
|
|
|
|
|
| |
implement TimerGroup::printAll, which prints and resets all active
timers.
llvm-svn: 99876
|
|
|
|
|
|
| |
TimerGroup copy ctor and assignment operator.
llvm-svn: 99875
|
|
|
|
|
|
| |
have it always return a new stream to simplify clients.
llvm-svn: 99874
|
|
|
|
| |
llvm-svn: 99873
|
|
|
|
|
|
|
|
| |
instead of just a count of them, and refactor the guts of
report printing out of removeTimer into its own method.
Refactor addTimerToPrint away.
llvm-svn: 99872
|
|
|
|
|
|
| |
timers by pointer instead of by-value.
llvm-svn: 99871
|
|
|
|
| |
llvm-svn: 99870
|
|
|
|
| |
llvm-svn: 99862
|
|
|
|
| |
llvm-svn: 99842
|
|
|
|
|
|
|
| |
isn't used by anyone and is better exposed as a non-per-timer
thing. Also, stop including System/Mutex.h in Timer.h
llvm-svn: 99841
|
|
|
|
|
|
|
|
|
| |
eliminate the per-timer lock (timers should be
externally locked if needed), the info-output-stream
can never be dbgs(), so drop the check. Make some
stuff private.
llvm-svn: 99839
|
|
|
|
| |
llvm-svn: 99834
|
|
|
|
| |
llvm-svn: 99831
|
|
|
|
|
|
| |
Kees van Reeuwijk for PR6704
llvm-svn: 99677
|
|
|
|
| |
llvm-svn: 99414
|
|
|
|
| |
llvm-svn: 99392
|
|
|
|
|
|
|
|
|
|
|
|
| |
BumpPtrAllocator-allocated region to allow it to be stored in a more
compact form and to avoid the need for a non-trivial destructor call.
Use this new mechanism in ScalarEvolution instead of
FastFoldingSetNode to avoid leaking memory in the case where a
FoldingSetNodeID uses heap storage, and to reduce overall memory
usage.
llvm-svn: 98829
|
|
|
|
|
|
|
| |
pointer. If given, the structure will be set with the stat information from
the file actually read.
llvm-svn: 98575
|
|
|
|
| |
llvm-svn: 97883
|