Commit Graph

181 Commits

Author SHA1 Message Date
Jeffrey Yasskin 4546d31235 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 66db004d7e Revert r84890, which broke the linux build.
llvm-svn: 84892
2009-10-22 20:23:43 +00:00
Jeffrey Yasskin 6b80e6e2b7 Add a ValueMap<ValueOrSubclass*, T> type. ValueMap<Value*, T> is safe to use
even when keys get RAUWed and deleted during its lifetime. By default the keys
act like WeakVHs, but users can pass a third template parameter to configure
how updates work and whether to do anything beyond updating the map on each
action.

It's also possible to automatically acquire a lock around ValueMap updates
triggered by RAUWs and deletes, to support the ExecutionEngine.

llvm-svn: 84890
2009-10-22 20:10:20 +00:00
Benjamin Kramer 0f4203861f Documentation: Perform automated correction of common typos.
llvm-svn: 83849
2009-10-12 14:46:08 +00:00
Torok Edwin 7630f105a1 Fix typo, patch from Timo Juhani Lindfors.
llvm-svn: 83848
2009-10-12 13:37:29 +00:00
Chris Lattner ba7cdde020 llvm::cerr is gone.
llvm-svn: 81189
2009-09-08 05:15:50 +00:00
Chris Lattner f6bb2a79f2 fix this back, thanks Eli
llvm-svn: 79508
2009-08-20 03:10:14 +00:00
Chris Lattner 2689c3be01 minor grammar tweak
llvm-svn: 79498
2009-08-20 00:29:24 +00:00
Owen Anderson fe7bbc92e1 Add a first stab at describing LLVMContext.
llvm-svn: 79435
2009-08-19 17:58:52 +00:00
Daniel Dunbar 11595b20fc Add DEBUG_WITH_TYPE as a clean alternative to tweaking DEBUG_TYPE.
This:
--
#undef DEBUG_TYPE
#define DEBUG_TYPE "foo"
DEBUG(...)
#undef DEBUG_TYPE
#define DEBUG_TYPE ""
--
becomes this:
--
DEBUG_WITH_TYPE("foo", ...)
--

llvm-svn: 78435
2009-08-07 23:48:59 +00:00
Benjamin Kramer eaccdd34a3 Documentation: fix HTML validation errors.
llvm-svn: 78196
2009-08-05 15:42:44 +00:00
Chris Lattner 47bb37c9d2 eventually we should describe string options in the data structures section
llvm-svn: 77054
2009-07-25 07:22:20 +00:00
Chris Lattner 375a3f40af minor tweaks.
llvm-svn: 77053
2009-07-25 07:16:59 +00:00
Daniel Dunbar 4975db6276 Initial update to VMCore to use Twines for string arguments.
- The only meat here is in Value.{h,cpp} the rest is essential 'const
   std::string &' -> 'const Twine &'.

llvm-svn: 77048
2009-07-25 04:41:11 +00:00
Daniel Dunbar 04bbd9cd34 Rewrite examples to use DEBUG instead of DOUT.
llvm-svn: 77042
2009-07-25 01:55:32 +00:00
Stefanus Du Toit 667cd9abe2 Fix link to BasicBlock doxygen documentation in Programmer's Manual
llvm-svn: 73635
2009-06-17 21:12:26 +00:00
Owen Anderson 4741b5782a Update the threading section to reflect current plans/implementation.
llvm-svn: 73521
2009-06-16 18:04:19 +00:00
Owen Anderson eb105f99ec Fix validation errors.
llvm-svn: 73515
2009-06-16 17:40:28 +00:00
Owen Anderson f0ffb777d9 Add initial stab at documenting the use of LLVM with threaded clients.
Comments welcome!

llvm-svn: 73456
2009-06-16 01:17:16 +00:00
Misha Brukman 3268c95840 HTML-escape '>' as '&gt;' in sample C++ code.
llvm-svn: 70569
2009-05-01 20:40:51 +00:00
Jeffrey Yasskin 590dc3c9ac Add a mention of TypeBuilder to the programmer's manual, and clean up the class
comment a bit.

llvm-svn: 70515
2009-04-30 22:33:41 +00:00
Gabor Greif 02ab9ab66d add some text to explain sentinels
llvm-svn: 66790
2009-03-12 10:30:31 +00:00
Gabor Greif 4ef9bc053a minor tweaks
llvm-svn: 66788
2009-03-12 09:47:03 +00:00
Chris Lattner 4ce03e66a1 don't allow hash_map or hash_set.
llvm-svn: 66400
2009-03-09 05:20:45 +00:00
Duncan Sands 12da8ce3d2 Introduce new linkage types linkonce_odr, weak_odr, common_odr
and extern_weak_odr.  These are the same as the non-odr versions,
except that they indicate that the global will only be overridden
by an *equivalent* global.  In C, a function with weak linkage can
be overridden by a function which behaves completely differently.
This means that IP passes have to skip weak functions, since any
deductions made from the function definition might be wrong, since
the definition could be replaced by something completely different
at link time.   This is not allowed in C++, thanks to the ODR
(One-Definition-Rule): if a function is replaced by another at
link-time, then the new function must be the same as the original
function.  If a language knows that a function or other global can
only be overridden by an equivalent global, it can give it the
weak_odr linkage type, and the optimizers will understand that it
is alright to make deductions based on the function body.  The
code generators on the other hand map weak and weak_odr linkage
to the same thing.

