Commit Graph

2410 Commits

Author SHA1 Message Date
Chris Lattner
7d07747cab clarify
llvm-svn: 43712
2007-11-05 17:39:26 +00:00
Chris Lattner
addfdfc4c5 fix typo
llvm-svn: 43711
2007-11-05 17:38:34 +00:00
Duncan Sands
da09f937ef Fix some typos.
llvm-svn: 43709
2007-11-05 16:04:58 +00:00
Duncan Sands
994c6b5308 Trivial fixes.
llvm-svn: 43707
2007-11-05 15:15:50 +00:00
Chris Lattner
23308637b8 add a link.
llvm-svn: 43702
2007-11-05 07:02:49 +00:00
Chris Lattner
7ae512c12a finish the tutorial, yaay.
comments and feedback welcome.

llvm-svn: 43701
2007-11-05 07:00:54 +00:00
Gordon Henriksen
314e68f58f Bringing Passes.html up-to-date with the deletion of the
-emitbitcode option and the addition of -preverify.

llvm-svn: 43696
2007-11-05 02:05:35 +00:00
Chris Lattner
26f37925a7 Add the first section of chapter 8.
llvm-svn: 43695
2007-11-05 01:58:13 +00:00
Chris Lattner
6c2e7e090b finish the chapter.
llvm-svn: 43689
2007-11-05 00:23:57 +00:00
Chris Lattner
f7232647bd fix typos
llvm-svn: 43682
2007-11-04 19:42:13 +00:00
Gordon Henriksen
837e89b9b2 Validation fix.
llvm-svn: 43679
2007-11-04 18:17:58 +00:00
Gordon Henriksen
66cada0930 Typo fix.
llvm-svn: 43678
2007-11-04 18:14:08 +00:00
Gordon Henriksen
ab563f2a6f Completing Passes.html with the exception of -emitbitcode, which should be
removed. This document could still stand for significant improvement:

  * Editing the pass descriptions; most were lifted with minimal editing from
    comments. Although implementation details were elided, many of the were not
    written for the audience that would be interested in this document.
  * More "before and after" examples.
  * More implicit dependency details. (Perhaps listing transforms in
    -std-compile-opts order would help alleviate this.)
  * Adding documentation for how to invoke passes programmatically.
  * Rearranging the document into a more logical taxonomy. For instance, putting
    profiling passes together.

llvm-svn: 43677
2007-11-04 18:10:18 +00:00
Gordon Henriksen
e493fdc317 Fix a validation error.
llvm-svn: 43675
2007-11-04 16:17:00 +00:00
Gordon Henriksen
4d157a1bc6 Finishing initial docs for all transformations in Passes.html.
Also cleaned up some comments in source files.

llvm-svn: 43674
2007-11-04 16:15:04 +00:00
Chris Lattner
c289d4b13d finish the 'Memory in LLVM' section
llvm-svn: 43667
2007-11-03 22:22:30 +00:00
Chris Lattner
27b026f8a7 hack and slash the first 20% of chapter seven.
llvm-svn: 43663
2007-11-03 08:55:29 +00:00
Chris Lattner
aa3229f2f1 fix typos
llvm-svn: 43637
2007-11-02 05:54:25 +00:00
Chris Lattner
781dbc1099 Finish chapter 6, and add a spiffy demo that shows off the language.
llvm-svn: 43636
2007-11-02 05:42:52 +00:00
Chris Lattner
a5a3acd512 Add the start of chapter 6, still much to go.
llvm-svn: 43607
2007-11-01 06:49:54 +00:00
Chris Lattner
6e527ae16f add a broken gcc version, thanks to P. Durante for pointing this out.
llvm-svn: 43602
2007-11-01 04:20:16 +00:00
Chris Lattner
4c331443c8 fix validation
llvm-svn: 43549
2007-10-31 07:30:39 +00:00
Chris Lattner
945b810036 okay, fine, make me finish this chapter. :)
Feedback appreciated!

llvm-svn: 43548
2007-10-31 07:29:43 +00:00
Chris Lattner
b2b616f4d5 add the code for expression code that we'll add, though most of the
description is missing.

