Commit Graph

3731 Commits

Author SHA1 Message Date
Duncan Sands 6c5e4355bb I got tired of VISIBILITY_HIDDEN colliding with the gcc enum. Rename it
to LLVM_LIBRARY_VISIBILITY and introduce LLVM_GLOBAL_VISIBILITY, which is
the opposite, for future use by dragonegg.

llvm-svn: 103495
2010-05-11 20:16:09 +00:00
Daniel Dunbar 94ffc292c6 Test commit.
llvm-svn: 103479
2010-05-11 17:22:45 +00:00
Tanya Lattner 1c63ea61cf Test commit.
llvm-svn: 103478
2010-05-11 16:47:42 +00:00
Tanya Lattner 7caf0a70de Test commit.
llvm-svn: 103477
2010-05-11 16:46:45 +00:00
Tobias Grosser 4c91c526ca Document graphviz passes for the (post) dominator tree.
Add documentation for:
  -dot-dom
  -dot-dom-only
  -dot-postdom
  -dot-postdom-only
  -view-dom
  -view-dom-only
  -view-postdom
  -view-postdom-only

llvm-svn: 103251
2010-05-07 09:33:18 +00:00
mike-m f375e9a092 Revert r103213. It broke several sections of live website.
llvm-svn: 103219
2010-05-07 00:28:04 +00:00
mike-m c750e87c33 Disable man->postscript and man->pdf doc generation unless explicitly
configured via --enable-doxygen. It seems some systems have broken pdfroff
so automatic use of it is not safe.

llvm-svn: 103217
2010-05-07 00:13:23 +00:00
mike-m 90fbedcb54 Cleanup unneeded dirs after docs overhaul.
llvm-svn: 103215
2010-05-06 23:48:37 +00:00
mike-m e08af303a6 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
Chris Lattner 966a382ae7 Fix some ..'s
llvm-svn: 103134
2010-05-05 23:29:09 +00:00
Chris Lattner a25ee78fc0 one more thing.
llvm-svn: 103024
2010-05-04 18:16:00 +00:00
Chris Lattner f3d99aaa22 update instructions for llvm-gcc4, the brave new world! PR7037
llvm-svn: 103023
2010-05-04 18:15:33 +00:00
Dan Gohman 3b763f4ba0 Update one more 2.7 to 2.8.
llvm-svn: 102978
2010-05-03 23:52:21 +00:00
Dan Gohman 62af9d2723 Minimally update ReleaseNotes.html for 2.8 development; uncomment and
update the big red warning at the top. Most of the old content remains
and awaits revision.

Clear out the API changes section, and start it up again with a
mention of the add->fadd transition.

llvm-svn: 102977
2010-05-03 23:51:05 +00:00
Dan Gohman 3513ea5c1a Update this comment to note its relationship with the "happens-before"
concept in the proposed memory model changes.

llvm-svn: 102911
2010-05-03 14:59:34 +00:00
Dan Gohman a9601bb6fb Delete this comment. The behavior of struct loads and stores with
respect to padding bytes isn't something that the dependence text
needs to spell out.

llvm-svn: 102910
2010-05-03 14:58:14 +00:00
Dan Gohman 7292a759b4 Describe invoke instruction dependencies. Generalize the text for
terminator instructions so that it applies to all terminators with
multiple successors, including invoke.

llvm-svn: 102909
2010-05-03 14:55:22 +00:00
Dan Gohman ac355aaf9e Say "operations" instead of "instructions", as nsw can be applied to
constant expressions as well as instructions.

llvm-svn: 102908
2010-05-03 14:51:43 +00:00
Duncan Sands 211427bda9 Remove the -enable-sjlj-eh option, which doesn't do anything.
Remove the -enable-eh option which is only used by the JIT,
and replace it with -jit-enable-eh.

llvm-svn: 102865
2010-05-02 15:36:26 +00:00
David Chisnall b492b81a94 Fixed @ctor / @dtor the wrong way around in last commit.
llvm-svn: 102741
2010-04-30 19:27:35 +00:00
David Chisnall a9d4a6fb28 Added a brief explanation of @llvm.global_{c,d}tors.
llvm-svn: 102740
2010-04-30 19:23:49 +00:00
Dan Gohman 2f1ae06c45 Rewrite the section on trap values to contain a generic description
of dependence and define trap values in terms of dependence, instead
of trying to cover the concept with a flurry of ad-hoc rules.

The dependence model isn't complete yet, but it's already much more
rigorous than the description it replaces.

llvm-svn: 102479
2010-04-28 00:49:41 +00:00
Dan Gohman 61110aed26 Fix spelling errors.
llvm-svn: 102478
2010-04-28 00:36:01 +00:00
Chris Lattner 4bd85e47bf further clarify alignment of globals, fix instcombine
to not increase the alignment of globals with an assigned
alignment and section.

llvm-svn: 102476
2010-04-28 00:31:12 +00:00
Chris Lattner 78e00bcb76 improve the global variable alignment description.
it is not generally valid for targets to overalign
them when an alignment is specified.

llvm-svn: 102474
2010-04-28 00:13:42 +00:00
Chris Lattner a3cc83bc82 fix wordo
llvm-svn: 102418
2010-04-27 07:28:11 +00:00
Chris Lattner 0260a975ba remove some comments.
llvm-svn: 102417
2010-04-27 06:57:10 +00:00
Dan Gohman b8b85c1ddb Integrate Jeffery Yasskin's suggestions with respect to
traps flowing through memory references, add some text to
better cover phi nodes and externally-visible side effects,
add an example of instructions being control-dependent
on a trap value, and reword some of the existing trap rules.

