Jakob Stoklund Olesen
67d1a71aa4
Speed up simple insertions into an unbranched tree by not creating an iterator.
...
llvm-svn: 120232
2010-11-28 06:14:33 +00:00
Anton Korobeynikov
7283b8d18c
Move more PEI-related hooks to TFI
...
llvm-svn: 120229
2010-11-27 23:05:25 +00:00
Anton Korobeynikov
d08fbd19f5
Move callee-saved regs spills / reloads to TFI
...
llvm-svn: 120228
2010-11-27 23:05:03 +00:00
Jakob Stoklund Olesen
056356d502
Add more tests for erase(). Fix a few exposed bugs.
...
llvm-svn: 120227
2010-11-27 22:56:53 +00:00
Jakob Stoklund Olesen
bb4bece211
Add test case with randomly ordered insertions, massive coalescing.
...
Implement iterator::erase() in a simple version that erases nodes when they
become empty, but doesn't try to redistribute elements among siblings for better
packing.
Handle coalescing across leaf nodes which may require erasing entries.
llvm-svn: 120226
2010-11-27 21:12:36 +00:00
Benjamin Kramer
f2d08136bf
Remove PIC16 remnants.
...
llvm-svn: 120223
2010-11-27 18:20:30 +00:00
Daniel Dunbar
e308b8edab
macho-dump: Add support for --dump-section-data and tweak a few format strings.
...
llvm-svn: 120219
2010-11-27 13:58:16 +00:00
Daniel Dunbar
83224fc391
macho-dump: Add support for dumping symbol table entries.
...
llvm-svn: 120218
2010-11-27 13:52:53 +00:00
Daniel Dunbar
8680ce6ffc
macho-dump: Add support for dumping string table data.
...
llvm-svn: 120217
2010-11-27 13:46:11 +00:00
Daniel Dunbar
0ac77d526d
macho-dump: Add support for dumping relocation entries.
...
llvm-svn: 120216
2010-11-27 13:39:48 +00:00
Daniel Dunbar
5867690cfa
macho-dump: Add support for dumping sections.
...
llvm-svn: 120215
2010-11-27 13:33:15 +00:00
Daniel Dunbar
c983afc5a1
macho-dump: Add support for dumping dysymtab indirect symbol table.
...
llvm-svn: 120214
2010-11-27 13:26:12 +00:00
Daniel Dunbar
f9c900d3c9
Add an optional LowerCase argument to hexdigit().
...
llvm-svn: 120213
2010-11-27 13:19:46 +00:00
Daniel Dunbar
33dab2a6ee
macho-dump: Add support for dumping symtab and dysymtab commands.
...
llvm-svn: 120204
2010-11-27 08:33:44 +00:00
Daniel Dunbar
a8070e0284
macho-dump: Add support for dumping segment load commands.
...
llvm-svn: 120203
2010-11-27 08:22:29 +00:00
Owen Anderson
8ba5f39f70
Second attempt at fixing the performance regressions introduced
...
by my recent GVN improvement. Looking through a single layer of
PHI nodes when attempting to sink GEPs, we need to iteratively
look through arbitrary PHI nests.
llvm-svn: 120202
2010-11-27 08:15:55 +00:00
Daniel Dunbar
762bf86919
ADT/InMemoryStruct: Add an experimental helper class intended for use in
...
situations where on the common path an API can return a pointer to some direct
memory, but which on an exceptional path may need to return a pointer to a
temporary struct.
llvm-svn: 120201
2010-11-27 08:11:02 +00:00
Daniel Dunbar
65dc891942
raw_ostream::write_escaped: Add a UseHexEscapes argument.
...
llvm-svn: 120200
2010-11-27 07:59:50 +00:00
Daniel Dunbar
3977e7d22c
Object/Mach-O: Add header and load command information.
...
llvm-svn: 120198
2010-11-27 07:19:41 +00:00
Daniel Dunbar
feb1c5d830
Object/Mach-O: Validate Mach-O magic and initialize format info.
...
llvm-svn: 120195
2010-11-27 06:39:22 +00:00
Daniel Dunbar
1df8d83a55
MC/Mach-O: Start stubbing out a Mach-O object file wrapper.
...
llvm-svn: 120190
2010-11-27 05:38:50 +00:00
Daniel Dunbar
eab6e401fe
MC/Mach-O: Migrate more constants into MachOFormat.h.
...
llvm-svn: 120188
2010-11-27 04:59:14 +00:00
Daniel Dunbar
2263ca4834
MC/Mach-O: Introduce Object/MachOFormat for describing purely platform / machine
...
independent information on the Mach object format, and move some stuff from
MachObjectWriter.cpp there.
llvm-svn: 120186
2010-11-27 04:19:38 +00:00
Benjamin Kramer
9610ea943c
BitVector tweaks.
...
- Double the vector's capacity when growing to avoid unneeccesary reallocation.
- Do the reallocation with realloc(3) which can expand the memory in place.
llvm-svn: 120183
2010-11-26 18:25:20 +00:00
Benjamin Kramer
4fcd9163fc
StringRefs are POD-like.
...
llvm-svn: 120181
2010-11-26 14:36:54 +00:00
Jakob Stoklund Olesen
5e9c70ee57
Add B+-tree test case that creates a height 3 tree with a smaller root node.
...
Change temporary debugging code to write a dot file directly.
llvm-svn: 120171
2010-11-26 06:54:20 +00:00
Jakob Stoklund Olesen
90e6f41f69
Extract template function adjustSiblingSizes(), allowing instances to be shared
...
between B+-trees using the same KeyT.
llvm-svn: 120170
2010-11-26 06:54:17 +00:00
Rafael Espindola
bf4a4e4ad9
Remove the unused TheTarget member.
...
llvm-svn: 120168
2010-11-26 04:24:21 +00:00
Michael J. Spencer
2eb0a6fafa
Fix spelling!
...
llvm-svn: 120167
2010-11-26 04:16:20 +00:00
Michael J. Spencer
f13f442b1a
Fix Whitespace.
...
llvm-svn: 120166
2010-11-26 04:16:08 +00:00
Jakob Stoklund Olesen
a12095d26d
Move tree navigation to a new Path class that doesn't have to be a template.
...
The path also holds a reference to the root node, and that allows important
iterator accessors like start() and stop() to have no conditional code. (When
the compiler is clever enough to remove it.)
llvm-svn: 120165
2010-11-26 01:39:40 +00:00
Benjamin Kramer
336e02e89b
SDep is POD-like. Shave off a few bytes from SUnit by moving a member around.
...
llvm-svn: 120150
2010-11-25 17:50:19 +00:00
Michael J. Spencer
d4a894d62f
system_error: Even more unsupported error numbers :(.
...
llvm-svn: 120139
2010-11-25 01:53:59 +00:00
Michael J. Spencer
26f628d57f
80 col.
...
llvm-svn: 120111
2010-11-24 20:07:14 +00:00
Michael J. Spencer
96bcfcf2c2
Path Version 2.
...
Based on TR2/boost filesystem (v3) API, but modified to remove exceptions.
Do not include this file directly, when it is ready, it will be included by
include/llvm/System/Path.h.
llvm-svn: 120102
2010-11-24 19:20:19 +00:00
NAKAMURA Takumi
cf3475172f
include/llvm/System/system_error.h: ECANCELED is undefined on Cygwin-1.5.
...
llvm-svn: 120072
2010-11-24 01:29:45 +00:00
Ted Kremenek
1ef52416c7
Tweak ImmutableMap/ImmutableSet/ImmutableList APIs
...
to use lowercase letters for the start of most
method names and to replace some method names
with more descriptive names (e.g., "getLeft()"
instead of "Left()"). No real functionality
change.
llvm-svn: 120070
2010-11-24 00:54:28 +00:00
Jakob Stoklund Olesen
00430319a8
Generalize overflowLeaf to also handle overflows in branch nodes.
...
This doesn't quite work yet because the calls to treeDecrement and treeIncrement
operate at the leaf level, not on pathNode(Level) as required.
llvm-svn: 120068
2010-11-24 00:03:32 +00:00
Chris Lattner
6bf4e6d8b2
add a MemoryBuffer::getOpenFile method, which turns an open
...
file descriptor into a MemoryBuffer (and closes the FD).
llvm-svn: 120065
2010-11-23 22:20:27 +00:00
Michael J. Spencer
5aef638057
system_error: Add fixme.
...
llvm-svn: 120059
2010-11-23 21:09:11 +00:00
Jason W Kim
8e21bf84e8
Move the ARM reloc constants to Support/ELF.h
...
llvm-svn: 120035
2010-11-23 19:40:36 +00:00
Duncan Sands
a021988d64
Expand a little on the description of what InstructionSimplify does.
...
llvm-svn: 120016
2010-11-23 10:50:08 +00:00
Duncan Sands
763dec0ab8
Clarify that constant folding of instructions applies when all operands
...
are constant. There was in fact one exception to this (phi nodes) - so
remove that exception (InstructionSimplify handles this so there should
be no loss).
llvm-svn: 120015
2010-11-23 10:16:18 +00:00
Rafael Espindola
5c1d4e3b1e
Invalidate the layout on any relaxation, not just Instructions. Bug found by David Meyer.
...
While here, remove unused argument and rename UpdateForSlide to Invalidate.
llvm-svn: 120009
2010-11-23 08:08:33 +00:00
Cameron Zwarich
767a389fa5
Optimize a common case in the Lengauer-Tarjan dominators algorithm. This gives a
...
9.7% speedup running domtree on test-suite.
Reviewed by Chris Lattner.
llvm-svn: 120003
2010-11-23 06:32:37 +00:00
Chris Lattner
2dd97d2d60
Revert functionality doug added in r98575 that was never
...
documented and only used by some clang stuff I just removed.
llvm-svn: 120002
2010-11-23 06:09:51 +00:00
Rafael Espindola
6e13aa1d3b
Reuse data fragments while lowering. Patch by David Meyer.
...
llvm-svn: 119999
2010-11-23 05:49:35 +00:00
Chris Lattner
a5f868ce03
fix this harder.
...
llvm-svn: 119994
2010-11-23 04:26:12 +00:00
Chris Lattner
13b981b26f
fix a bug I introduced on the other side of the #ifdef
...
llvm-svn: 119993
2010-11-23 04:19:56 +00:00
Chris Lattner
8bec7227d4
reimplement SwapByteOrder.h in terms of overloading instead of
...
being in terms of excessively complex template logic.
llvm-svn: 119992
2010-11-23 04:04:25 +00:00