llvm-svn: 43547
2007-10-31 06:47:39 +00:00
Chris Lattner
e94d86d349 Add the first half of chapter 5: if/then/else.
To come: for statement.

llvm-svn: 43546
2007-10-31 06:30:21 +00:00
Chris Lattner
5082217e07 __main is dead along with llvm-gcc3.
llvm-svn: 43545
2007-10-31 05:53:31 +00:00
Gordon Henriksen
609997aa7d More fleshing out of docs/Passes.html, plus some typo fixes and
improved wording in source files.

llvm-svn: 43377
2007-10-26 03:03:51 +00:00
Chris Lattner
37838ca8a2 typo
llvm-svn: 43351
2007-10-25 18:05:29 +00:00
Chris Lattner
a9a71ab2cf some minor edits, link to Passes.html, make one point
I forgot about yesterday.

llvm-svn: 43350
2007-10-25 17:52:39 +00:00
Gordon Henriksen
24fecb87d5 Fleshing out docs/Passes.html for some analyses.
llvm-svn: 43337
2007-10-25 10:18:27 +00:00
Gordon Henriksen
2fe2889448 Passes.html now 'passes' validation.
llvm-svn: 43335
2007-10-25 08:58:56 +00:00
Gordon Henriksen
f95443425b Bringing Passes.html structurally up-to-date, and enabling
semi-automated maintenance.

llvm-svn: 43334
2007-10-25 08:46:12 +00:00
Owen Anderson
0fbf637a85 Fix an obvious typo.
llvm-svn: 43333
2007-10-25 06:50:30 +00:00
Owen Anderson
df57f1e429 More tutorial cleanups.
llvm-svn: 43332
2007-10-25 06:49:29 +00:00
Owen Anderson
f0de089267 Add proper footers.
llvm-svn: 43331
2007-10-25 06:45:01 +00:00
Owen Anderson
7e56388714 Don't bother providing code samples. Maintaining zip files in the repository is a pain.
llvm-svn: 43330
2007-10-25 06:41:23 +00:00
Chris Lattner
a41ca4295a Add chapter 4, feedback appreciated.
llvm-svn: 43329
2007-10-25 06:23:36 +00:00
Chris Lattner
a27749831b Run the verifier on generated code.
llvm-svn: 43327
2007-10-25 04:30:35 +00:00
Owen Anderson
78e6eb6e2a Update Makefile to use simpler llvm-config parameters.
llvm-svn: 43292
2007-10-24 16:06:42 +00:00
Owen Anderson
634c506ed4 Update Makefile to use simpler llvm-config parameters.
llvm-svn: 43291
2007-10-24 16:04:08 +00:00
Chris Lattner
5147698e3a further simplify run options, thanks to gordonh for pointing this out
llvm-svn: 43288
2007-10-24 05:09:48 +00:00
Chris Lattner
8ed1bd441f Fix instructions now that PR1739 is fixed.
llvm-svn: 43287
2007-10-24 04:37:23 +00:00
Chris Lattner
b2f90b6ae5 Fix validation problems, which were somewhat ironically in the "valid html" button code :)
llvm-svn: 43247
2007-10-23 06:30:50 +00:00
Chris Lattner
42ca549605 add a skeleton for part 4
llvm-svn: 43246
2007-10-23 06:27:55 +00:00
Chris Lattner
3732406cf1 complete the codegen chapter
llvm-svn: 43245
2007-10-23 06:23:57 +00:00
Owen Anderson
1cfa5caa21 Now with valid HTML 4.01!
llvm-svn: 43244
2007-10-23 06:22:21 +00:00
Owen Anderson
3c4fe7bcd5 Add a link to the "writing an optimization" tutorial.
llvm-svn: 43243
2007-10-23 06:17:39 +00:00
Owen Anderson
3923355119 Add downloadable code sample for tutorial 2.
llvm-svn: 43242
2007-10-23 06:05:37 +00:00
Owen Anderson
ba4a0f1787 Add the second of the "basic topics" tutorials.
llvm-svn: 43241
2007-10-23 06:03:24 +00:00
Owen Anderson
19620278d3 Reorder the optimization and bitcode tutorials.
llvm-svn: 43240
2007-10-23 06:02:14 +00:00
Chris Lattner
a734c6eb3f Fix up a broken #include, move code to its own section, add conclusions.
llvm-svn: 43239
2007-10-23 05:43:01 +00:00
Chris Lattner
e4e5ffbe15 Finish up expr codegen.
llvm-svn: 43238
2007-10-23 04:51:30 +00:00
Chris Lattner
0705dd275a several improvements suggested by Dan, thanks!
llvm-svn: 43237
2007-10-23 04:27:44 +00:00
Chris Lattner
ba810365f8 fit in 80 cols :)
llvm-svn: 43222
2007-10-22 16:44:31 +00:00
Chris Lattner
20c58b6f19 start of chapter 3
llvm-svn: 43221
2007-10-22 07:01:42 +00:00
Owen Anderson
4774dea928 Fix a few typos I noticed.
llvm-svn: 43220
2007-10-22 06:48:28 +00:00
Owen Anderson
3b5c6a83a5 Add downloadable code samples.
llvm-svn: 43219
2007-10-22 06:35:07 +00:00
Chris Lattner
18c6e1e961 Check in part 2: parser and ast.
llvm-svn: 43218
2007-10-22 06:34:15 +00:00
Owen Anderson
2c7fdb6067 Fix some code to make it actually work.
llvm-svn: 43217
2007-10-22 06:29:31 +00:00
Bill Wendling
8a53fc3a85 Put correct link in example
llvm-svn: 43216
2007-10-22 05:10:05 +00:00
Chris Lattner
b55013e96a add part 1, review appreciated.
llvm-svn: 43215
2007-10-22 04:32:37 +00:00
Chris Lattner
8d00cf26d5 add an outline for "part 2".
llvm-svn: 43214
2007-10-22 03:19:07 +00:00
Chris Lattner
c126b9badc rename tutorial 1 -> JITTutorial1, make unimplemented links not be dead links.
llvm-svn: 43213
2007-10-22 03:12:24 +00:00
Owen Anderson
980bb805ec Some improvements based on feedback from Anders.
llvm-svn: 43203
2007-10-20 06:12:33 +00:00
Owen Anderson
96b48922ca Fix some weird indenting in code.
llvm-svn: 43202
2007-10-20 05:41:39 +00:00
Owen Anderson
4cefffc26c Use getOrInsertFunction() in tutorial 1. This makes for shorter, simpler, and better example code.
llvm-svn: 43201
2007-10-20 05:40:47 +00:00
Owen Anderson
6cfd06b796 Add the beginnings of an LLVM tutorial. If anyone has suggestions, comments,
or would like to contribute, let me know!