llvm-svn: 66339
2009-03-07 15:45:40 +00:00
Gabor Greif b4b608c617 document ilist_traits
llvm-svn: 65631
2009-02-27 13:28:07 +00:00
Gabor Greif 8243b8c1e5 Expand a bit on iplist. If you are more expert on this class, please review!
llvm-svn: 65630
2009-02-27 12:02:19 +00:00
Gabor Greif d5575adbc4 update ilist documentation and add some blurb on ilist_node
llvm-svn: 65629
2009-02-27 11:37:41 +00:00
Gabor Greif 2231c2cac3 Get rid of the tagging functions and use PointerIntPair.
This means that we have to include an additional header.

This patch should be functionally equivalent. I cannot outrule any performance
degradation, though I do not expect any.

llvm-svn: 61694
2009-01-05 16:05:32 +00:00
Misha Brukman 86242e1990 Global replace of yellow W3C "valid HTML/CSS" icons with blue ones.
llvm-svn: 60880
2008-12-11 17:34:48 +00:00
Chris Lattner c09f2c2bb0 This method got renamed, thanks to Mattias Holm for pointing this out.
llvm-svn: 60039
2008-11-25 18:34:50 +00:00
Eric Christopher 6e670388c0 Fix syntax of iterate_complex example. Noticed by Martin!
llvm-svn: 58900
2008-11-08 08:20:49 +00:00
Daniel Dunbar b9e03a65cd Change PointerType::get -> getUnqual
llvm-svn: 57032
2008-10-03 22:17:25 +00:00
Nick Lewycky 57368a561f Fix documentation for these functions; they do not only modify users within the
block specified by the InstList. Patch by Stefanus Du Toit.

llvm-svn: 56200
2008-09-15 06:31:52 +00:00
Gabor Greif 845eb8ea44 Use present tense when talking about User layout. It is implemented now.
llvm-svn: 52699
2008-06-25 00:10:22 +00:00
Chris Lattner 643b00a3e6 Fix typo, fix suggested by Nicholas Olsen
llvm-svn: 52524
2008-06-20 05:03:17 +00:00
Gabor Greif 687f35f466 fix validator warning
llvm-svn: 52461
2008-06-18 14:05:31 +00:00
Gabor Greif 095502edfe prettify, no semantic changes
llvm-svn: 52460
2008-06-18 13:44:57 +00:00
Gabor Greif 5c28a6c31e Move some documentation from the header file into ProgrammersManual. About to improve.
llvm-svn: 52360
2008-06-16 21:06:12 +00:00
Chris Lattner 09ebde227e Fix inst_iterator example.
llvm-svn: 51954
2008-06-04 18:20:42 +00:00
Chris Lattner 0c46309b02 simplify this.
llvm-svn: 47187
2008-02-15 22:57:17 +00:00
Chris Lattner 67793d8d60 add info on walking preds/succs of a block.
llvm-svn: 45537
2008-01-03 16:56:04 +00:00
Nick Lewycky d93847a96a Type::IntTy hasn't existed for a while. Just sub in Type::Int32Ty.
llvm-svn: 44526
2007-12-03 01:52:52 +00:00
Chris Lattner bd0079c603 document DenseSet.
llvm-svn: 42475
2007-09-30 00:58:59 +00:00
Chris Lattner ccc1b69a52 explain why not vector<bool>
llvm-svn: 42324
2007-09-25 22:37:50 +00:00
Daniel Berlin d746bbd908 Add section on bit containers.
(Not the most well written stuff in the universe :P)

llvm-svn: 42267
2007-09-24 17:52:25 +00:00
Chris Lattner 0625bd6472 Merge DenseMapKeyInfo & DenseMapValueInfo into DenseMapInfo
Add a new DenseMapInfo::isEqual method to allow clients to redefine
the equality predicate used when probing the hash table.

llvm-svn: 42042
2007-09-17 18:34:04 +00:00
Gabor Greif a54634adef first pass of nomenclature changes in .html files
llvm-svn: 37956
2007-07-06 22:07:22 +00:00
Tanya Lattner 872bf1bdc3 Modify deleting global variable with an even easier way.
llvm-svn: 37676
2007-06-20 20:46:37 +00:00
Tanya Lattner 1a08cf311e Add blurb on deleting global variables.
llvm-svn: 37674
2007-06-20 18:33:15 +00:00