llvm-svn: 102399
2010-04-26 23:36:52 +00:00
Jeffrey Yasskin 5d284ae8a0 Consolidate the description of volatile operations, now that some of the
intrinsics have volatile semantics in addition to the load and store
instructions.  

llvm-svn: 102384
2010-04-26 21:21:24 +00:00
Dan Gohman 48a2588be4 Branching or switching on trap transfers imminent undefined behavior
onto control-dependent instructions.

llvm-svn: 102381
2010-04-26 20:54:53 +00:00
Gabor Greif 137d90c763 add some typewriter tags
llvm-svn: 102378
2010-04-26 20:46:03 +00:00
Dan Gohman b2a709be07 Fix HTML errors that Jeffery Yasskin noticed.
llvm-svn: 102376
2010-04-26 20:21:21 +00:00
Chris Lattner 5de7f6e02b wrap some long lines.
llvm-svn: 102354
2010-04-26 17:42:18 +00:00
Chris Lattner df85c89c45 add GHC, thanks to David Terei
llvm-svn: 102352
2010-04-26 17:38:10 +00:00
Gabor Greif 60084b176e another typo pointed out by sajd
llvm-svn: 102319
2010-04-25 21:30:22 +00:00
Gabor Greif c1670318e2 fix two typos pointed out by sajd
llvm-svn: 102318
2010-04-25 21:27:54 +00:00
David Chisnall 17dff47e22 Added bullet about GNUstep Objective-C ABI support to the Clang section of the release notes.
llvm-svn: 102309
2010-04-25 19:13:33 +00:00
Dan Gohman 283a350f4d PHI nodes also do not necessarily return trap with a trap operand.
llvm-svn: 102278
2010-04-24 22:15:58 +00:00
Nick Lewycky 9a7459af1d Fix typo.
llvm-svn: 102276
2010-04-24 22:01:40 +00:00
Dan Gohman 5725580bb6 Switch getelementptr inbounds and sdiv exact from undef to trap.
llvm-svn: 102175
2010-04-23 15:23:32 +00:00
Dan Gohman ffc9a6b4ac Add an initial description of a new concept: trap values, and change
the definition of the nsw and nuw flags to make use of it.

nsw was introduced to help optimizers answer yes to the following:

  // Can we change i from i32 to i64 to eliminate the cast inside the loop?
  for (int i = 0; i < n; ++i) A[i] *= 0.1;

  // Can we assume that this loop will eventually terminate?
  for (int i = 0; i <= n; ++i) A[i] *= 0.1;

In its current form, it isn't truly sufficient for either.

In the first case, if the increment overflows, it'll still have some
valid i32 value; sign-extending it will produce a value which is 33
homogeneous sign bits trailed by 31 independent undef bits. If i is
promoted to i64, it won't have those same values when it reaches that
point. (The compiler could recover here by reasoning about how i is
used by the load, but that's a lot more complicated and isn't always
possible.)

In the second case, there is no value for i which will be greater than
n, so having the increment return undef on overflow doesn't help.

Trap values are a formalization of some existing concepts that we have
about LLVM IR, and give the optimizers a better basis for answering yes
to both questions above.

llvm-svn: 102140
2010-04-22 23:14:21 +00:00
Chris Lattner 64694df564 add macruby back
llvm-svn: 102132
2010-04-22 21:34:16 +00:00
Dan Gohman 00365f967b Add a blurb about the new LSR.
llvm-svn: 102126
2010-04-22 20:50:43 +00:00
Nick Lewycky 08a75abd51 The -condprop pass has been deleted.
llvm-svn: 102125
2010-04-22 20:48:34 +00:00
Dan Gohman e6aa943949 The post-RA scheduler is currently off by default on x86.
llvm-svn: 102124
2010-04-22 20:47:28 +00:00
Douglas Gregor c5b5c0591d Add some verbiage about Clang to the 2.7 release notes
llvm-svn: 102121
2010-04-22 20:42:40 +00:00
Jim Grosbach 9628468d94 Add mention of ARM atomic builtin support
llvm-svn: 102103
2010-04-22 18:33:31 +00:00
Jim Grosbach 77f0f5b616 Update ARM frame index scavenging description
llvm-svn: 102101
2010-04-22 18:28:43 +00:00
Chris Lattner 0d34c06cf2 remove dupe
llvm-svn: 102100
2010-04-22 18:26:17 +00:00
Chris Lattner 77a23804b9 reword my incoherent babble into something that makes sense
from Wesley Peck!