llvm-svn: 43200
2007-10-20 05:23:06 +00:00
Dan Gohman
17e4c10d4f Don't mention -enable-unsafe-fp-math in LangRef.html, as that option is
assumed to globally mutate the spec.

llvm-svn: 43078
2007-10-17 18:05:13 +00:00
Dan Gohman
e5052584b5 Document the -view-sunit-dags option.
llvm-svn: 43015
2007-10-15 21:07:59 +00:00
Dan Gohman
777d33e3b7 Document the new llvm.sin, llvm.cos, and llvm.pow intrinsics. Feedback
is welcome!

llvm-svn: 43007
2007-10-15 20:30:11 +00:00
Gordon Henriksen
f38341e4a6 Fixing a typo. Found by Kevin André!
llvm-svn: 42956
2007-10-14 00:34:53 +00:00
Chris Lattner
a0dc0388eb Various improvements to the documentation, contributed by
Joshua Haberman!

llvm-svn: 42763
2007-10-08 18:42:45 +00:00
Evan Cheng
9eb57bc1d0 LLVM does not use the old style simple isel any more.
llvm-svn: 42758
2007-10-08 17:54:24 +00:00
Chris Lattner
a1c9e02298 Clarify that shifts that are too large are undefined.
llvm-svn: 42588
2007-10-03 21:01:14 +00:00
Chris Lattner
00a19fadfe remove extraneous tag
llvm-svn: 42581
2007-10-03 17:34:29 +00:00
Chris Lattner
fc0f3994a0 remove misleading documentation: LLVM has no atomic support yet.
llvm-svn: 42580
2007-10-03 17:33:51 +00:00
Dale Johannesen
b2923ff810 Document new sqrt and powi handling.
llvm-svn: 42540
2007-10-02 17:47:38 +00:00
Owen Anderson
a3c14fae0a Fix typo.
llvm-svn: 42521
2007-10-02 00:44:20 +00:00
Owen Anderson
d98c62147e Mention memdep in the AA documentation.
llvm-svn: 42519
2007-10-02 00:43:25 +00:00
Chris Lattner
f90b39b186 document DenseSet.
llvm-svn: 42475
2007-09-30 00:58:59 +00:00
Gordon Henriksen
e85fdded75 PR1601: etags not configured correctly
Resolving this by deleting vestigal etags remnants.

