1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
Commit Graph

229 Commits

Author SHA1 Message Date
Benjamin Kramer
36acdd4832 Reapply the SmallMap patch with a fix.
Comparing ~0UL with an unsigned will always return false when long is 64 bits long.

llvm-svn: 155568
2012-04-25 18:01:58 +00:00
Eric Christopher
d38d9bb28b Revert "First implementation of:"
This reverts commit 76271a3366731d4c372fdebcd8d3437e6e09a61b.

as it's breaking the bots.

llvm-svn: 155562
2012-04-25 17:51:00 +00:00
Stepan Dyatkovskiy
a580659b6c First implementation of:
- FlatArrayMap. Very simple map container that uses flat array inside.
- MultiImplMap. Map container interface, that has two modes, one for small amount of elements and one for big amount.
- SmallMap. SmallMap is DenseMap compatible MultiImplMap. It uses FlatArrayMap for small mode, and DenseMap for big mode. 

Also added unittests for new classes and update for ProgrammersManual.
For more details about new classes see ProgrammersManual and comments in sourcecode.

llvm-svn: 155557
2012-04-25 17:09:38 +00:00
Daniel Dunbar
edaa8a2cd7 [docs] Update HTML pages to refer to CSS in a way that works locally and with Sphinx.
llvm-svn: 155153
2012-04-19 20:20:34 +00:00
Jim Grosbach
392e7c7735 Document that StringMap iteration order is non-deterministic.
llvm-svn: 155040
2012-04-18 20:28:55 +00:00
NAKAMURA Takumi
eb0805cb93 llvm/docs/*.html: Fix markups.
llvm-svn: 153508
2012-03-27 11:25:16 +00:00
Jakob Stoklund Olesen
3b18c7d900 Add a Briggs and Torczon sparse set implementation.
For objects that can be identified by small unsigned keys, SparseSet
provides constant time clear() and fast deterministic iteration. Insert,
erase, and find operations are typically faster than hash tables.

SparseSet is useful for keeping information about physical registers,
virtual registers, or numbered basic blocks.

llvm-svn: 151110
2012-02-22 00:56:08 +00:00
Talin
d6b8c10155 DenseMap::find_as() and unit tests.
llvm-svn: 149229
2012-01-30 06:55:43 +00:00
Chris Lattner
35b9395faf add ImmutableSet/Map dox, patch by Caitlin Sadowski!
llvm-svn: 144716
2011-11-15 22:40:14 +00:00
NAKAMURA Takumi
6b04733494 docs/*.html: Fix markups.
llvm-svn: 143349
2011-10-31 13:04:26 +00:00
Jim Grosbach
7a4e1e2e0b Clarify example snippets a bit.
llvm-svn: 143224
2011-10-28 20:52:20 +00:00
Bill Wendling
2d42685bf0 Reword the SetVector description to reflect reality.
Patch by Michael Ilseman!

llvm-svn: 141648
2011-10-11 06:33:56 +00:00
Chris Lattner
418c6d4374 how about that, StringRef doesn't allow any mutation, thanks to
Frits for straightening me out.

llvm-svn: 135856
2011-07-23 17:18:57 +00:00
Chris Lattner
410e97a81b add section to ToC
llvm-svn: 135811
2011-07-22 21:36:29 +00:00
Chris Lattner
b687e3c0e6 write the long-overdue strings section of the data structure guide.
llvm-svn: 135809
2011-07-22 21:34:12 +00:00
Chris Lattner
2e2fa87d6b move the section for string-like containers to follow the section for sequential containers.
llvm-svn: 135799
2011-07-22 20:46:49 +00:00
Chris Lattner
fde62dcdb7 introduce a new TinyPtrVector class.
llvm-svn: 135365
2011-07-18 01:40:02 +00:00
Tobias Grosser
c0e20d0db1 VectorType is also a SequentialType
llvm-svn: 134979
2011-07-12 11:37:02 +00:00
Chris Lattner
a106725fc5 Land the long talked about "type system rewrite" patch. This
patch brings numerous advantages to LLVM.  One way to look at it
is through diffstat:
 109 files changed, 3005 insertions(+), 5906 deletions(-)

Removing almost 3K lines of code is a good thing.  Other advantages
include:

1. Value::getType() is a simple load that can be CSE'd, not a mutating
   union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
   uniques them.  This means that the compiler doesn't merge them structurally
   which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
   struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
   in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead 
   "const Type *" everywhere.

Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.  
"LLVM 3.0" is the right time to do this.

There are still some cleanups pending after this, this patch is large enough
as-is.

llvm-svn: 134829
2011-07-09 17:41:24 +00:00
Argyrios Kyrtzidis
c9fe78d77e Document ADT/PackedVector.h in "Programmer's Manual" doc.
llvm-svn: 133077
2011-06-15 19:56:01 +00:00
Chris Lattner
71a35fd7e7 mention graph vis isn't available in Release builds.
llvm-svn: 132916
2011-06-13 15:59:35 +00:00
NAKAMURA Takumi
ada5cc7c01 docs: Introduce cascading style <div> and <p> continued on <h[2-5]>.
<h2>Section Example</h2>
<div> <!-- h2+div is applied -->
<p>Section preamble.</p>

<h3>Subsection Example</h3>
<p> <!-- h3+p is applied -->
Subsection body
</p>

<!-- End of section body -->
</div>

FIXME: Care H5 better.
llvm-svn: 130040
2011-04-23 00:30:22 +00:00
NAKAMURA Takumi
3edcd4ba6a docs: Use <Hn> as Heading elements instead of <DIV class="doc_foo">.
H1 ... doc_title
H2 ... doc_section
H3 ... doc_subsection
H4 ... doc_subsubsection

llvm-svn: 129736
2011-04-18 23:59:50 +00:00
NAKAMURA Takumi
75a5311a8e docs: Redefine Heading elements as below;
H1 ... Title (and might be Chapter in future)
H2 ... Section
H3 ... Subsection
H4 ... Sub-subsection

llvm-svn: 129683
2011-04-18 01:17:51 +00:00
NAKAMURA Takumi
940b366f8c docs: Canonicalize URLs.
llvm-svn: 129181
2011-04-09 02:13:37 +00:00
Chris Lattner
1dd86fd6f4 mention llvm::ArrayRef, which should be use much more pervasively than
it already is.

llvm-svn: 128954
2011-04-05 23:18:20 +00:00
Jakob Stoklund Olesen
e104258b57 Document llvm/ADT/IntEqClasses.h in ProgrammersManual.html
llvm-svn: 128927
2011-04-05 20:56:08 +00:00
Chris Lattner
3385be615f fix description, PR9542
llvm-svn: 128214
2011-03-24 16:13:31 +00:00
Nick Lewycky
4e7ec00a1d Fix thinko, basic blocks are SESE. The exits may have many edges though.
llvm-svn: 125709
2011-02-17 02:19:22 +00:00
Jakob Stoklund Olesen
8ebbd669bc Add IntervalMap to the Programmer's Manual.
llvm-svn: 121740
2010-12-14 00:55:51 +00:00
Nick Lewycky
4850c46aab Fix dead link.
llvm-svn: 116157
2010-10-09 21:12:29 +00:00
Dan Gohman
b29ac42863 Remove a link which is no longer relevant.
llvm-svn: 110202
2010-08-04 15:59:16 +00:00
Nick Lewycky
f2db3d61a9 Fix word choice.
llvm-svn: 109995
2010-08-01 23:18:45 +00:00
Benjamin Kramer
da3e6cdb26 Don't pass StringRef by reference.
llvm-svn: 108366
2010-07-14 22:38:02 +00:00
mike-m
3baf2ffb17 Revert r103213. It broke several sections of live website.
llvm-svn: 103219
2010-05-07 00:28:04 +00:00
mike-m
6b8861e9f6 Overhauled llvm/clang docs builds. Closes PR6613.
NOTE: 2nd part changeset for cfe trunk to follow.

*** PRE-PATCH ISSUES ADDRESSED

- clang api docs fail build from objdir
- clang/llvm api docs collide in install PREFIX/
- clang/llvm main docs collide in install
- clang/llvm main docs have full of hard coded destination
  assumptions and make use of absolute root in static html files;
  namely CommandGuide tools hard codes a website destination
  for cross references and some html cross references assume
  website root paths

*** IMPROVEMENTS

- bumped Doxygen from 1.4.x -> 1.6.3
- splits llvm/clang docs into 'main' and 'api' (doxygen) build trees
- provide consistent, reliable doc builds for both main+api docs
- support buid vs. install vs. website intentions
- support objdir builds
- document targets with 'make help'
- correct clean and uninstall operations
- use recursive dir delete only where absolutely necessary
- added call function fn.RMRF which safeguards against botched 'rm -rf';
  if any target (or any variable is evaluated) which attempts
  to remove any dirs which match a hard-coded 'safelist', a verbose
  error will be printed and make will error-stop.

llvm-svn: 103213
2010-05-06 23:45:43 +00:00
Dan Gohman
4bdd10c6df Fix a grammaro.
llvm-svn: 99917
2010-03-30 20:04:57 +00:00
Gabor Greif
a9b9d7cd8b fix iterator name
llvm-svn: 99646
2010-03-26 19:59:25 +00:00
Dan Gohman
409aed7b50 Minor grammar and html fixes.
llvm-svn: 99644
2010-03-26 19:51:14 +00:00
Gabor Greif
77e468da11 some more tweaks
llvm-svn: 99643
2010-03-26 19:40:38 +00:00
Dan Gohman
746a971656 Tell "the rest of the story" about LLVM's iterators' implicit conversions.
llvm-svn: 99642
2010-03-26 19:39:05 +00:00
Gabor Greif
ab4f7619d9 fix formatting and a validation fail
llvm-svn: 99640
2010-03-26 19:35:48 +00:00
Gabor Greif
b719c76f21 add a blurb on const versions of chain traversals and a word of caution
llvm-svn: 99638
2010-03-26 19:30:47 +00:00
Gabor Greif
f823bd13ae http://englishplus.com/grammar/00000296.htm
llvm-svn: 99635
2010-03-26 19:04:42 +00:00
Dan Gohman
f433645431 Fix a few more typos.
llvm-svn: 97182
2010-02-25 23:51:27 +00:00
Duncan Sands
2acaf3609c Uniformize the names of type predicates: rather than having isFloatTy and
isInteger, we now have isFloatTy and isIntegerTy.  Requested by Chris!

llvm-svn: 96223
2010-02-15 16:12:20 +00:00
Jeffrey Yasskin
394da72ecc Belatedly document r85295 and r85330.
llvm-svn: 94825
2010-01-29 19:10:38 +00:00
Dan Gohman
77ec0f447e Add an entry on SmallBitVector.
llvm-svn: 92747
2010-01-05 18:24:00 +00:00
Jeffrey Yasskin
e90afea0ba Try r84890 again (adding ValueMap<>), now that I've tested the compile on
gcc-4.4.

llvm-svn: 84902
2009-10-22 22:11:22 +00:00
Jeffrey Yasskin
7555ed8cdc Revert r84890, which broke the linux build.
llvm-svn: 84892
2009-10-22 20:23:43 +00:00