llvm-svn: 102096
2010-04-22 17:39:38 +00:00
Chris Lattner ad2804110b two more projects.
llvm-svn: 102095
2010-04-22 17:28:36 +00:00
Chris Lattner cecb923e78 add some notes from Matthieu Moy!
llvm-svn: 102093
2010-04-22 17:25:00 +00:00
Chris Lattner 28175bf916 improve tblgen doc, pointed out by Zhongxing.
llvm-svn: 102072
2010-04-22 16:45:27 +00:00
Wesley Peck 9bc5e8f45e Fixing a typo in the "Clang project" section of the release notes.
llvm-svn: 102064
2010-04-22 14:19:00 +00:00
Wesley Peck cad613decc Small fix to the "Other Improvements and New Features" section of the release notes.
llvm-svn: 102063
2010-04-22 13:53:54 +00:00
Wesley Peck 3edc1684c2 Fixing small typos in the "New Useful APIs" section of the release notes.
llvm-svn: 102062
2010-04-22 13:50:46 +00:00
Wesley Peck 16144fbecd Fixing small typos in the "ARM Target Improvements" section of the release notes.
llvm-svn: 102061
2010-04-22 13:43:14 +00:00
Wesley Peck ba1ad20983 Rewording the "generated debug information" paragraph in the "Interpreter and JIT Improvements" section of the release notes.
llvm-svn: 102060
2010-04-22 13:36:27 +00:00
Wesley Peck c845916929 Reworking the wording of the "target data string" paragraph in the "Optimizer Improvments" section of the release notes.
llvm-svn: 102059
2010-04-22 13:28:34 +00:00
Gabor Greif d80517c061 <pre> seems to close <p>
llvm-svn: 102057
2010-04-22 10:25:23 +00:00
Gabor Greif 27b1663569 the validator coughed up some problems, most of them fixed
llvm-svn: 102056
2010-04-22 10:21:43 +00:00
Gabor Greif 862b35372f shorten link
llvm-svn: 102055
2010-04-22 10:11:24 +00:00
Chris Lattner ee8f1f0998 static analyzer has its own section
llvm-svn: 102054
2010-04-22 06:39:56 +00:00
Chris Lattner 2284b6aed8 add mc and static analyzer blurbs.
llvm-svn: 102053
2010-04-22 06:38:11 +00:00
Chris Lattner a67df2d537 another checkpoint.
llvm-svn: 102052
2010-04-22 06:28:20 +00:00
Chris Lattner 656db16db4 various updates.
llvm-svn: 102051
2010-04-22 05:41:35 +00:00
Duncan Sands fe29117f6c Dragonegg will be released along side llvm-2.7.
llvm-svn: 102001
2010-04-21 13:51:48 +00:00
Chris Lattner a668b45ebd final hacking for tonight, still more to go.
llvm-svn: 101995
2010-04-21 06:42:24 +00:00
Chris Lattner 1dcca8bd5e continue the process of detangling this.
llvm-svn: 101992
2010-04-21 06:23:40 +00:00
Chris Lattner 87e049558e rough pass moving stuff into relevant sections, still much
editing to do.

llvm-svn: 101987
2010-04-21 05:17:40 +00:00
Chris Lattner 52791c2bc9 remove ldc, rubinious, macruby, icedtea, llvm-lua, which
don't have updates for 2.7.

llvm-svn: 101985
2010-04-21 04:28:21 +00:00
Duncan Sands 4dd125e278 I plan to release a version of dragonegg based on llvm-2.7 shortly
after the llvm-2.7 release.

llvm-svn: 101934
2010-04-20 19:40:58 +00:00
Nick Lewycky 04b8eec241 Refresh this documentation. Things have changed a bit in the mean time:
- LLVMgold.so --> libLLVMgold.so
 - the GCC LTO project is no longer 'upcoming'
 - document the plugin support for 'ar' and 'nm'

llvm-svn: 101624
2010-04-17 07:00:24 +00:00
Chris Lattner 434c053439 update docs for api change.
llvm-svn: 101566
2010-04-16 23:07:44 +00:00
Chris Lattner 408f79197c completed my pass over all 6+ months of commits, next step, format and make comprehendable.
llvm-svn: 101449
2010-04-16 06:20:22 +00:00
Duncan Sands 626b02470b Pointed out by housel on #llvm.
llvm-svn: 101395
2010-04-15 20:35:54 +00:00
Chris Lattner 069711865f checkpoint.
llvm-svn: 101118
2010-04-13 06:37:00 +00:00
Bob Wilson 35e856a8ed Fix a grammaro.
llvm-svn: 100877
2010-04-09 18:39:54 +00:00
Chris Lattner 685db9d59e typo
llvm-svn: 100738
2010-04-08 00:54:34 +00:00
Chris Lattner bd4ca62c80 document isvolatile etc.
llvm-svn: 100737
2010-04-08 00:53:57 +00:00
Mon P Wang 508127b5fd Update langref for memcpy, memmove, and memset
llvm-svn: 100611
2010-04-07 06:35:53 +00:00
Chris Lattner 51065568cd Have the inst emitter add the !srcloc mdnode to the machine instr.
Have the asmprinter use the mdnode to scavenge a source location if
present.  Document this nonsense in langref.

llvm-svn: 100607
2010-04-07 05:38:05 +00:00
John Criswell 9003e0f0c7 Adding SAFECode to the list of projects that work with LLVM 2.7.
llvm-svn: 100525
2010-04-06 14:52:14 +00:00
Tanya Lattner e30614cfdd Update to note that clang has a baseline now. Dropping x86-32 for MacOS.
llvm-svn: 100447
2010-04-05 18:35:37 +00:00
Nick Lewycky a3c9f210f4 Add MC and LTO, two terms I just had to explain on IRC.
llvm-svn: 100413
2010-04-05 05:48:47 +00:00
Chris Lattner 904f21700c don't reference DwarfWriter
llvm-svn: 100401
2010-04-05 04:11:11 +00:00
Duncan Sands 92452b9e12 Add notes about dragonegg.
llvm-svn: 100183
2010-04-02 09:23:15 +00:00
Erick Tryzelaar d5499aaf41 There are no known O'Caml problems at the moment.
llvm-svn: 100076
2010-04-01 01:53:24 +00:00
Nick Lewycky a87014f73d Small fixes to this documentation. Remove mention of uint/int type, fix typo
in 'number'.

llvm-svn: 100001
2010-03-31 07:50:17 +00:00
Dan Gohman 39027c403c Fix a grammaro.
llvm-svn: 99917
2010-03-30 20:04:57 +00:00
Chris Lattner bdaa43225f some other notes.
llvm-svn: 99826
2010-03-29 18:42:42 +00:00
Chris Lattner e1c1eda3cd apparently llvm 2.7 now has great armv4 support, from
John Tytgat