llvm-svn: 42460
2007-09-29 00:42:21 +00:00
Tanya Lattner
8ef9b439d8 Update how to release document.
Add release version to getting started guide.

llvm-svn: 42454
2007-09-28 22:50:54 +00:00
Gordon Henriksen
351222b471 GarbageCollection.html is expanded to encompass the coming
capabilities. This is a major rewrite and is easier to read en toto
rather than patchwise.

llvm-svn: 42414
2007-09-27 19:31:36 +00:00
Tanya Lattner
29f209a295 Couple of fixes to mention bunzip2 and make instructions more clear.
llvm-svn: 42407
2007-09-27 18:14:33 +00:00
Bill Wendling
3275ea3f1d No, really, it *is* SSSE3. ;-)
llvm-svn: 42393
2007-09-27 08:47:31 +00:00
Duncan Sands
2d92d29632 SSSE3 -> SSE3. Reported by Alex Kellett.
llvm-svn: 42392
2007-09-27 08:24:36 +00:00
Duncan Sands
75b9aa065f Grammer fix reported by Alex Kellett.
llvm-svn: 42391
2007-09-27 08:24:02 +00:00
Duncan Sands
d8bc485573 X86 -> X86-32 in appropriate places.
llvm-svn: 42357
2007-09-26 16:24:52 +00:00
Duncan Sands
276bb314b9 Various cleanups. Especially, EH is turned on by default!
llvm-svn: 42356
2007-09-26 15:59:54 +00:00
Chris Lattner
a7e838ced3 ok ok we get it. CBE and vectors don't like each other yet.
llvm-svn: 42355
2007-09-26 15:50:21 +00:00
Chris Lattner
f5878ad5db be less redundantly redundant.
llvm-svn: 42354
2007-09-26 15:48:33 +00:00
Chris Lattner
4855af9f8d make old crappy browsers produce less crappy output :)
llvm-svn: 42349
2007-09-26 06:38:59 +00:00
Chris Lattner
5dad95ffa6 we support attribute(noinline) now :)
llvm-svn: 42343
2007-09-26 06:04:15 +00:00
Chris Lattner
a6e6dfd44b update bugs list
llvm-svn: 42342
2007-09-26 06:01:35 +00:00
Chris Lattner
c450aee3f6 now with more prose.
llvm-svn: 42341
2007-09-26 05:44:21 +00:00
Chris Lattner
1fc2bda34a explain why not vector<bool>
llvm-svn: 42324
2007-09-25 22:37:50 +00:00
Bill Wendling
6218e30b30 Grammar fix.
llvm-svn: 42318
2007-09-25 20:45:10 +00:00
Owen Anderson
87f3667bcf Fill in the sections about my contributions.
llvm-svn: 42286
2007-09-25 02:10:58 +00:00
Daniel Berlin
2b33136f50 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
cdb6479d76 fix syntax
llvm-svn: 42242
2007-09-22 23:41:15 +00:00
Bill Wendling
4fa9da181f Validation fixes
llvm-svn: 42232
2007-09-22 10:17:08 +00:00
Bill Wendling
5adc5f30e2 Validation fixes
llvm-svn: 42231
2007-09-22 10:13:39 +00:00
Bill Wendling
9525059d66 Validation fixes
llvm-svn: 42230
2007-09-22 10:07:00 +00:00
Bill Wendling
901656a25c Validation fixes
llvm-svn: 42229
2007-09-22 10:03:25 +00:00
Bill Wendling
830d941202 Validation fixes
llvm-svn: 42228
2007-09-22 09:56:28 +00:00
Bill Wendling
ca83498390 Validation fixes
llvm-svn: 42227
2007-09-22 09:54:47 +00:00
Bill Wendling
00305afb0b Validation fixes
llvm-svn: 42226
2007-09-22 09:39:19 +00:00
Bill Wendling
135ef8e763 Validation fixes
llvm-svn: 42225
2007-09-22 09:23:55 +00:00
Bill Wendling
d240a9afcc Validation fixes
llvm-svn: 42224
2007-09-22 09:20:07 +00:00
Bill Wendling
0929451a0f Formatting changes.
llvm-svn: 42223
2007-09-22 09:16:44 +00:00
Chris Lattner
ec22695366 fix bugs in the manual
llvm-svn: 42221
2007-09-22 03:17:52 +00:00
Tanya Lattner
376d3091d9 Correct names.
llvm-svn: 42219
2007-09-22 00:03:01 +00:00
Tanya Lattner
bc74d75cbd Fix typo.
llvm-svn: 42217
2007-09-22 00:01:26 +00:00
Tanya Lattner
f413c665d6 One last fix to get name correct.
llvm-svn: 42216
2007-09-21 23:57:59 +00:00
Tanya Lattner
80f02ffa9f Fix silly typo.
llvm-svn: 42215
2007-09-21 23:57:04 +00:00
Tanya Lattner
7d68980d81 Update annotation intrinsic with more details.
llvm-svn: 42214
2007-09-21 23:56:27 +00:00
Tanya Lattner
e8c1cb789d Adding support for __builtin_annotation with an intrinsic called llvm.annotation. This is similar to llvm.var.annotation but is applied to expressions.
llvm-svn: 42211
2007-09-21 22:59:12 +00:00
Devang Patel
505fcba791 Add missing entry.
llvm-svn: 42202
2007-09-21 18:02:24 +00:00
Chris Lattner
727760f737 I cannot spell coalesce :)
llvm-svn: 42196
2007-09-21 17:43:52 +00:00
Chris Lattner
cd2ae40679 gcroot must take concrete types, not arbitrary types.
clean up intrinsic descriptions in langref a bit.