llvm-svn: 99825
2010-03-29 18:39:28 +00:00
Chris Lattner ef2e573d28 update the vmkit blurb
llvm-svn: 99824
2010-03-29 18:34:13 +00:00
Chris Lattner b4a02798a7 add tce
llvm-svn: 99820
2010-03-29 17:50:39 +00:00
Chris Lattner 5c2182ef77 remove parallel support.
llvm-svn: 99703
2010-03-27 02:53:27 +00:00
Gabor Greif 108abc6726 fix iterator name
llvm-svn: 99646
2010-03-26 19:59:25 +00:00
Dan Gohman aedde1e4c0 Minor grammar and html fixes.
llvm-svn: 99644
2010-03-26 19:51:14 +00:00
Gabor Greif 853daf4848 some more tweaks
llvm-svn: 99643
2010-03-26 19:40:38 +00:00
Dan Gohman 37027c30ec 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 450dfeba64 fix formatting and a validation fail
llvm-svn: 99640
2010-03-26 19:35:48 +00:00
Gabor Greif 6d6cf8ff00 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
Devang Patel 5bc1c4bd4e Add a paragram describing how to extract line number information.
llvm-svn: 99636
2010-03-26 19:08:36 +00:00
Gabor Greif 66de04936b http://englishplus.com/grammar/00000296.htm
llvm-svn: 99635
2010-03-26 19:04:42 +00:00
Daniel Dunbar eb4bc7ffd3 Sketch a few Clang release notes.
llvm-svn: 99512
2010-03-25 16:09:18 +00:00
Dan Gohman 2a020358dc Docuemntation corrections from John Myers.
llvm-svn: 99454
2010-03-25 00:03:04 +00:00
Erick Tryzelaar 77eede5776 Fix the ocaml kaleidoscope tutorial to fix linking external libraries.
llvm-svn: 99151
2010-03-21 23:15:13 +00:00
Daniel Dunbar fab9b02fc8 Drop KLEE blurb, we don't have anything new.
llvm-svn: 98922
2010-03-19 03:18:05 +00:00
Wesley Peck 3aa84e531e Adding MicroBlaze as an experimental backend in the release notes
llvm-svn: 98824
2010-03-18 14:31:30 +00:00
Chris Lattner 5b59a73dc1 add a couple blurbs back
llvm-svn: 98809
2010-03-18 06:52:15 +00:00
Chris Lattner 9b65c38961 notes from evan
llvm-svn: 98748
2010-03-17 18:15:52 +00:00
Chris Lattner 6aba4862c5 several updates
llvm-svn: 98742
2010-03-17 17:25:49 +00:00
John Criswell 2a4b080c5d Fixed spelling errors.
llvm-svn: 98724
2010-03-17 15:01:50 +00:00
Chris Lattner 6184f4db34 combiner-aa too, what's its status?
llvm-svn: 98715
2010-03-17 06:42:25 +00:00
Chris Lattner 10a3cc46fd more chris scribble.
llvm-svn: 98714
2010-03-17 06:41:58 +00:00
Chris Lattner 0b1c9a52b4 add a bunch of random and unformatted notes as I am reading
through tons of old commits.

llvm-svn: 98709
2010-03-17 04:41:49 +00:00
Chris Lattner c871bac79b add logo, comment out project info, they need to send updates
to get reincluded.

llvm-svn: 98706
2010-03-17 04:02:39 +00:00
Chris Lattner 022a9fb269 various cleanups from daniel
llvm-svn: 98528
2010-03-15 04:12:21 +00:00
Chris Lattner bbd8bd3257 tidy up and expound more on how half-float works.
llvm-svn: 98524
2010-03-14 23:03:31 +00:00
Anton Korobeynikov cd4dd9c1db Document fp16 intrinsics
llvm-svn: 98505
2010-03-14 18:42:47 +00:00
Chris Lattner a179e4d0a8 add support, testcases, and dox for the new GHC calling
convention.  Patch by David Terei!

llvm-svn: 98212
2010-03-11 00:22:57 +00:00
Dan Gohman 16c678c8de Clarify the documentation for MachineFunctionPasses.
llvm-svn: 98119
2010-03-10 01:29:39 +00:00
Devang Patel 59445dbf78 Start using DIFile. See updated SourceLevelDebugging.html for more information.
This patch updates LLVMDebugVersion to 8.
Debug info descriptors encoded using LLVMDebugVersion 7 is supported.

Corresponding llvmgcc and clang FE commits are required.

llvm-svn: 98020
2010-03-09 00:44:10 +00:00
Evan Cheng 5967649780 Add documentation on sibling call optimization. Rename tailcall2.ll test to sibcall.ll.
llvm-svn: 97980
2010-03-08 21:05:02 +00:00
Erick Tryzelaar b8c11eb36b Update the OCaml Kaleidoscope tutorial.
llvm-svn: 97965
2010-03-08 19:32:18 +00:00
Devang Patel 9984bd6092 Add metadata example.
llvm-svn: 97764
2010-03-04 23:44:48 +00:00
Erick Tryzelaar 444c0955af Rewrite makefiles to explicitly reference DESTDIR to fix bug 3153.
We need this so can not bake DESTDIR into the O'Caml symlinks.

llvm-svn: 97743
2010-03-04 20:56:19 +00:00
Chris Lattner 47f2a839ec attributes are not part of types anymore, patch by James Woodyatt!
llvm-svn: 97557
2010-03-02 06:36:51 +00:00
Dan Gohman 6f34abd092 Floating-point add, sub, and mul are now spelled fadd, fsub, and fmul,
respectively.

llvm-svn: 97531
2010-03-02 01:11:08 +00:00
Dan Gohman 6232f73c7b PerformTailCallOpt was renamed to GuaranteedTailCallOpt to
better reflect its meaning, now that tail call optimizations
are done by default in some cases.

llvm-svn: 97530
2010-03-02 01:08:11 +00:00
Chris Lattner 883b868765 note that andersaa was removed in 2.7
llvm-svn: 97484
2010-03-01 19:29:17 +00:00
Chris Lattner 5ea3e65929 remove anders-aa from mainline, it isn't maintained and is
tantalyzing enough that people keep trying to use it.

llvm-svn: 97483
2010-03-01 19:24:17 +00:00
Dan Gohman a269a0a667 Fix spelling.
llvm-svn: 97447
2010-03-01 17:41:39 +00:00
Chris Lattner 5cc165c67c I'm removing andersaa after the branch is made.
llvm-svn: 97409
2010-02-28 18:57:59 +00:00
Dan Gohman 8c5d683aa9 The mayHaveSideEffects flag is no longer used.
llvm-svn: 97348
2010-02-27 23:47:46 +00:00
Jeffrey Yasskin a433ee3302 Test that docs are updating.
llvm-svn: 97279
2010-02-26 22:25:06 +00:00
Tanya Lattner 0569db0699 Test autoupdate.
llvm-svn: 97266
2010-02-26 21:23:59 +00:00
Tanya Lattner 7bb1a6e306 Test auto update.
llvm-svn: 97265
2010-02-26 21:19:09 +00:00
Jeffrey Yasskin db341a5282 Remove REQUIRES_EH from the suggested set of make variables, since users can
build with exceptions even if LLVM is built without.

llvm-svn: 97260
2010-02-26 20:43:33 +00:00
Dan Gohman 42f5691d3c Fix typos in comments.
llvm-svn: 97257
2010-02-26 20:18:32 +00:00
Jeffrey Yasskin f074cb8eea Set svn:keywords property on docs/Packaging.html.
llvm-svn: 97230
2010-02-26 18:07:00 +00:00
Jeffrey Yasskin 56917d1d74 Add to the packaging advice.
llvm-svn: 97229
2010-02-26 18:03:43 +00:00
Dan Gohman 5aa3919218 Fix a typo.
llvm-svn: 97206
2010-02-26 02:15:17 +00:00
Jeffrey Yasskin 28c341c38f Give packagers some advice about how to build LLVM so it's useful to
the most users.

llvm-svn: 97198
2010-02-26 00:54:42 +00:00
Dan Gohman d0c7fd8598 Fix a few more typos.
llvm-svn: 97182
2010-02-25 23:51:27 +00:00
Dan Gohman f804f182d0 Fix a typo.
llvm-svn: 97181
2010-02-25 23:41:41 +00:00
Bill Wendling bc4024f72c Fix HTML.
llvm-svn: 97170
2010-02-25 21:23:24 +00:00
Dan Gohman 048b6485b7 stkrc is gone.
llvm-svn: 97156
2010-02-25 18:18:49 +00:00
Dan Gohman 2c50e05587 Merge the advanced getelementptr FAQ into the regular
getelementptr FAQ.

llvm-svn: 97154
2010-02-25 18:16:03 +00:00
Dan Gohman 1ad1499d14 Fix a typo.
llvm-svn: 97144
2010-02-25 16:51:31 +00:00
Dan Gohman 8848111952 Clarify the description of pointer types, and move the
address space content to its own paragraph.

llvm-svn: 97143
2010-02-25 16:50:07 +00:00
Dan Gohman 91bf1914da Remove this paragraph. Vectors may not always have the same layout as
arrays now.

llvm-svn: 97139
2010-02-25 15:53:42 +00:00
Daniel Dunbar 16a1353031 Add LLVM{CC,CXX} make variables, which specify the configured path the LLVM
capable compilers (which could be llvm-gcc or clang).

llvm-svn: 96935
2010-02-23 10:00:53 +00:00
Daniel Dunbar 6d914f8904 Eliminate llvmgcc_version testing variable.
llvm-svn: 96908
2010-02-23 07:56:28 +00:00
Daniel Dunbar d6a395278b Kill unused llvmgccmajvers testing variable.
llvm-svn: 96906
2010-02-23 07:56:18 +00:00
Dan Gohman 8ad777dc75 Update LangRef to match the code; pointers default to being 64-bit.
llvm-svn: 96873
2010-02-23 02:44:03 +00:00
Dan Gohman 9a36847b43 Clarify that ptrtoint+inttoptr are an alternative to GEP which are
not restricted by the GEP rules.

llvm-svn: 96598
2010-02-18 18:40:29 +00:00
Dan Gohman bffa44f975 Fix a typo.
llvm-svn: 96597
2010-02-18 18:22:41 +00:00
Dan Gohman 91b1289daa Clarify that the rules about object hopping kick in when a pointer is
deferenced, rather than when the pointer value is computed.

llvm-svn: 96596
2010-02-18 18:22:18 +00:00
Dan Gohman d879ce0715 Fix typos Duncan noticed.
llvm-svn: 96594
2010-02-18 18:19:17 +00:00
Duncan Sands 3d928db087 Uniformize the way these options are printed. Requested by
Russell Wallace.

llvm-svn: 96580
2010-02-18 14:37:52 +00:00
Duncan Sands 142b9edaf1 Refer to -help instead of --help since this is what tools themselves say.
Also, have tools output -help-hidden rather than refer to --help-hidden,
for consistency, and likewise adjust documentation.  This doesn't change
every mention of --help, only those which seemed clearly safe.

llvm-svn: 96578
2010-02-18 14:08:13 +00:00
Dan Gohman 33f48ffcf9 Make this an unnumbered list.
llvm-svn: 96528
2010-02-17 22:54:10 +00:00
Dan Gohman fb39487dcc HTML validation fixes.
llvm-svn: 96527
2010-02-17 22:50:12 +00:00
Dan Gohman f51af9d201 Add an "advanced" GetElementPtr FAQ document, with answers to
questions left unanswered by the first GetElementPtr FAQ.