llvm-svn: 42194
2007-09-21 17:30:40 +00:00
Chris Lattner
c0906967aa Initial hack at 2.1 release notes.
llvm-svn: 42186
2007-09-21 03:54:09 +00:00
Chris Lattner
cc315726f7 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
Chris Lattner
d58e0026ec Change llvm.gcroot to not init the root to null at runtime, this prevents
using it for live-in values etc.

llvm-svn: 41879
2007-09-12 17:53:10 +00:00
Duncan Sands
c358890f73 Fold the adjust_trampoline intrinsic into
init_trampoline.  There is now only one
trampoline intrinsic.

llvm-svn: 41841
2007-09-11 14:10:23 +00:00
Nick Lewycky
7a9495d5e6 Fix description of the call instruction. There are two types, with one being
optional.

llvm-svn: 41785
2007-09-08 13:57:50 +00:00
Anton Korobeynikov
899c0c9c8d Split eh.select / eh.typeid.for intrinsics into i32/i64 versions. This is needed, because they just "mark" register
liveins and we let frontend solve type issue, not lowering code :)

llvm-svn: 41763
2007-09-07 11:39:35 +00:00
Duncan Sands
883740b39f There is an impedance matching problem between LLVM and
gcc exception handling: if an exception unwinds through
an invoke, then execution must branch to the invoke's
unwind target.  We previously tried to enforce this by
appending a cleanup action to every selector, however
this does not always work correctly due to an optimization
in the C++ unwinding runtime: if only cleanups would be
run while unwinding an exception, then the program just
terminates without actually executing the cleanups, as
invoke semantics would require.  I was hoping this
wouldn't be a problem, but in fact it turns out to be the
cause of all the remaining failures in the LLVM testsuite
(these also fail with -enable-correct-eh-support, so turning
on -enable-eh didn't make things worse!).  Instead we need
to append a full-blown catch-all to the end of each
selector.  The correct way of doing this depends on the
personality function, i.e. it is language dependent, so
can only be done by gcc.  Thus this patch which generalizes
the eh.selector intrinsic so that it can handle all possible
kinds of action table entries (before it didn't accomodate
cleanups): now 0 indicates a cleanup, and filters have to be
specified using the number of type infos plus one rather than
the number of type infos.  Related gcc patches will cause
Ada to pass a cleanup (0) to force the selector to always
fire, while C++ will use a C++ catch-all (null).

llvm-svn: 41484
2007-08-27 15:47:50 +00:00
Tanya Lattner
fdf3a750f7 Rename llvm-gcc4 to llvm-gcc.
llvm-svn: 41380
2007-08-24 23:23:23 +00:00
Duncan Sands
b31856afd4 Implement review feedback on trampoline documentation.
llvm-svn: 41304
2007-08-22 23:39:54 +00:00
Reid Spencer
935996673b Who thought up this crazy formatting scheme?
llvm-svn: 40905
2007-08-07 17:57:36 +00:00
Reid Spencer
e4969b8dd8 Okay, over/back tags don't next.
llvm-svn: 40904
2007-08-07 17:48:56 +00:00
Reid Spencer
e0c4eabdb4 Try an indent level for better formatting.
Add the -version option.

llvm-svn: 40902
2007-08-07 17:43:48 +00:00
Reid Spencer
a24e48a333 Add the code generation options.
llvm-svn: 40900
2007-08-07 17:12:43 +00:00
Reid Spencer
90d744fa3c Rearrange options into sections and add the last floating point related option.
llvm-svn: 40895
2007-08-07 16:29:57 +00:00
Reid Spencer
5782b7cd9b Add the -disable-excess-fp-precision option.
llvm-svn: 40894
2007-08-07 16:23:42 +00:00
Reid Spencer
7c05e078c6 Add another missing option.
llvm-svn: 40893
2007-08-07 16:21:52 +00:00
Reid Spencer
24f5859477 Add some more missing options.
llvm-svn: 40892
2007-08-07 16:11:57 +00:00
Reid Spencer
840ae20dd9 Remove the -f option which is no longer supported, but add the -fake-argv0
option which is similar.

llvm-svn: 40891
2007-08-07 15:48:16 +00:00
Reid Spencer
c6ed1c46f4 Describe the global/local naming convention.
llvm-svn: 40890
2007-08-07 14:34:28 +00:00
Reid Spencer
345f5f8e68 Update links to the command guide generated documentation.
llvm-svn: 40855
2007-08-05 23:43:44 +00:00
Reid Spencer
b462559fe6 Comment out configuration tags not supported by doxygen 1.3.9
llvm-svn: 40853
2007-08-05 19:51:03 +00:00
Chandler Carruth
00e56b0e81 This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.

llvm-svn: 40807
2007-08-04 01:51:18 +00:00
Reid Spencer
4d35935f55 fp2uint -> fptoui
llvm-svn: 40633
2007-07-31 14:40:14 +00:00
Duncan Sands
79f8131398 Forget to add 'nest' to the list of parameter
attributes.

llvm-svn: 40565
2007-07-27 19:57:41 +00:00
Duncan Sands
e8bb2c6d32 Support for trampolines, except for X86 codegen which is
still under discussion.

llvm-svn: 40549
2007-07-27 12:58:54 +00:00
Devang Patel
4305bae78d Fix example code.
llvm-svn: 40493
2007-07-25 21:05:39 +00:00
Chris Lattner
95a78a7963 test commit
llvm-svn: 40484
2007-07-25 06:15:23 +00:00
Bill Wendling
10234b995b Fix some validation errors.
llvm-svn: 40417
2007-07-23 04:44:02 +00:00
Bill Wendling
e87712fdfd Converted to "svn" and reformatted.
llvm-svn: 40416
2007-07-23 04:41:42 +00:00
Bill Wendling
b39f31e7c8 Small change.
llvm-svn: 40413
2007-07-23 03:56:42 +00:00