llvm-svn: 96526
2010-02-17 22:47:06 +00:00
Chris Lattner aed2479a45 irbuilder is doing constant folding now by default, PR6092
llvm-svn: 96502
2010-02-17 19:54:34 +00:00
Chris Lattner e0d0948aeb fix some out of date prose dating from the LLVMContext changes.
llvm-svn: 96500
2010-02-17 19:51:31 +00:00
Chris Lattner b5c1174419 add optional debian instructions, PR6272
llvm-svn: 96488
2010-02-17 18:33:13 +00:00
Duncan Sands 80c430af81 Mention an API change.
llvm-svn: 96480
2010-02-17 17:20:17 +00:00
David Greene 9641d06809 Add support for emitting non-temporal stores for DAGs marked
non-temporal.  Fix from r96241 for botched encoding of MOVNTDQ.

Add documentation for !nontemporal metadata.

Add a simpler movnt testcase.

llvm-svn: 96386
2010-02-16 20:50:18 +00:00
Duncan Sands 9dff9bec31 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
Daniel Dunbar 3e255dae88 2.7: Note that DataTypes.h moved.
llvm-svn: 96143
2010-02-14 01:47:19 +00:00
Chris Lattner 392be58cad Add support for a union type in LLVM IR. Patch by Talin!
llvm-svn: 96011
2010-02-12 20:49:41 +00:00
Charles Davis be5557e86b Add a new function attribute, 'alignstack'. It will indicate (when the backends
implement support for it) that the stack should be forcibly realigned in the
prologue (and the process reversed in the epilogue).

llvm-svn: 95945
2010-02-12 00:31:15 +00:00
Anton Korobeynikov 9e8baa5c17 Document binutils requirements for coff targets (cygwin / mingw32).
llvm-svn: 95928
2010-02-11 21:51:51 +00:00
Dan Gohman f34f55b873 llvm-db was removed.
llvm-svn: 95904
2010-02-11 19:35:26 +00:00
Jeffrey Yasskin 8a30324e51 Make Kaleidoscope not link against the interpreter, since that didn't
work anyway (Interpreter::getPointerToFunction doesn't return a
callable pointer), and improve the error message when an
ExecutionEngine can't be created.

llvm-svn: 95896
2010-02-11 19:15:20 +00:00
Jeffrey Yasskin e0913883b7 Make it possible to create multiple JIT instances at the same time, by removing
the global TheJIT and TheJITResolver variables.  Lazy compilation is supported
by a global map from a stub address to the JITResolver that knows how to
compile it.

Patch by Olivier Meurant!

llvm-svn: 95837
2010-02-11 01:07:39 +00:00
Dan Gohman f684e452ca Add support to llvm-extract for extracting multiple functions and/or
multiple global variables at a time.

llvm-svn: 95825
2010-02-10 23:58:53 +00:00
Daniel Dunbar 1e96fca746 Add a ReleaseNotes FIXME.
llvm-svn: 95764
2010-02-10 04:09:52 +00:00
Jeffrey Yasskin 914050bc5a Make --disable-libffi work on systems with libffi installed. Also
make no-ffi the default even on systems with libffi.  This fixes
http://llvm.org/PR5018.

llvm-svn: 95712
2010-02-09 23:03:44 +00:00
Duncan Sands 4583dfc651 Fix some typos.
llvm-svn: 95542
2010-02-08 11:03:31 +00:00
Jakob Stoklund Olesen 74bb06c0f0 Reintroduce the InlineHint function attribute.
This time it's for real! I am going to hook this up in the frontends as well.

The inliner has some experimental heuristics for dealing with the inline hint.
When given a -respect-inlinehint option, functions marked with the inline
keyword are given a threshold just above the default for -O3.

We need some experiments to determine if that is the right thing to do.

llvm-svn: 95466
2010-02-06 01:16:28 +00:00
Jeffrey Yasskin 212badaa60 Make docs less specific about their versions, at Chris's suggestion.
llvm-svn: 95231
2010-02-03 18:49:55 +00:00
Jeffrey Yasskin 696d965708 Mention the version in the documentation index and link to the 2.6 docs, which
is what most readers will actually be aiming for.

llvm-svn: 95229
2010-02-03 18:23:23 +00:00
Dan Gohman b44d2abc91 Add "Author Date Id Revision" svn:keyword properties to these files, as
is done with the other html files in doc, to hopefully keep strings like
"Last modified" current.

llvm-svn: 95225
2010-02-03 17:27:31 +00:00
Chris Lattner 2fdf5b535e Inline addAssemblyEmitter into its one real caller and delete
the -print-emitted-asm option.  The JIT shouldn't have to pull
in the asmprinter.

llvm-svn: 95100
2010-02-02 18:44:12 +00:00
Jeffrey Yasskin 9fb8ce835d Belatedly document r85295 and r85330.
llvm-svn: 94825
2010-01-29 19:10:38 +00:00
Jim Grosbach 54c0530834 Update of 94055 to track the IR level call site information via an intrinsic.
This allows code gen and the exception table writer to cooperate to make sure
landing pads are associated with the correct invoke locations.

llvm-svn: 94726
2010-01-28 01:45:32 +00:00
Jeffrey Yasskin 4a8b1da865 Record the death of ModuleProvier and GhostLinkage in the release notes and
give upgrade instructions.

llvm-svn: 94723
2010-01-28 01:41:20 +00:00
Jeffrey Yasskin 0830b9709d Truncate the release notes so they're ready to accumulate notes for the 2.7 release.
llvm-svn: 94720
2010-01-28 01:14:43 +00:00
Jeffrey Yasskin 091217be6f Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods.  The bindings to
other languages still use the ModuleProvider concept.  It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.

llvm-svn: 94686
2010-01-27 20:34:15 +00:00
Chris Lattner ec039dff43 no need to implement these.
llvm-svn: 94443
2010-01-25 20:37:36 +00:00
Chris Lattner 6a7939243f reduce redundant are's.
llvm-svn: 94008
2010-01-20 17:53:51 +00:00
Chris Lattner 89ea59d87b add a thing to investigate.
llvm-svn: 93659
2010-01-16 21:25:13 +00:00
Chris Lattner c2f8f16162 move "Metadata Nodes and Metadata Strings" section to the right place in the
document and edit it.

llvm-svn: 93559
2010-01-15 21:50:19 +00:00
Eric Christopher 8444d7536c Remove the InlineHint attribute. There are no current or planned
users.

llvm-svn: 93558
2010-01-15 21:36:30 +00:00
Chris Lattner 97257f8e40 mention that unwind isn't to be trusted, patch by Dustin Laurence
llvm-svn: 93518
2010-01-15 18:08:37 +00:00
Victor Hernandez 0b62cc6dc4 Add documentation for llvm.dbg.value intrinsic
llvm-svn: 93203
2010-01-11 22:53:48 +00:00
Devang Patel d1a8969dd2 Add top level section for named metadata.
llvm-svn: 93172
2010-01-11 19:35:55 +00:00
Jeffrey Yasskin f991bbb0c1 Improve unclear bits and inaccuracies in structure and insertvalue
documentation.

Patch by Dustin Laurence!

llvm-svn: 93170
2010-01-11 19:19:26 +00:00
Jeffrey Yasskin 81e7fb15e9 Update the -tailcallopt description to match djg's improvements to the calling
convention. 

llvm-svn: 93167
2010-01-11 18:53:47 +00:00
Chris Lattner 2bfa167d43 add 3 passes which have been added but aren't used afaik.
llvm-svn: 93080
2010-01-09 22:30:40 +00:00
Jeffrey Yasskin b867746a05 Clarify the requirements for a "tail call" to actually be optimized into a
jump.  People clearly weren't finding the extra requirements in
CodeGenerator.html.

llvm-svn: 93070
2010-01-09 19:44:16 +00:00
Chris Lattner 0de4caa57b improve documentation for linkonce to be less confusing.
llvm-svn: 93066
2010-01-09 19:15:14 +00:00
Eric Christopher 3070e16e6f Grammar thinko.
llvm-svn: 93027
2010-01-08 21:42:39 +00:00
Devang Patel e307348325 NamedMDNode is a collection MDNodes.
llvm-svn: 92761
2010-01-05 20:41:31 +00:00
David Greene 297bfe6d71 Add an !eq() operator to TableGen. It operates on strings only.
Use !cast<string>() to compare other types of objects.

llvm-svn: 92754
2010-01-05 19:11:42 +00:00
Dan Gohman 60b0a86a08 Add an entry on SmallBitVector.
llvm-svn: 92747
2010-01-05 18:24:00 +00:00
Mikhail Glushenkov 4429e70623 Regenerate.
llvm-svn: 91999
2009-12-23 12:49:51 +00:00
Eric Christopher 31e39bd3d4 Update docs for bitcode changes. For object size checking we won't
work with partial objects so just count the type as a boolean. Update
appropriately.

llvm-svn: 91954
2009-12-23 00:29:49 +00:00
Jim Grosbach 67584fe874 Add more detail for getting started on Windows.
Patch from jon.forums at gmail.com

llvm-svn: 91603
2009-12-17 17:18:11 +00:00
Mikhail Glushenkov 108b0682e4 Regenerate.
llvm-svn: 91595
2009-12-17 07:49:26 +00:00
Bob Wilson cc70e3b60d Rearrange rules to add missing dependency and allow parallel makes.
llvm-svn: 91352
2009-12-14 22:44:22 +00:00
Anton Korobeynikov d0a0bc34e3 Add note about loadable modules on windows.
Patch by Gregory Petrosyan!

llvm-svn: 90972
2009-12-09 17:26:02 +00:00
Mikhail Glushenkov 0bdfb53080 Regenerate.
llvm-svn: 90776
2009-12-07 18:26:24 +00:00
Eric Christopher 455c5776e2 More updates to objectsize intrinsic docs.
llvm-svn: 90644
2009-12-05 02:46:03 +00:00
Eric Christopher 8aa46bc6fd Update per Bill's comments. Work in progress.
llvm-svn: 90271
2009-12-01 22:28:41 +00:00
Mikhail Glushenkov 3a438a9336 Support -[weak_]framework and -F in llvmc.
llvm-svn: 90210
2009-12-01 05:59:55 +00:00
Oscar Fuentes 5c600b5435 Add two CMake flags LLVM_ENABLE_PEDANTIC and LLVM_ENABLE_WERROR,
PEDANTIC defaults to ON and WERROR default to off.

Also add MSVC warnings. To disable warnings add the flags
LLVM_ENABLE_WARNINGS (default on).

Patch by Tobias Grosser!

llvm-svn: 90188
2009-12-01 02:21:51 +00:00
Bill Wendling 05252355b8 Remove some validation errors.
llvm-svn: 90184
2009-12-01 00:59:58 +00:00
Bill Wendling 991b84e5a7 Some formatting and spelling fixes.
llvm-svn: 90182
2009-12-01 00:53:11 +00:00
Eric Christopher 7348432ade First pass at llvm.objectsize documentation.
llvm-svn: 90116
2009-11-30 08:03:53 +00:00
Nick Lewycky 1c2720320b Remove the 'simple jit' tutorial as it wasn't really being maintained and its
material is covered by the Kaleidoscope tutorial.

llvm-svn: 90111
2009-11-30 04:23:17 +00:00
Duncan Sands 31c0e0ee35 Vector types are no longer required to have a power-of-two length.
llvm-svn: 90004
2009-11-27 13:38:03 +00:00
Duncan Sands ee7425cc56 These code generator limitations have been removed.
llvm-svn: 90003
2009-11-27 12:33:22 +00:00
Devang Patel 4da997b936 Update to reflect recent debugging information encoding changes.
llvm-svn: 89896
2009-11-25 23:28:01 +00:00
Oscar Fuentes 0c2443a28d CMake: generate targets for tools and examples even when
LLVM_BUILD_TOOLS or LLVM_BUILD_EXAMPLES are OFF.

llvm-svn: 89635
2009-11-23 00:21:43 +00:00
Daniel Dunbar 57cb733b46 Allow '_' in FileCheck variable names, it is nice to have at least one
separate character.
 - Chris, OK?

llvm-svn: 89626
2009-11-22 22:07:50 +00:00
Daniel Dunbar 43bff37afb Update doc re: LLVM_BUILD_EXAMPLES.
llvm-svn: 89607
2009-11-22 18:27:51 +00:00
Chris Lattner 88874ec60a Remove the AliasAnalysis::getMustAliases method, which is dead.
The hasNoModRefInfoForCalls isn't worth it as a filter because 
basicaa provides m/r info and everything chains to it, so remove
it.

llvm-svn: 89599
2009-11-22 16:01:44 +00:00
Jay Foad 658af5a9e2 Fix HTML formatting.
llvm-svn: 89093
2009-11-17 13:13:59 +00:00
Daniel Dunbar ad6c15465c lit: Add --repeat=N option, for running each test N times.
- Currently just useful for timing, although it could be extended as one (bad) way to deal with flaky tests.

llvm-svn: 88827
2009-11-15 01:02:09 +00:00
Daniel Dunbar 5a5b223c04 lit: Start documentation testing architecture.
llvm-svn: 86655
2009-11-10 02:41:27 +00:00
Dan Gohman c74bc28297 The inbounds keyword isn't relevant to overindexing of
static array types. Thanks to Duncan for pointing this out!

llvm-svn: 86576
2009-11-09 19:01:53 +00:00
Dan Gohman 66c4d61010 Remove the "special case" for zero-length arrays, and rephrase this
paragraph to be more precise.

llvm-svn: 86572
2009-11-09 18:40:39 +00:00
Chris Lattner a381effe72 add the ability for TargetData to return information about legal integer
datatypes on a given CPU.  This is intended to allow instcombine and other
transformations to avoid converting big sequences of operations to an
inconvenient width, and will help clean up after SRoA.  See also "Adding 
legal integer sizes to TargetData" on Feb 1, 2009 on llvmdev, and PR3451.

Comments welcome.

llvm-svn: 86370
2009-11-07 09:35:34 +00:00
Daniel Dunbar 1891a167a1 lit: Add --param NAME=VALUE option, for test suite specific use (to communicate
arbitrary command line arguments to the test suite).

llvm-svn: 86137
2009-11-05 16:27:33 +00:00
Nick Lewycky b8c923b1a6 The magic for our current brand of .bc files is BC. For older ones it was llvc.
When was it ever "llvm"?

llvm-svn: 86009
2009-11-04 06:15:28 +00:00
Chris Lattner 6e41c79763 fix broken link
llvm-svn: 85951
2009-11-03 21:50:09 +00:00
Bill Wendling 33fef7e4e5 Add missing end-tag.
llvm-svn: 85769
2009-11-02 00:25:26 +00:00
Bill Wendling 7f4a336785 Some formatting changes.
llvm-svn: 85768
2009-11-02 00:24:16 +00:00
Chris Lattner aa99c94e2a Revert 85678/85680. The decision is to stay with the current form of
indirectbr, thus we don't need "blockaddr(@func, null)".  Eliminate it
for simplicity.

llvm-svn: 85699
2009-11-01 01:27:45 +00:00
Chris Lattner b2c0e243c5 Make blockaddress(@func, null) be valid, and make 'deleting a basic
block with a blockaddress still referring to it' replace the invalid 
blockaddress with a new blockaddress(@func, null) instead of a 
inttoptr(1).

This changes the bitcode encoding format, and still needs codegen 
support (this should produce a non-zero value, referring to the entry
block of the function would also be quite reasonable).

llvm-svn: 85678
2009-10-31 20:08:37 +00:00
Dan Gohman 453d64c9f5 Rename usesCustomDAGSchedInserter to usesCustomInserter, and update a
bunch of associated comments, because it doesn't have anything to do
with DAGs or scheduling. This is another step in decoupling MachineInstr
emitting from scheduling.

llvm-svn: 85517
2009-10-29 18:10:34 +00:00
Chris Lattner e9006fe142 greatly improve the LLVM IR bitcode encoding documentation,
patch by Peter Housel!

llvm-svn: 85479
2009-10-29 04:25:46 +00:00
Gabor Greif 03ab4dcff9 use metavariable <result> instead of SSA name %result for consistency
llvm-svn: 85388
2009-10-28 13:14:50 +00:00
Gabor Greif bd0328f668 ooops, SSA name should not be part of the link
llvm-svn: 85387
2009-10-28 13:05:07 +00:00
Gabor Greif f50fd57543 advertise new syntax for unnamed instructions
and eliminate confusing double-use of SSA names
(work in progress)

llvm-svn: 85385
2009-10-28 09:21:30 +00:00
Chris Lattner c750bb62ac doc bug spotted by apinski
llvm-svn: 85372
2009-10-28 04:47:06 +00:00
Chris Lattner d04cb6d0fa rename indbr -> indirectbr to appease the residents of #llvm.
llvm-svn: 85351
2009-10-28 00:19:10 +00:00