Commit Graph

4467 Commits

Author SHA1 Message Date
Eli Friedman 35b54aa148 Commit LangRef changes for LLVM concurrency model. Start of supporting C++0x memory model and atomics. See thread on llvmdev titled "Reviving the new LLVM concurrency model".
llvm-svn: 135624
2011-07-20 21:35:53 +00:00
Bob Wilson 088df09f27 Revert "Update docs to reflect r135457."
This reverts commit ba034c0a2e71303c7cf3f43ca8e69dc8436b32e2.

llvm-svn: 135485
2011-07-19 16:31:58 +00:00
Jay Foad b992a635fb Convert SimplifyGEPInst to use ArrayRef.
llvm-svn: 135482
2011-07-19 15:07:52 +00:00
Jay Foad 528bedaf5d Convert gep_type_begin and gep_type_end to use ArrayRef.
llvm-svn: 135481
2011-07-19 14:42:50 +00:00
Jay Foad bf904773bb Convert TargetData::getIndexedOffset to use ArrayRef.
llvm-svn: 135478
2011-07-19 14:01:37 +00:00
Jay Foad f4b14a2b0d Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall.
llvm-svn: 135477
2011-07-19 13:32:40 +00:00
Devang Patel 7ca23dde4e Update docs to reflect r135457.
llvm-svn: 135458
2011-07-19 01:04:39 +00:00
Jeffrey Yasskin 532114e8a4 Document how to maintain a git-svn clone of the LLVM git repositories.
llvm-svn: 135453
2011-07-19 00:20:54 +00:00
Chris Lattner 14b3b4df6f document this api change.
llvm-svn: 135376
2011-07-18 04:56:02 +00:00
Chris Lattner a8680dced2 introduce a new TinyPtrVector class.
llvm-svn: 135365
2011-07-18 01:40:02 +00:00
Eli Friedman 063fd270ed A couple of minor fixes to the OCaml tutorial. PR10025 and PR10316. Patches by Damien Schoof!
llvm-svn: 135293
2011-07-15 20:03:30 +00:00
Jay Foad 5bd375a6cc Convert CallInst and InvokeInst APIs to use ArrayRef.
llvm-svn: 135265
2011-07-15 08:37:34 +00:00
Jay Foad e03f15ad2b Mention all API changes I've made since 2.9 was branched.
llvm-svn: 135142
2011-07-14 09:19:05 +00:00
Tobias Grosser 585b36a1cb VectorType is also a SequentialType
llvm-svn: 134979
2011-07-12 11:37:02 +00:00
Chris Lattner b1ed91f397 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
Cameron Zwarich a32fd210c1 Use add instead of accumulate.
llvm-svn: 134752
2011-07-08 22:13:55 +00:00
Cameron Zwarich f03fa189ca Add an intrinsic and codegen support for fused multiply-accumulate. The intent
is to use this for architectures that have a native FMA instruction.

llvm-svn: 134742
2011-07-08 21:39:21 +00:00
Jakub Staszak dce4dffc84 Add documenation about "branch_weight" metadata and __builtin_expect instruction
llvm-svn: 134517
2011-07-06 18:31:02 +00:00
Owen Anderson 2f37bdc392 Generalize @llvm.ctlz, @llvm.cttz, and @llvm.ctpop to work on vectors of integers, and fix the one optimization pass that I'm aware of that needs updating for this. At least one current target, ARM NEON, can implement these operations on vectors directly.
llvm-svn: 134265
2011-07-01 21:52:38 +00:00
Duncan Sands 23fb54ed15 The enum was moved to ISDOpcodes.h.
llvm-svn: 134134
2011-06-30 06:37:07 +00:00
Evan Cheng 0ac49c6eab Add missing operand. rdar://9694169
llvm-svn: 134078
2011-06-29 17:14:00 +00:00
Dan Gohman 8bd11f1834 Document nonlazybind.
llvm-svn: 133160
2011-06-16 16:03:13 +00:00
Jakob Stoklund Olesen 99f35eab45 Use set operations instead of plain lists to enumerate register classes.
This simplifies many of the target description files since it is common
for register classes to be related or contain sequences of numbered
registers.

I have verified that this doesn't change the files generated by TableGen
for ARM and X86. It alters the allocation order of MBlaze GPR and Mips
FGR32 registers, but I believe the change is benign.

llvm-svn: 133105
2011-06-15 23:28:14 +00:00
Argyrios Kyrtzidis 0c5c1cb1b0 Document ADT/PackedVector.h in "Programmer's Manual" doc.
llvm-svn: 133077
2011-06-15 19:56:01 +00:00
Bruno Cardoso Lopes dc9ff3a4b1 Add one more argument to the prefetch intrinsic to indicate whether it's a data
or instruction cache access. Update the targets to match it and also teach
autoupgrade.

llvm-svn: 132976
2011-06-14 04:58:37 +00:00
Chris Lattner ed58a95c33 mention graph vis isn't available in Release builds.
llvm-svn: 132916
2011-06-13 15:59:35 +00:00
Chad Rosier ab5ac96364 Typo.
llvm-svn: 132730
2011-06-07 20:03:13 +00:00
Andrew Trick c71224e29f Corrections and additional information for "Creating and LLVM Project"
documentation. This should now reflect the current state of LLVM Makefiles.

llvm-svn: 132527
2011-06-03 02:20:48 +00:00
Andrew Trick 621129f07a whitespace
llvm-svn: 132526
2011-06-03 02:16:53 +00:00
Devang Patel 1d81ea81cd Fix html formatting.
llvm-svn: 132345
2011-05-31 18:06:14 +00:00
Devang Patel 5c26a85d1d Clarify documentation and remove guarantees that are not fulfilled.
llvm-svn: 132344
2011-05-31 17:45:27 +00:00
Chris Lattner 0ec0649bc2 replace the intro tutorial from 2004 with a more recent work.
llvm-svn: 132310
2011-05-30 03:36:58 +00:00
John McCall 046c47e970 Implement and document the llvm.eh.resume intrinsic, which is
transformed by the inliner into a branch to the enclosing landing pad
(when inlined through an invoke).  If not so optimized, it is lowered
DWARF EH preparation into a call to _Unwind_Resume (or _Unwind_SjLj_Resume
as appropriate).  Its chief advantage is that it takes both the
exception value and the selector value as arguments, meaning that there
is zero effort in recovering these;  however, the frontend is required
to pass these down, which is not actually particularly difficult.

Also document the behavior of landing pads a bit better, and make it
clearer that it's okay that personality functions don't always land at
landing pads.  This is just a fact of life.  Don't write optimizations that
rely on pushing things over an unwind edge.

llvm-svn: 132253
2011-05-28 07:45:59 +00:00
Chad Rosier 06da55e7d0 Clean out the 2.9 Release Notes. Mostly limited to What's New in LLVM
and enhancements in sub-project status updates.

llvm-svn: 132227
2011-05-27 22:50:46 +00:00
Chad Rosier d1db4f8b9b Add change of crc32 intrinsic to release notes
llvm-svn: 132212
2011-05-27 20:13:10 +00:00
Dan Gohman e635c529a0 Fix copy+pastos.
llvm-svn: 132168
2011-05-27 00:36:31 +00:00
Dan Gohman 4a70bfe3c0 Update documentation: -basicaa does chaining these days.
llvm-svn: 132010
2011-05-24 22:01:32 +00:00
Dan Gohman 911fa9084c Document llvm.exp and llvm.pow.
llvm-svn: 131921
2011-05-23 21:13:03 +00:00
Chris Lattner f98eadee17 document thiscall, PR9101
llvm-svn: 131873
2011-05-22 22:28:47 +00:00
Chris Lattner c2e8540216 insertvalue takes a variable number of arguments, document this, fixing PR9935.
llvm-svn: 131850
2011-05-22 07:18:08 +00:00
Chad Rosier 38fb5bbacc Correct typos in TestingGuide.html
llvm-svn: 131546
2011-05-18 18:07:16 +00:00
Nick Lewycky 9c876bf937 Fix errors in this llvm ir example.
llvm-svn: 131416
2011-05-16 19:29:30 +00:00
Akira Hatanaka cbb7fa68ed 1. Keep lines in 80 columns.
2. Remove unused function.
3. Correct indentation.

llvm-svn: 131028
2011-05-06 22:11:29 +00:00
Bill Wendling 260c4a9466 Document the automatic alias printing of InstAliases.
llvm-svn: 130889
2011-05-04 23:40:14 +00:00
Devang Patel 09fa69e151 Use llvm.dbg.cu named metadata to collect compile units.
llvm-svn: 130756
2011-05-03 16:18:28 +00:00
Oscar Fuentes 3cbc9bece8 Update instructions: LLVM.cmake is now LLVMConfig.cmake
llvm-svn: 130631
2011-05-01 02:12:20 +00:00
NAKAMURA Takumi 2277ab2ae6 docs/doxygen.css: Tweak padding on memdoc.
llvm-svn: 130493
2011-04-29 09:59:12 +00:00
NAKAMURA Takumi 8513d4236c docs/doxygen.css: Tweak style for readability.
A few styles are brought from http://llvm.org/test-doxygen/api/api.css

llvm-svn: 130333
2011-04-27 21:53:35 +00:00
Mikhail Glushenkov 06655d4a61 Regenerate.
llvm-svn: 130091
2011-04-24 14:17:37 +00:00
Andrew Trick 3260c9df4e Comment edit.
llvm-svn: 130047
2011-04-23 03:27:19 +00:00
NAKAMURA Takumi aa3d6242cf 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
Devang Patel 1d6bbd41aa Let front-end tie subprogram declaration with subprogram definition directly.
llvm-svn: 130028
2011-04-22 23:10:17 +00:00
NAKAMURA Takumi 3ad2828811 docs/llvm.css: Introduce cascading style <div> and <p> continued on <h[2-5]>. For now, it is applied in AliasAnalysis.html and ReleaseNotes.html.
<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>

llvm-svn: 129901
2011-04-21 01:52:00 +00:00
NAKAMURA Takumi 590ba6195b docs/Passes.html: Fix a garbage.
llvm-svn: 129900
2011-04-21 01:32:19 +00:00
NAKAMURA Takumi fc8d930f6e 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 6483513a6d 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
Devang Patel 514b4006c2 Introduce support to encode Objective-C property information in debugging information generated for an interface.
llvm-svn: 129624
2011-04-16 00:11:51 +00:00
Douglas Gregor b92fbb7036 Fix some broken links, from Matthieu Monrocq
llvm-svn: 129609
2011-04-15 21:21:31 +00:00
Chris Lattner 0ab5e2cded Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!

llvm-svn: 129558
2011-04-15 05:18:47 +00:00
Andrew Trick d175c98d41 Documented bugpoint --compile-custom --compile-command.
I've used it a few times to reduce unit tests and gotten one request for information on it. It's not easy to use correctly because bugpoint doesn't tell you when you're doing it wrong.

llvm-svn: 129507
2011-04-14 05:05:36 +00:00
Jay Foad fdb9f6a3ca Fix typo.
llvm-svn: 129437
2011-04-13 13:03:56 +00:00
Dan Gohman c8454ee995 Fix a hole in the definition of "dependence" used by trap values. Trap
values are also transmitted through branches which cause side effects to
be skipped altogether.

llvm-svn: 129404
2011-04-12 23:05:59 +00:00
Oscar Fuentes 23fe31cc8d Document how to build a LLVM pass with CMake out of source.
Patch by arrowdodger!

llvm-svn: 129381
2011-04-12 19:40:35 +00:00
NAKAMURA Takumi 62920834fa docs/CommandGuide/index.html: Fix CSS url to relative.
llvm-svn: 129268
2011-04-11 03:27:38 +00:00
NAKAMURA Takumi 2a7024fa6c docs/CommandLine.html: &quot;ize.
llvm-svn: 129267
2011-04-11 03:27:31 +00:00
Oscar Fuentes dbe99ba37d CMake: support for using LLVM from client projects with find_package.
Patch by arrowdodger!

llvm-svn: 129247
2011-04-10 16:17:49 +00:00
Oscar Fuentes fe40844fb6 Reword instructions for running tests on Visual Studio.
Suggested by Maël Hörz.

llvm-svn: 129237
2011-04-10 01:41:55 +00:00
NAKAMURA Takumi 6bd36d56e4 docs/*.html: Make W3C HTML 4.01 Strict more compliant.
FIXME: The logo handling in ReleaseNotes.html
llvm-svn: 129208
2011-04-09 09:51:57 +00:00
NAKAMURA Takumi e8a8fd658f docs/tutorial/OCamlLangImpl7.html: Fix a href to missing Chapter 8.
llvm-svn: 129183
2011-04-09 02:14:41 +00:00
NAKAMURA Takumi b10df26061 docs: Fix some in-package URLs.
(eg. trim http://llvm.org/docs/foo -> foo)

llvm-svn: 129182
2011-04-09 02:13:48 +00:00
NAKAMURA Takumi ca46f5a3b5 docs: Canonicalize URLs.
llvm-svn: 129181
2011-04-09 02:13:37 +00:00
Devang Patel 778947c203 Simplify array bound checks and clarify comments. One element array can have same non-zero number as lower bound as well as upper bound.
llvm-svn: 129170
2011-04-08 23:39:38 +00:00
Devang Patel e39647951b Do not emit DW_AT_upper_bound and DW_AT_lower_bound for unbouded array.
If lower bound is more then upper bound then consider it is an unbounded array.
An array is unbounded if non-zero lower bound is same as upper bound.
If lower bound and upper bound are zero than array has one element.

llvm-svn: 129156
2011-04-08 21:55:10 +00:00
Bill Wendling c5d44ae3f4 Missing closed tag.
llvm-svn: 129155
2011-04-08 21:43:08 +00:00
Bruno Cardoso Lopes a21d470870 Also add the late notes for Mips in the current release note
llvm-svn: 129122
2011-04-08 03:06:22 +00:00
Jay Foad 65bef04ea7 Fix a bit of nonsense.
llvm-svn: 129073
2011-04-07 12:41:09 +00:00
Chris Lattner 5ddaab1789 add faust too
llvm-svn: 129053
2011-04-07 03:09:21 +00:00
Chris Lattner caefe9346d add a few late stragglers.
llvm-svn: 129052
2011-04-07 03:08:22 +00:00
Roman Divacky 620f6967e0 Fix a typo.
llvm-svn: 129019
2011-04-06 19:12:21 +00:00
Chris Lattner 958d299fca add rubinius
llvm-svn: 129006
2011-04-06 16:14:25 +00:00
Duncan Sands ce5d9aedb9 Fix some typos. Minor tweaks to how some things were expressed.
llvm-svn: 128997
2011-04-06 08:07:40 +00:00
Jay Foad 1a7cc44157 Trivial typo fixes.
llvm-svn: 128996
2011-04-06 07:55:30 +00:00
Chris Lattner 17c170a8e0 Finish up the first draft of the release notes.
improvements are welcome, please commit any changes directly to SVN.

llvm-svn: 128992
2011-04-06 06:29:50 +00:00
Chris Lattner 23e16b59d2 continue writing.
llvm-svn: 128990
2011-04-06 05:50:04 +00:00
Chris Lattner ae6a89a890 add the external users that emailed me.
llvm-svn: 128974
2011-04-06 01:13:49 +00:00
Chris Lattner 14a3333cb3 some libc++ notes.
llvm-svn: 128970
2011-04-06 00:59:18 +00:00
Chris Lattner 9d5b3712de some edits.
llvm-svn: 128969
2011-04-06 00:56:12 +00:00
Chris Lattner c3a2c9817c distribute content out to the appropriate sections
llvm-svn: 128968
2011-04-06 00:45:11 +00:00
Chris Lattner ce6b047a10 finished my pass through all the 2.9 commits, now to make this intelligible
llvm-svn: 128955
2011-04-05 23:22:33 +00:00
Chris Lattner a76507fdc3 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
Devang Patel 9f738849ab Add support to encode function's template parameters.
llvm-svn: 128947
2011-04-05 22:52:06 +00:00
NAKAMURA Takumi 530d739097 docs/ReleaseNotes.html: Please use proper *Heading* elements instead of classified div.
It would be better to browse without stylesheet. (eg. on ViewVC)

llvm-svn: 128942
2011-04-05 21:55:14 +00:00
Chris Lattner 706754c1f2 remove graphprinter support for domfrontier.
llvm-svn: 128938
2011-04-05 21:43:56 +00:00
Chris Lattner 269ef9f6f0 only 7 more weeks to go.
llvm-svn: 128933
2011-04-05 21:37:08 +00:00
Jakob Stoklund Olesen 04123d40cd Document llvm/ADT/IntEqClasses.h in ProgrammersManual.html
llvm-svn: 128927
2011-04-05 20:56:08 +00:00
Chris Lattner 9ee0b01617 more notes to self.
llvm-svn: 128902
2011-04-05 18:38:45 +00:00
NAKAMURA Takumi 8d89b8e684 docs/ReleaseNotes.html: Add a few notes to MCCOFF and x64. FIXME: fixme!
llvm-svn: 128882
2011-04-05 08:24:22 +00:00
NAKAMURA Takumi f8e44c35eb docs/GettingStarted.html: FIXME: dg, lit, and source tree layout.
llvm-svn: 128881
2011-04-05 08:24:15 +00:00
Chris Lattner fd97b88b2f add a bunch of notes to myself, this is not intended to be gramatic or
make sense to anyone else.

llvm-svn: 128879
2011-04-05 07:19:28 +00:00
Bill Wendling db62424c3d Add info on where to get 2.9 final svn sources.
llvm-svn: 128860
2011-04-04 23:42:51 +00:00
Duncan Sands 1cd7898dc1 Dragonegg release notes.
llvm-svn: 128812
2011-04-04 11:09:08 +00:00
Nick Lewycky 9feca67182 Pick better examples. "fpext float 3.1415 to double" won't parse because 3.1415
isn't an exact float. Also "fpext float 1.0 to float" is invalid IR because
it's not performing an extension.

llvm-svn: 128647
2011-03-31 18:20:19 +00:00
Jay Foad 52131344a2 Remove PHINode::reserveOperandSpace(). Instead, add a parameter to
PHINode::Create() giving the (known or expected) number of operands.

llvm-svn: 128537
2011-03-30 11:28:46 +00:00
Devang Patel 1c6b681413 Document llvm.dbg.sp, llvm.dbg.gv and llvm.dbg.enum
llvm-svn: 128466
2011-03-29 17:27:08 +00:00
NAKAMURA Takumi 10b96cb34b docs/GettingStarted.html: [PR8850] Add a note for x86_64-w64-mingw32.
llvm-svn: 128404
2011-03-28 06:27:12 +00:00
NAKAMURA Takumi 05c00021da docs/GettingStarted.html: Add blurb "--enable-shared" on cygming.
llvm-svn: 128403
2011-03-28 06:27:06 +00:00
Bill Wendling ce2fccffc2 Remove redundant compression option.
llvm-svn: 128267
2011-03-25 06:43:59 +00:00
Chris Lattner 669ce55a42 fix description, PR9542
llvm-svn: 128214
2011-03-24 16:13:31 +00:00
Eli Friedman ecdb00e60d Update Passes.html, part 3: alphabetize descriptions.
llvm-svn: 127948
2011-03-19 05:02:14 +00:00
Eli Friedman e04761cbcd Update Passes.html, part 2: cleanup a bit more dead docs, a few more
description updates.

llvm-svn: 127947
2011-03-19 04:55:29 +00:00
Eli Friedman e513e87201 Update Passes.html, part 1: remove passes which were removed from the tree,
update short descriptions to match those from the options, alphabetize table
of contents.

llvm-svn: 127946
2011-03-19 04:47:52 +00:00
Rafael Espindola 01fb4b018e Some release notes.
llvm-svn: 127867
2011-03-18 04:07:44 +00:00
Cameron Zwarich 341c36dc8b Change the signext language in LangRef to closer match zeroext.
llvm-svn: 127808
2011-03-17 14:21:58 +00:00
Cameron Zwarich ac106273d4 The x86-64 ABI says that a bool is only guaranteed to be sign-extended to a byte
rather than an int. Thankfully, this only causes LLVM to miss optimizations, not
generate incorrect code.

This just fixes the zext at the return. We still insert an i32 ZextAssert when
reading a function's arguments, but it is followed by a truncate and another i8
ZextAssert so it is not optimized.

llvm-svn: 127766
2011-03-16 22:20:18 +00:00
Chris Lattner 0d364306be rip out llvm 2.8 release notes to make room for llvm 2.9 notes.
llvm-svn: 127399
2011-03-10 07:43:44 +00:00
Devang Patel e1aa67cff5 Since last couple of days, argument number is encoded using 8 bits from line number field in argument's debug info.
llvm-svn: 127250
2011-03-08 16:29:40 +00:00
Devang Patel fb30b85e7c Update DILexicalBlock doc to mention new fields.
llvm-svn: 127249
2011-03-08 16:25:29 +00:00
Duncan Sands 2769c6e0dc Clarify that the result of an srem is only guaranteed to have the same sign as the
left-hand-side if the result is non-zero.

llvm-svn: 127156
2011-03-07 09:12:24 +00:00
Bill Wendling 4785885feb Fix tagging name.
llvm-svn: 127154
2011-03-07 07:37:12 +00:00
Chris Lattner cf0eebc6c9 remove another jeff link
llvm-svn: 127135
2011-03-06 23:00:33 +00:00
Chris Lattner 35d1f9f983 remove jeff's name (by his request)
llvm-svn: 127066
2011-03-05 07:23:02 +00:00
Oscar Fuentes 318c3f1717 Support for parallel compilation (/MP) when using the VS IDE.
Patch by Erik Olofsson!

llvm-svn: 126847
2011-03-02 17:47:37 +00:00
Bill Wendling c0e1067e4d Small cleanup.
llvm-svn: 126821
2011-03-02 02:17:11 +00:00
Bill Wendling b3294fafc4 Update the documentation on "How to Release LLVM". It lays out a new way of
tagging and branching for the release. I will update this more throughout the
2.9 release process.

llvm-svn: 126604
2011-02-28 01:10:44 +00:00
Duncan Sands 508fe2f2c4 Fix typo pointed out in pr9339.
llvm-svn: 126573
2011-02-27 13:54:01 +00:00
Nadav Rotem 502f1b943f Enable support for vector sext and trunc:
Limit the folding of any_ext and sext  into the load operation to scalars.
Limit the active-bits trunc optimization to scalars.
Document vector trunc and vector sext in LangRef.

Similar to commit 126080 (for enabling zext).

llvm-svn: 126424
2011-02-24 21:01:34 +00:00
Oscar Fuentes 31717d18e9 Remove the link to Projects.html. It is useless for people working on
Visual Studio.

llvm-svn: 126083
2011-02-20 15:34:12 +00:00
Nadav Rotem 25f2ac948b Fix 9267; Add vector zext support.
The DAGCombiner folds the zext into complex load instructions. This patch
prevents this optimization on vectors since none of the supported targets
knows how to perform load+vector_zext in one instruction.

llvm-svn: 126080
2011-02-20 12:37:50 +00:00
Nick Lewycky 9d0e8b6e80 Fix typo.
llvm-svn: 126065
2011-02-20 02:03:04 +00:00
Nick Lewycky b302f8dae6 Fix thinko, basic blocks are SESE. The exits may have many edges though.
llvm-svn: 125709
2011-02-17 02:19:22 +00:00
Duncan Sands 75b5d27b84 Spelling fix: consequtive -> consecutive.
llvm-svn: 125563
2011-02-15 09:23:02 +00:00
Chris Lattner df01939065 Minor fixes to tutorial, patch by Benjamin Meyer!
llvm-svn: 125544
2011-02-15 00:24:32 +00:00
Tobias Grosser db8a18c788 Adapt docs to '-loopsimplify -> -loop-simplify' change
llvm-svn: 125469
2011-02-13 20:57:25 +00:00
Chris Lattner 39b6d87e9f attempt to capture recent discussion about overflow and inbounds geps.
llvm-svn: 125412
2011-02-11 21:50:52 +00:00
Erick Tryzelaar d5c17bb863 Don't run ocamldoc if it's not installed
llvm-svn: 125203
2011-02-09 18:32:04 +00:00
Chris Lattner f10dfdc77a fix typo
llvm-svn: 125192
2011-02-09 16:44:44 +00:00
NAKAMURA Takumi f214f50739 Add testing stuff to CMake documents.
- Note "GnuWin32".
  - Note LLVM_LIT_TOOLS_DIR
  - Now we can run tests on VS w/e all tests might pass or not!

llvm-svn: 125177
2011-02-09 04:19:28 +00:00
Chris Lattner a676c0fc77 implement .ll and .bc support for nsw/nuw on shl and exact on lshr/ashr.
Factor some code better.

llvm-svn: 125006
2011-02-07 16:40:21 +00:00
Chris Lattner 35315d065b enhance vmcore to know that udiv's can be exact, and add a trivial
instcombine xform to exercise this.

Nothing forms exact udivs yet though.  This is progress on PR8862

llvm-svn: 124992
2011-02-06 21:44:57 +00:00
Devang Patel 7846c1e99b Update docs to match reality.
llvm-svn: 124761
2011-02-03 00:22:17 +00:00
Anton Korobeynikov 3e956af404 Document the LLVM GIT mirror
llvm-svn: 124677
2011-02-01 20:08:28 +00:00
Devang Patel 9a8539c4d9 Remove stale references of obsolete @llvm.dbg.variable.
llvm-svn: 124664
2011-02-01 17:22:12 +00:00
Nick Lewycky fea7ddc735 Most browsers eliminate whitespace between anchor tags. Force whitespace with
&nbsp; so that the code reads properly.

llvm-svn: 124514
2011-01-29 01:09:53 +00:00
Oscar Fuentes 6495595382 Handles libffi on the CMake build.
Patch by arrowdodger!

llvm-svn: 123976
2011-01-21 15:42:54 +00:00
Chris Lattner 92ec3d1bf4 finish a sentence.
llvm-svn: 123750
2011-01-18 06:12:10 +00:00
Rafael Espindola f1ed781aea Add a clarification about merging constants with and without unnamed_addr.
llvm-svn: 123530
2011-01-15 08:20:57 +00:00
Jakob Stoklund Olesen d3438eb27d Don't document exactly how virtual registers are represented as integers. Code
shouldn't depend directly on that.

Give an example of how to iterate over all virtual registers in a function
without depending on the representation.

llvm-svn: 123099
2011-01-08 23:10:59 +00:00
Rafael Espindola 45e6c195d7 First step in fixing PR8927:
Add a unnamed_addr bit to global variables and functions. This will be used
to indicate that the address is not significant and therefore the constant
or function can be merged with others.

If an optimization pass can show that an address is not used, it can set this.

Examples of things that can have this set by the FE are globals created to
hold string literals and C++ constructors.

Adding unnamed_addr to a non-const global should have no effect unless
an optimization can transform that global into a constant.

Aliases are not allowed to have unnamed_addr since I couldn't figure
out any use for it.

llvm-svn: 123063
2011-01-08 16:42:36 +00:00
David Greene 2f7cf7fcb4 Rename lisp-like functions as suggested by Gabor Greif as loooong time
ago.  This is both easier to learn and easier to read.

llvm-svn: 123001
2011-01-07 17:05:37 +00:00
Owen Anderson b6e4ff0d85 Stub out a new updating interface to AliasAnalysis, allowing stateful analyses to be informed when
a pointer value has potentially become escaping.  Implementations can choose to either fall back to
conservative responses for that value, or may recompute their analysis to accomodate the change.

llvm-svn: 122777
2011-01-03 21:38:41 +00:00
Owen Anderson 4423070356 We can count properly.
llvm-svn: 122773
2011-01-03 21:08:22 +00:00
David Greene dc276c315c Reapply 122341 to fix PR8199 now that clang changes are in.
llvm-svn: 122754
2011-01-03 17:30:25 +00:00
Nick Lewycky 80b2e8151e Further expand what a call graph pass may do.
The rationale is that after analyzing a function in the SCC, we may want to
modify it in a way that requires us to update its uses (f.e. to replace the
call with a constant) or its users (f.e. to call it with fewer arguments).

llvm-svn: 122739
2011-01-03 06:16:07 +00:00
Nick Lewycky 00f1b801b1 Permit CallGraphSCCPasses readonly access to the direct callers of the functions
in their SCC as they already have with the direct callees.

llvm-svn: 122734
2011-01-03 04:01:44 +00:00
Duncan Sands 7f3a656624 Correct a bunch of mistakes which meant that the example pass didn't
even compile, let alone work.

llvm-svn: 122657
2011-01-01 17:37:07 +00:00
Duncan Sands f5897f8aa0 I was unable to get the instructions to work if LLVM was built
using a separate objects directory.

llvm-svn: 122656
2011-01-01 17:28:49 +00:00
Duncan Sands 92ad41f99e Clarify that the loadable module turns up in the top-level directory,
not locally.

llvm-svn: 122655
2011-01-01 17:21:58 +00:00
Erick Tryzelaar 5d556ab160 Add a reference to the OCamlLangImpl8.
llvm-svn: 122651
2011-01-01 03:29:25 +00:00
Erick Tryzelaar 619714a65b Add an OCaml tutorial page 8
llvm-svn: 122650
2011-01-01 03:27:43 +00:00
Tobias Grosser 4c8c95b099 Integers are primitive types. Update the documentation to state this
This was done for label, void, floating point, x86mmx, metadata,
just not integer.

llvm-svn: 122606
2010-12-28 20:29:31 +00:00
David Greene be57ab185f Revert 122341. It breaks some darwin tests.
llvm-svn: 122346
2010-12-21 17:25:43 +00:00
David Greene a93adab324 Fix PR 8199. This patch prepends the build tool dir to LLVM programs
being tested.  This ensures that we test the tools just built and not
some random tools that might happen to be in the user's PATH.  This
makes LLVM testing much more stable and predictable.

llvm-svn: 122341
2010-12-21 16:55:53 +00:00
Bill Wendling 510504a6e8 Grammar corrections and some formatting changes.
llvm-svn: 122312
2010-12-21 03:31:05 +00:00
Wesley Peck 671d54d5a2 Update the target feature matrix to reflect some new features in the MBlaze backend.
llvm-svn: 122276
2010-12-20 21:54:50 +00:00
Oscar Fuentes 7064035998 New cmake option LLVM_APPEND_VC_REV for controlling when the VC
revision id is appended to the LLVM version string. Defaults to
OFF.

Until now the VC revision id was always appended to the revision
string whenever cmake was invoked (either explicitly or implicitly
because a cmake source file changed). This was causing massive
recompilations because config.h are reconfigured with the new contents
of PACKAGE_VERSION.

llvm-svn: 122240
2010-12-20 09:47:13 +00:00
Bruno Cardoso Lopes 8e303e896e Update the Target Feature Matrix for Mips
llvm-svn: 122203
2010-12-19 22:41:43 +00:00
Dan Gohman e1d8d3a2e4 Fix a typo that Bill spotted.
llvm-svn: 121909
2010-12-15 23:09:41 +00:00
Dan Gohman b3f04f468e Document some more AliasAnalysis infrastructure limitations.
llvm-svn: 121874
2010-12-15 18:45:20 +00:00
Bill Wendling 5d32b70967 Add mention that we support FreeBSD/amd64.
llvm-svn: 121832
2010-12-15 01:35:55 +00:00
Jakob Stoklund Olesen 36eab1cee4 Add IntervalMap to the Programmer's Manual.
llvm-svn: 121740
2010-12-14 00:55:51 +00:00
Chris Lattner bd61444cb9 further fixes.
llvm-svn: 121657
2010-12-13 00:17:12 +00:00
Chris Lattner 053a025bfe fix typo
llvm-svn: 121620
2010-12-12 02:42:57 +00:00
Dan Gohman 4bd64fa805 Introduce a new PartialAlias response for AliasAnalysis. For most
AliasAnalysis consumers, PartialAlias will be treated as MayAlias.

For AliasAnalysis chaining, MayAlias says "procede to the next analysis".
PartialAlias will be used to indicate that the query should terminate,
even though it didn't reach MustAlias or NoAlias.

llvm-svn: 121507
2010-12-10 19:38:58 +00:00
Eric Christopher 775608995c Use GZIPBIN instead of GZIP. Apparently gzip uses GZIP as an environment
variable for args you want to default pass to gzip.

Patch based on one by asau@inbox.ru.

Fixes PR8758.

llvm-svn: 121449
2010-12-10 01:31:51 +00:00
Chris Lattner 02093e1f0b fix some validation problems
llvm-svn: 121444
2010-12-10 00:54:03 +00:00
Chris Lattner 77c8cc8fc9 restructure this for readability, correct the example to follow the public ivar name convention
llvm-svn: 121443
2010-12-10 00:52:35 +00:00
Chris Lattner 7365a2838b add a rule for enums, patch by Zhanyong Wan!
llvm-svn: 121430
2010-12-09 23:32:39 +00:00
Bill Wendling 2eeba63215 Fix the prototype for the llvm.eh.selector intrinsic.
llvm-svn: 121425
2010-12-09 23:05:48 +00:00
Bill Wendling 7a05f00ade Fix newlines.
llvm-svn: 121233
2010-12-08 02:46:25 +00:00
Frits van Bommel 7cf63ace18 Clarify some of the differences between indexing with getelementptr and indexing with insertvalue/extractvalue.
llvm-svn: 120957
2010-12-05 20:54:38 +00:00
Zhanyong Wan 4f3b26de28 Add naming rules to the coding standards.
llvm-svn: 120689
2010-12-02 05:10:07 +00:00
Chris Lattner 9db8e15f4d forbid rtti and exceptions
llvm-svn: 120450
2010-11-30 19:20:40 +00:00
Nick Lewycky 2965d3e3cd Make @llvm.invariant.start not be readonly, so that it has side-effects. This
unbreaks test/Transforms/InstCombine/invariant.ll which was broken by r120382.
This is a fix-forward to do what I think Chris intended.

llvm-svn: 120388
2010-11-30 04:13:41 +00:00
Oscar Fuentes e1c6a67df6 Bump required cmake version on CMake.html.
llvm-svn: 120162
2010-11-25 21:41:48 +00:00
Zhanyong Wan 19b96fd4ee Fix formatting nits in the coding standards. Reviewed by clattner.
llvm-svn: 119998
2010-11-23 05:03:07 +00:00
Wesley Peck 527da1b6e2 Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept.
llvm-svn: 119990
2010-11-23 03:31:01 +00:00
Chris Lattner d78dbee431 a byval argument without an align can have an arbitrary alignment
requirement on the input pointer.

llvm-svn: 119914
2010-11-20 23:49:06 +00:00
Chris Lattner eebbbeb917 add some justification for "using namespace llvm;"
llvm-svn: 119544
2010-11-17 19:47:20 +00:00
Chris Lattner 8defde09fd various cleanups and other improvements, patch by Zhanyong Wan!
llvm-svn: 119515
2010-11-17 17:14:55 +00:00
Chris Lattner 79ffdc7581 With the newly simplified SourceMgr interfaces and the generalized
SrcMgrDiagHandler, we can improve clang diagnostics for inline asm:
instead of reporting them on a source line of the original line,
we can report it on the correct line wherever the string literal came
from. For something like this:

void foo() {
  asm("push %rax\n"
      ".code32\n");
}

we used to get this: (note that the line in t.c isn't helpful)

t.c:4:7: error: warning: ignoring directive for now
  asm("push %rax\n"
      ^
<inline asm>:2:1: note: instantiated into assembly here
.code32
^

now we get:

t.c:5:8: error: warning: ignoring directive for now
      ".code32\n"
       ^
<inline asm>:2:1: note: instantiated into assembly here
.code32
^

Note that we're pointing to line 5 properly now.

llvm-svn: 119488
2010-11-17 08:20:42 +00:00
Chris Lattner 44c2241cd4 update coding standards. Partial specialization is now ok,
though possibly not a good idea.

llvm-svn: 119398
2010-11-16 22:19:06 +00:00
Chris Lattner fced6e2587 libc++ and compiler_rt are now dual licensed under UIUC and MIT license.
llvm-svn: 119387
2010-11-16 21:32:53 +00:00
Peter Collingbourne b813cacf06 Document -enable-no-infs-fp-math and -enable-no-nans-fp-math command line options
llvm-svn: 119370
2010-11-16 19:40:13 +00:00
Dan Gohman a230754385 Fix missing includes of "llvm/Analysis/Passes.h" in the tutorials. Thanks
for Arnaud Allard de Grandmaison for preparing a patch.

llvm-svn: 119351
2010-11-16 17:28:22 +00:00
Dan Gohman 56f3a4c761 Update examples and documentation to explicitly add basicaa, now that it's
no longer included by default.

llvm-svn: 119169
2010-11-15 18:41:10 +00:00
Dan Gohman b83aed95c9 -basicaa is no longer the default.
llvm-svn: 119163
2010-11-15 18:07:16 +00:00
Chris Lattner 7b783e7cb2 no alpha jit support.
llvm-svn: 119052
2010-11-14 18:25:50 +00:00
Chris Lattner 8a7f4dafe5 describe the preferred approach to silencing 'unused variable warnings' due to asserts.
llvm-svn: 118863
2010-11-12 00:19:41 +00:00
NAKAMURA Takumi f791007e81 CMake: Add the new option "LLVM_LIT_ARGS".
Defaults:
if (MSVC OR XCODE): "-sv --no-progress-bar"
else: "-sv"

llvm-svn: 118776
2010-11-11 04:09:35 +00:00
Devang Patel fd0ad36c28 Document debuginfo-tests.
llvm-svn: 118746
2010-11-11 00:13:39 +00:00
Chris Lattner 4869d346e3 add (and document) the ability for alias results to have
fixed physical registers.  Start moving fp comparison
aliases to the .td file (which default to using %st1 if
nothing is specified).

llvm-svn: 118352
2010-11-06 19:57:21 +00:00
Chris Lattner b6f8e8248d generalize alias support to allow the result of an alias to
add fixed immediate values.  Move the aad and aam aliases to
use this, and document it.

llvm-svn: 118350
2010-11-06 19:25:43 +00:00
Chris Lattner 8b0a71fc31 document instalias.
llvm-svn: 118335
2010-11-06 08:30:26 +00:00
Duncan Sands 8eb254aed6 Fix typo, pointed out by Trevor Harmon.
llvm-svn: 118163
2010-11-03 08:16:50 +00:00
Chris Lattner 3e6c919469 fix typo, patch by Trevor Harmon (PR8537)
llvm-svn: 118131
2010-11-03 00:30:29 +00:00
Oscar Fuentes 64cb0eed22 Removed obsolete section about VC++ project files.
llvm-svn: 118072
2010-11-02 21:34:19 +00:00
Chris Lattner 7ff334687d fix the !eq operator in tblgen to return a bit instead of an int.
Use this to make the X86 and ARM targets set isCodeGenOnly=1 
automatically for their instructions that have Format=Pseudo,
resolving a hack in tblgen.

llvm-svn: 117862
2010-10-31 19:22:57 +00:00
Benjamin Kramer c940bcf564 Validate HTML.
llvm-svn: 117847
2010-10-30 21:07:28 +00:00
Chris Lattner 4dd6ca9a69 add missing tag
llvm-svn: 117846
2010-10-30 20:21:00 +00:00
Chris Lattner f9ec2fb34a fix typos and some serious bugs in feature handling (but not for
cases that are currently exercised).  Thanks to Frits van Bommel for
the great review!

llvm-svn: 117840
2010-10-30 19:47:49 +00:00
Chris Lattner 2cb092dc55 Implement (and document!) support for MnemonicAlias's to have Requires
directives, allowing things like this:

def : MnemonicAlias<"pop", "popl">, Requires<[In32BitMode]>;
def : MnemonicAlias<"pop", "popq">, Requires<[In64BitMode]>;

Move the rest of the X86 MnemonicAliases over to the .td file.

llvm-svn: 117830
2010-10-30 19:23:13 +00:00
Chris Lattner ba7b4fea97 implement (and document!) the first kind of MC assembler alias, which
just remaps one mnemonic to another.  Convert a few of the X86 aliases
from .cpp to .td code.

llvm-svn: 117815
2010-10-30 17:36:36 +00:00
Oscar Fuentes b1f9380cac Document LLVM_BUILD_TESTS, LLVM_INCLUDE_TESTS. New convenience target
UnitTests for building all the unit tests.

llvm-svn: 117545
2010-10-28 14:38:35 +00:00
Chris Lattner 15597538ae clarify that not having the ".o file writing" feature
doesn't mean that you can't get a .o file.  Apparently
this is confusing :)

llvm-svn: 117523
2010-10-28 02:22:02 +00:00
Bill Wendling 6bbe0912c3 Random cleanups and format changes.
llvm-svn: 117428
2010-10-27 01:07:41 +00:00
Duncan Sands 406e6f59b8 Yet another thing that was forgotten to be added to the release notes...
llvm-svn: 117362
2010-10-26 12:43:36 +00:00
Charles Davis 742052526a Make the description of the hotpatch attribute even more generic. Spotted by
Michael Spencer.

llvm-svn: 117286
2010-10-25 19:07:39 +00:00
Charles Davis 1b2d372b9f Make hotpatch attribute description a little less Wintel-specific.
llvm-svn: 117267
2010-10-25 16:29:03 +00:00
Charles Davis 22fe18625d Add a new 'hotpatch' attribute. This attribute will insert a two-byte no-op
instruction at the beginning of each function that has the attribute, allowing
the function to be easily hooked and/or patched.

llvm-svn: 117264
2010-10-25 15:37:09 +00:00
Kalle Raiskila 829b21fb02 Update target feature matrix for CellSPU
llvm-svn: 117255
2010-10-25 08:57:30 +00:00
Jakob Stoklund Olesen c7932d3ac6 Update target feature matrix for Blackfin.
llvm-svn: 117245
2010-10-24 20:04:05 +00:00
Wesley Peck 188deadf88 Updating target feature matrix to indicate current MBlaze status.
llvm-svn: 117244
2010-10-24 18:50:12 +00:00
Chris Lattner 60616b1e54 broken link
llvm-svn: 117232
2010-10-24 16:24:22 +00:00
Chris Lattner 5427f745b5 add a big table with target features.
llvm-svn: 117230
2010-10-24 16:18:00 +00:00
Peter Collingbourne a92b66ec47 Standardise all build-mode affecting {EN,DIS}ABLE_* make options to
test equality to 1, and fix/update documentation to reflect this

llvm-svn: 117094
2010-10-22 12:54:34 +00:00
Tobias Grosser 5f038210cf Fix type in passes.
llvm-svn: 117065
2010-10-21 21:16:03 +00:00
Duncan Sands a11e9827b1 Argh, completely forgot to add this to the release notes!
Better late than never, right?

llvm-svn: 117009
2010-10-21 14:40:02 +00:00
Tobias Grosser 23c8341c3d Add RegionPass support.
A RegionPass is executed like a LoopPass but on the regions detected by the
RegionInfo pass instead of the loops detected by the LoopInfo pass.

llvm-svn: 116905
2010-10-20 01:54:44 +00:00
Jim Grosbach bbdc5d2ef9 Add a pre-dispatch SjLj EH hook on the unwind edge for targets to do any
setup they require. Use this for ARM/Darwin to rematerialize the base
pointer from the frame pointer when required. rdar://8564268

llvm-svn: 116879
2010-10-19 23:27:08 +00:00
Jakob Stoklund Olesen eba55822d7 Teach FileCheck to handle trailing CHECK-NOT patterns.
A CHECK-NOT pattern without a following CHECK pattern simply checks that the
pattern doesn't match before the end of the input file.

You can even have only CHECK-NOT patterns to check that strings appear nowhere
in the input file.

llvm-svn: 116592
2010-10-15 17:47:12 +00:00
Chris Lattner 1ef5e84c31 Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if
it comes back, it will be largely a rewrite, so keeping the old codebase
in tree isn't helping anyone.

llvm-svn: 116190
2010-10-11 05:44:40 +00:00
Chris Lattner f11031a68c clarify that zero sized vectors are illegal, PR8340
llvm-svn: 116167
2010-10-10 18:20:35 +00:00
Nick Lewycky cf263b0cbd Fix dead link.
llvm-svn: 116157
2010-10-09 21:12:29 +00:00
Nick Lewycky abe8c130b1 Warn about broken GCCs on ARM due to the problem fixed:
http://gcc.gnu.org/ml/gcc-patches/2010-09/msg01070.html

llvm-svn: 115998
2010-10-07 22:30:47 +00:00
Bill Wendling c473587e28 Fixed RELEASE_28 tags.
llvm-svn: 115872
2010-10-06 23:50:30 +00:00
Tobias Grosser 436bc5fdb3 Fix libc++ link in release notes.
llvm-svn: 115837
2010-10-06 21:07:30 +00:00
Tobias Grosser 5af766bb1e Add missing "-" to the command line.
llvm-svn: 115777
2010-10-06 11:43:06 +00:00
Duncan Sands 6f2ae72c90 No need to check out everything: binutils is enough.
Patch by John Tytgat.

llvm-svn: 115757
2010-10-06 06:45:11 +00:00
Tanya Lattner 3d7ec7b55d Update release location.
llvm-svn: 115749
2010-10-06 05:36:01 +00:00
Chris Lattner 9402633637 remove the !nameconcat tblgen feature. It "shorthand" and only used in 4 places
where !cast is just as short.

llvm-svn: 115722
2010-10-06 00:19:21 +00:00
Jim Grosbach 1e8b44e470 s/The ARM has/The ARM backend has/
llvm-svn: 115584
2010-10-05 01:00:42 +00:00
Bruno Cardoso Lopes 3ae4d87d6f AVX intrinsics and builtins were also added to clang
llvm-svn: 115566
2010-10-04 22:07:22 +00:00
Douglas Gregor 7e79556d96 Spell AltiVec correctly
llvm-svn: 115560
2010-10-04 21:12:06 +00:00
Daniel Dunbar f70898affa ReleaseNotes: Note some changes to LLVM development infrastructure.
llvm-svn: 115550
2010-10-04 20:11:41 +00:00
Daniel Dunbar efefb206a5 ReleaseNotes: Note a header rename.
llvm-svn: 115549
2010-10-04 20:11:39 +00:00
Gabor Greif 0d4224ef04 validator fixes; others remain, somebody who knows some html, please have a look
llvm-svn: 115526
2010-10-04 17:54:30 +00:00
Daniel Dunbar 8fbd8aad45 Add KLEE 2.8 release notes.
llvm-svn: 115524
2010-10-04 17:39:47 +00:00
Daniel Dunbar 60ad0094e2 A few more random Clang release notes.
llvm-svn: 115520
2010-10-04 17:06:49 +00:00
Gabor Greif dcdbbea36d minor tweaks and typos
llvm-svn: 115518
2010-10-04 17:03:49 +00:00
Devang Patel 9fbc680c5e Fix lexical block's tag number.
llvm-svn: 115516
2010-10-04 16:51:59 +00:00
Chris Lattner dc38ad4aee scheduler update
llvm-svn: 115515
2010-10-04 16:46:07 +00:00
Chris Lattner c3e64b2c37 another tweak
llvm-svn: 115510
2010-10-04 16:06:37 +00:00
Duncan Sands d63e1c80ba Ada support has moved to dragonegg - I am no longer working on
Ada in llvm-gcc.

llvm-svn: 115501
2010-10-04 10:06:56 +00:00
Duncan Sands 6ad8bf6051 Fix a bunch of typos.
llvm-svn: 115500
2010-10-04 10:04:14 +00:00
Duncan Sands fb994d2f0e Altvec -> Altivec.
llvm-svn: 115499
2010-10-04 09:11:50 +00:00
Douglas Gregor 614ace674b Update LLVM 2.8 release notes for Clang
llvm-svn: 115498
2010-10-04 07:02:35 +00:00
Chris Lattner d3f45c8cf2 checkpoint, the release notes are now feature complete.
llvm-svn: 115495
2010-10-04 04:39:25 +00:00
Chris Lattner 9fd1e92de8 checkpoint
llvm-svn: 115494
2010-10-04 03:58:12 +00:00
Chris Lattner fcc65a74a7 checkpoint.
llvm-svn: 115489
2010-10-04 02:42:39 +00:00
Chris Lattner a7f45cf749 write Major Changes and Removed Features.
llvm-svn: 115486
2010-10-04 01:29:06 +00:00
Chris Lattner 120804afae move dragonegg up in the list, write blurbs for lldb and libc++
llvm-svn: 115484
2010-10-03 23:49:06 +00:00
Chris Lattner d93b4afdd7 add a bunch of stuff that works with 2.8
llvm-svn: 115483
2010-10-03 23:09:03 +00:00
Chris Lattner 743bc472ac random updates
llvm-svn: 115427
2010-10-02 22:44:15 +00:00
Chris Lattner bf1cf670a6 checkpoint, don't expect this to read right yet. :)
llvm-svn: 115426
2010-10-02 21:59:30 +00:00
Chris Lattner 97eac67552 add a bunch more notes. I survived.
llvm-svn: 115418
2010-10-02 19:32:01 +00:00
Devang Patel cac38900f1 Fix block descriptor documentation.
llvm-svn: 115362
2010-10-01 22:45:00 +00:00
Devang Patel 6df452cfb1 Fix dbg_declare signature in document.
llvm-svn: 115326
2010-10-01 19:22:16 +00:00
Devang Patel bed5e7d404 Fix DIDerived type fields' type in document.
llvm-svn: 115325
2010-10-01 19:19:30 +00:00
Chris Lattner ca7c896b16 add a note
llvm-svn: 115297
2010-10-01 06:34:49 +00:00
Dale Johannesen b1f0ff1d66 Fix pasto.
llvm-svn: 115261
2010-10-01 01:07:02 +00:00
Dale Johannesen 33e5c354e5 Add some doc for the x86mmx type.
llvm-svn: 115255
2010-10-01 00:48:59 +00:00
Duncan Sands 7f9a0dc4b4 Flesh out the dragonegg section.
llvm-svn: 115179
2010-09-30 17:37:34 +00:00
Chris Lattner f25bc19e17 checkpoint notes
llvm-svn: 115152
2010-09-30 16:31:33 +00:00
Chris Lattner 510a81a89b fix incorrect link!
llvm-svn: 115124
2010-09-30 01:12:09 +00:00
Chris Lattner 3458ab6001 add a bunch of entries for external projects.
llvm-svn: 115112
2010-09-30 00:34:43 +00:00
Duncan Sands e9da6db67f Convert a bunch of uses of 'bytecode' into 'bitcode'. This
is not everything, but the remaining cases are less trivial.

llvm-svn: 115080
2010-09-29 20:09:55 +00:00
Chris Lattner 16be34dec0 add some random notes.
llvm-svn: 115032
2010-09-29 07:25:03 +00:00
Chris Lattner 086d269413 merge all the llvm-gcc pieces together. Recommend that people try dragonegg if they care about fortran performance.
llvm-svn: 115031
2010-09-29 05:34:42 +00:00
Chris Lattner 342f957966 prepare for new content.
llvm-svn: 115030
2010-09-29 05:30:03 +00:00
Chris Lattner b671d84ade reapply developer policy changes after discussion.
llvm-svn: 114886
2010-09-27 21:17:15 +00:00
Oscar Fuentes bf03084532 New cmake options LLVM_INCLUDE_X (X = {TOOLS, EXAMPLES, TESTS}) for
not generating build targets for those parts of the build.

llvm-svn: 114797
2010-09-25 20:43:06 +00:00
Chris Lattner aa2ad5730c temporarily revert developer policy change as a courtesy to vikram.
llvm-svn: 114792
2010-09-25 15:53:35 +00:00
Chris Lattner 16e264c546 remove an obsolete section
llvm-svn: 114701
2010-09-23 22:34:49 +00:00
Andrew Trick 68aa18e4be Fix Getting Started docs.
configure expects LLVM Test Suite to be in projects/test-suite.
Made the "getting started" and "testing infrastructure" docs internally consistent.
Avoid confusion between llvm-test and llvm/test.

llvm-svn: 114691
2010-09-23 20:26:44 +00:00
Chris Lattner a45bbb9628 rewrite the copyright section to match reality: llvm does't have a
copyright assignment process.

llvm-svn: 114673
2010-09-23 17:37:11 +00:00
Chris Lattner 81b59834c2 add lldb and libc++ code owners.
llvm-svn: 114669
2010-09-23 17:27:54 +00:00
Chris Lattner 191efcfc63 random cruft in my tree.
llvm-svn: 114387
2010-09-21 04:03:39 +00:00
Michael J. Spencer 65bd28db99 docs: Tweak wording.
llvm-svn: 114271
2010-09-18 08:32:32 +00:00
Michael J. Spencer 386fe51f64 docs: Update GettingStartedVS to reflect current state.
llvm-svn: 114167
2010-09-17 06:33:20 +00:00
Oscar Fuentes 144d99d084 Updated GettingStartedVS.html to reflect current state.
Reorganized it too.

llvm-svn: 114151
2010-09-17 02:17:13 +00:00
Oscar Fuentes 9712b2c06c Direct CMake users to the right place for up-to-date info about using
LLVM libraries.

llvm-svn: 114139
2010-09-17 00:30:52 +00:00
Bob Wilson e44f298674 Fix formatting tags.
llvm-svn: 113758
2010-09-13 17:39:35 +00:00
Bob Wilson 46d6580ccf Document NEON intrinsic changes for 2.8.
llvm-svn: 113757
2010-09-13 17:37:55 +00:00
Chris Lattner cb67a14b3e add some documentation for the most important MC-level classes along with
an overview of mc and the idea of the code emission phase.

llvm-svn: 113707
2010-09-11 23:02:10 +00:00
John McCall 978f007a80 Add documentation for llvm-diff.
llvm-svn: 113303
2010-09-07 23:10:21 +00:00
Chris Lattner 8128ca1c2c add note
llvm-svn: 113164
2010-09-06 19:14:40 +00:00
Chris Lattner 8c26cee3f3 some random notes.
llvm-svn: 113118
2010-09-05 20:49:45 +00:00
Chris Lattner fc561bad88 this is a release note worthy change.
llvm-svn: 112907
2010-09-02 23:22:50 +00:00
Chris Lattner 32eff0df9a updates to make it clear that this applies to clang and other llvm subprojects.
llvm-svn: 112781
2010-09-02 00:09:17 +00:00
Chris Lattner 44ab470c8e update the tutorial to use CreateFAdd to create fp operations.
llvm-svn: 112733
2010-09-01 20:09:20 +00:00
Jakob Stoklund Olesen 94e90b9406 Stack slot access methods are in TargetInstrInfo.
llvm-svn: 112653
2010-08-31 22:01:07 +00:00
Duncan Sands 11c23fc349 Update the Ada instructions to LLVM 2.7 (from LLVM 2.5).
llvm-svn: 112630
2010-08-31 19:40:21 +00:00
Dan Gohman f2d817192b Update the descriptions of NoModRef and ModRef to be consistent
with the descriptions of Mod and Ref.

llvm-svn: 112557
2010-08-30 23:47:24 +00:00
Duncan Sands 1b6744a376 Remove a hack that tries to understand incorrect triples from the
Triple class constructor.  Only valid triples should now be used
inside LLVM - front-ends are now responsable for rejecting or
correcting invalid target triples.  The Triple::normalize method
can be used to straighten out funky triples provided by users.
Give this a whirl through the buildbots to see if I caught all
places where triples enter LLVM.

llvm-svn: 112470
2010-08-30 10:57:54 +00:00
Chris Lattner bd24404718 remove the MSIL backend. It isn't maintained, is buggy, has no testcases
and hasn't kept up with ToT.  Approved by Anton.

llvm-svn: 112375
2010-08-28 16:33:36 +00:00
Chris Lattner 13ee795c42 remove unions from LLVM IR. They are severely buggy and not
being actively maintained, improved, or extended.

llvm-svn: 112356
2010-08-28 04:09:24 +00:00
Bill Wendling 578ee4070c Create the new linker type "linker_private_weak_def_auto".
It's similar to "linker_private_weak", but it's known that the address of the
object is not taken. For instance, functions that had an inline definition, but
the compiler decided not to inline it. Note, unlike linker_private and
linker_private_weak, linker_private_weak_def_auto may have only default
visibility.  The symbols are removed by the linker from the final linked image
(executable or dynamic library).

llvm-svn: 111684
2010-08-20 22:05:50 +00:00
Dan Gohman d3ee4238a5 Make the SCC printing passes use errs() instead of outs(), as the
other printing passes do, and update the documentation accordingly.

llvm-svn: 111601
2010-08-20 01:03:44 +00:00
Chris Lattner 249b976ed2 fix a broken link
llvm-svn: 111326
2010-08-17 23:26:04 +00:00
Chris Lattner 54a7be757b add some &nbsp;'s to a pre to avoid newlines being eaten
and the formatting being thrown off.  I admit to not knowing
what is going on here.

llvm-svn: 111249
2010-08-17 17:13:42 +00:00
Oscar Fuentes 43c6321340 CMake: document how to incorporate LLVM into the cmake project of an
external project.

llvm-svn: 110561
2010-08-09 03:26:48 +00:00
Oscar Fuentes c9793795f7 CMake: documented testing procedure
llvm-svn: 110559
2010-08-09 02:49:39 +00:00
Rafael Espindola fb1f29acf9 Add a opt-args option that can be used to pass arguments to every opt
invocation. Fixes PR7793:

bugpoint -debug test.ll --opt-args -unroll-count=4

llvm-svn: 110555
2010-08-08 22:14:20 +00:00
Rafael Espindola 717cd17f6f s/libLLVMgold/LLVMgold/g
llvm-svn: 110552
2010-08-08 21:14:26 +00:00
Peter Collingbourne 099c4e3cde Fix missing </a> tag error introduced by addition of LowerAtomic pass.
While at it, fix all other HTML validation errors in docs/Passes.html.

llvm-svn: 110428
2010-08-06 02:13:25 +00:00
Eric Christopher fa5d2415b6 Document results of PR7762.
llvm-svn: 110373
2010-08-05 20:38:39 +00:00
Owen Anderson f16eb37b54 Add a note about the changing pass registration interface.
llvm-svn: 110231
2010-08-04 18:27:08 +00:00
Dan Gohman 67c0212353 Delete mkpatch. Everything it does is already done by svn diff by default.
llvm-svn: 110203
2010-08-04 16:07:22 +00:00
Dan Gohman 852287332a Remove a link which is no longer relevant.
llvm-svn: 110202
2010-08-04 15:59:16 +00:00
Torok Edwin e6f478f795 Note some LLVM 2.7 -> 2.8 APIs that changed / got renamed.
I encountered these while upgrading libclamav.

llvm-svn: 110196
2010-08-04 12:43:22 +00:00
Peter Collingbourne ddaaf40d24 Add an atomic lowering pass
llvm-svn: 110113
2010-08-03 16:19:16 +00:00
Daniel Dunbar f85eb933d4 docs/TestingGuide: Minimal update to describe 'lit' based regression testing
instead of DejaGNU. Still a bit kooky, since the current test format still has
some strong Tcl roots. Oh well!

llvm-svn: 110005
2010-08-02 01:20:23 +00:00
Daniel Dunbar a9075c5ead docs/TestingGuide: Rip out description of old nightly tester infrastructure. The
official recommendation is to use LNT instead. I will write docs on setting up
an LNT installation for submission to llvm.org, one day.

llvm-svn: 110004
2010-08-02 01:20:20 +00:00
Nick Lewycky daf67727a3 Fix word choice.
llvm-svn: 109995
2010-08-01 23:18:45 +00:00
John Criswell ad05ae483f Grammar cop pullover: Corrected and improved some grammar in the description of
the llvm.memset() intrinsic family.
No content changes.

llvm-svn: 109863
2010-07-30 16:30:28 +00:00
Gabor Greif ed79dcb1ab re-commit r109220, the compile error has already been fixed
Simplifying use_iterators by dereferencing
is not a good idea. The codebase does not depend
in this any more, and it may introduce hidden
runtime cost. If you get compile errors, please
dereference your iterator before passing to cast<>
(and friends).

Also: please consider caching the result of
operator* and reusing that instead of dereferencing
many times.

llvm-svn: 109425
2010-07-26 18:48:07 +00:00
Peter Collingbourne b724226063 Document BUILD_EXAMPLES makefile variable
llvm-svn: 109346
2010-07-24 17:54:00 +00:00
Tobias Grosser 336734aca6 Add new RegionInfo pass.
The RegionInfo pass detects single entry single exit regions in a function,
where a region is defined as any subgraph that is connected to the remaining
graph at only two spots.
Furthermore an hierarchical region tree is built.
Use it by calling "opt -regions analyze" or "opt -view-regions".

llvm-svn: 109089
2010-07-22 07:46:31 +00:00
Owen Anderson ac4a1ede17 Add INSTANTIATE_AG_PASS, which combines RegisterPass<> with RegisterAnalysisGroup<> for pass registration.
llvm-svn: 109058
2010-07-21 23:07:00 +00:00
Owen Anderson 7ca8fb4795 First stab at updating the documentation for INITIALIZE_PASS().
llvm-svn: 109055
2010-07-21 22:58:07 +00:00
Dan Gohman 093cb79d4b Disallow null as a named metadata operand.
Make MDNode::destroy private.
Fix the one thing that used MDNode::destroy, outside of MDNode itself.

One should never delete or destroy an MDNode explicitly. MDNodes
implicitly go away when there are no references to them (implementation
details aside).

llvm-svn: 109028
2010-07-21 18:54:18 +00:00
Chris Lattner b3fa6bf0ef strip out the 2.7 release notes, this really is the 2.8 release notes
now. Add a few items like the fpstackifier improvements.

llvm-svn: 109013
2010-07-21 15:57:40 +00:00
Gabor Greif 930894fe61 appease Validator
llvm-svn: 109007
2010-07-21 10:22:41 +00:00
Gabor Greif 4b17e65baa add info on operand rotation
llvm-svn: 109006
2010-07-21 10:20:08 +00:00
Jakob Stoklund Olesen 8289f78569 Remove the isMoveInstr() hook.
llvm-svn: 108567
2010-07-16 22:35:46 +00:00
Benjamin Kramer 92d8998348 Don't pass StringRef by reference.
llvm-svn: 108366
2010-07-14 22:38:02 +00:00
Dan Gohman 58cd65f2fe Fix the Named Metadata example to make it clear which specific
construct is the named metadata.

llvm-svn: 108263
2010-07-13 19:48:13 +00:00
Devang Patel 4a7904d652 Fix compile unit in example. Thanks Renato Golin!
llvm-svn: 108246
2010-07-13 16:53:20 +00:00
Benjamin Kramer 79698be162 HTML cleanup and validation.
llvm-svn: 108239
2010-07-13 12:26:09 +00:00
Duncan Sands a522e563a8 When doing sext/zext of constants, the target type must be strictly
wider than the source type.  Correct LangRef.

llvm-svn: 108238
2010-07-13 12:06:14 +00:00
Jakob Stoklund Olesen c4227f1362 Remove TargetInstrInfo::copyRegToReg entirely.
Targets must now implement TargetInstrInfo::copyPhysReg instead. There is no
longer a default implementation forwarding to copyRegToReg.

llvm-svn: 108095
2010-07-11 17:01:17 +00:00
Dan Gohman e501ff7cc6 sdiv overflow is outright undefined behavior, with or without the
'exact' keyword. Thanks to nlewycky for pointing this out!

llvm-svn: 108064
2010-07-11 00:08:34 +00:00
Duncan Sands 1567f0fa7e Tweak some docs now that the default build is called Debug+Asserts.
llvm-svn: 107862
2010-07-08 08:27:18 +00:00
Reid Kleckner 7d797f613f Update the docs for debugging JITed code with GDB.
llvm-svn: 107808
2010-07-07 20:16:45 +00:00
Dan Gohman 00ef93258a Remove interprocedural-basic-aa and associated code. The AliasAnalysis
interface needs implementations to be consistent, so any code which
wants to support different semantics must use a different interface.
It's not currently worthwhile to add a new interface for this new
concept.

Document that AliasAnalysis doesn't support cross-function queries.

llvm-svn: 107776
2010-07-07 14:27:09 +00:00
Duncan Sands 408bb192de Rename "Release" builds as "Release+Asserts"; rename "Release-Asserts"
builds to "Release".  The default build is unchanged (optimization on,
assertions on), however it is now called Release+Asserts.  The intent
is that future LLVM releases released via llvm.org will be Release builds
in the new sense, i.e. will have assertions disabled (currently they have
assertions enabled, for a more than 20% slowdown).  This will bring them
in line with MacOS releases, which ship with assertions disabled.  It also
means that "Release" now means the same things in make and cmake builds:
cmake already disables assertions for "Release" builds AFAICS.

llvm-svn: 107758
2010-07-07 07:48:00 +00:00
John McCall 72ed8908ee Closing tags start with slashes.
llvm-svn: 107699
2010-07-06 21:07:14 +00:00
Chris Lattner 5eff9ca26e minor typo
llvm-svn: 107696
2010-07-06 20:51:35 +00:00
Nick Lewycky 14b58dac8d Alphabetize the list of function parameters.
llvm-svn: 107680
2010-07-06 18:24:09 +00:00
Duncan Sands 83cec97479 Bring the list of passes and their descriptions up to date.
Patch by Kenneth Hoste.

llvm-svn: 107669
2010-07-06 15:52:15 +00:00
Dan Gohman 6c858db40c Note the relationship between C99 restrict and LLVM noalias, and
clarify a few other things.

llvm-svn: 107659
2010-07-06 15:26:33 +00:00
Chris Lattner 30f33eb935 indmemrem and lowerallocs are gone.
llvm-svn: 107587
2010-07-04 17:36:43 +00:00
Dan Gohman ece6906ea0 Document that BasicAA respects noalias, while InterproceduralBasicAA
does not.

llvm-svn: 107546
2010-07-02 23:52:36 +00:00
Dan Gohman de25629e4f Describe which dependencies are relevant to noalias, and document how
AliasAnalyses have the choice to respect noalias.

llvm-svn: 107544
2010-07-02 23:46:54 +00:00
Dan Gohman 3770af5852 Add some html anchors, to allow attributes to be linked to directly.
llvm-svn: 107538
2010-07-02 23:18:08 +00:00
Dan Gohman df12d08b8e Reword the definition of the noalias attribute. The intention is for
the noalias argument on function attributes be usable to model the
C99 restrict keyword on arguments, and to allow AliasAnalysis to
consider a noalias-attributed argument to be an "identified object".

To support this, refactor a new "based on" concept out of the current
pointer aliasing "associated" concept. This "based on" concept is very
similar to (though it is not identical with) the "based on" concept
in C99.

Also, reword the definition of NoAlias to more closely describe the
concept that the optimizer uses.

llvm-svn: 107495
2010-07-02 18:41:32 +00:00
Bill Wendling 03bcd6ecc8 Implement the "linker_private_weak" linkage type. This will be used for
Objective-C metadata types which should be marked as "weak", but which the
linker will remove upon final linkage. However, this linkage isn't specific to
Objective-C.

For example, the "objc_msgSend_fixup_alloc" symbol is defined like this:

      .globl l_objc_msgSend_fixup_alloc
      .weak_definition l_objc_msgSend_fixup_alloc
      .section __DATA, __objc_msgrefs, coalesced
      .align 3
l_objc_msgSend_fixup_alloc:
       .quad   _objc_msgSend_fixup
       .quad   L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

Currently only supported on Darwin platforms.

llvm-svn: 107433
2010-07-01 21:55:59 +00:00
Bill Wendling 3632171750 Revert r107205 and r107207.
llvm-svn: 107215
2010-06-29 22:34:52 +00:00
Bill Wendling 7d7a50a0ae Improve explanation.
llvm-svn: 107207
2010-06-29 21:41:58 +00:00
Bill Wendling 1767723dbe Introducing the "linker_weak" linkage type. This will be used for Objective-C
metadata types which should be marked as "weak", but which the linker will
remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is
defined like this:

       .globl l_objc_msgSend_fixup_alloc
       .weak_definition l_objc_msgSend_fixup_alloc
       .section __DATA, __objc_msgrefs, coalesced
       .align 3
l_objc_msgSend_fixup_alloc:
        .quad   _objc_msgSend_fixup
        .quad   L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

llvm-svn: 107205
2010-06-29 21:24:00 +00:00
Dan Gohman b160ba46e8 Add a blurb about -scev-aa.
llvm-svn: 107080
2010-06-28 22:09:52 +00:00
Dan Gohman a3de0186b8 Document problems that I encountered when working on -scev-aa.
llvm-svn: 106776
2010-06-24 19:34:03 +00:00
Chris Lattner 58f3c1f863 This makes example Makefile a lot more like actual
lib/Transforms/Hello/Makefile, and prevents a lot of errors like "Assertion
`Inserted && "Pass registered multiple times!"' failed"

Patch by Gregory Petrosyan!

llvm-svn: 106471
2010-06-21 20:36:09 +00:00
Eric Christopher 75d4ecb9c3 Remove isTwoAddress from llvm.
llvm-svn: 106470
2010-06-21 20:35:09 +00:00
Chris Lattner 456102117a fix typos reported by Adam Warner!
llvm-svn: 106468
2010-06-21 20:31:30 +00:00
Eric Christopher a4f06da5f1 Another typo.
llvm-svn: 106340
2010-06-18 22:51:25 +00:00
Eric Christopher 64ae6577ba Fix typo.
llvm-svn: 106335
2010-06-18 22:33:17 +00:00
Bruno Cardoso Lopes 23f8321cbc Teach tablegen how to inherit from classes in 'defm' definitions.
The rule is simple: only inherit from a class list if they come
in the end, after the last multiclass.

llvm-svn: 106305
2010-06-18 19:53:41 +00:00
Dan Gohman 4eb4719432 Minor clarification.
llvm-svn: 106234
2010-06-17 19:23:50 +00:00
Bruno Cardoso Lopes 4d1d798736 For a tablegen expression such as !if(a,b,c), let 'a'
be evaluated for 'bit' operators

llvm-svn: 106185
2010-06-17 00:31:36 +00:00
Bruno Cardoso Lopes 77a4a56251 let the '!eq' expression support 'int' and 'bit' types
llvm-svn: 106171
2010-06-16 23:24:12 +00:00
Jakob Stoklund Olesen ec2e964fd6 Remove the local register allocator.
Please use the fast allocator instead.

llvm-svn: 106051
2010-06-15 21:58:33 +00:00
Eric Christopher 4f475d07ba Update html tutorial docs to match api changes.
llvm-svn: 105933
2010-06-14 06:09:39 +00:00
Bruno Cardoso Lopes 5f2adccc1b Teach tablegen to allow "let" expressions inside multiclasses,
providing more ways to factor out commonality from the records.

llvm-svn: 105776
2010-06-10 02:42:59 +00:00
Bruno Cardoso Lopes c4f614870f Teach tablegen to support 'defm' inside multiclasses.
llvm-svn: 105519
2010-06-05 02:11:52 +00:00
Devang Patel e89b759501 Update docs to reflect new DISubprogram elements.
llvm-svn: 105495
2010-06-04 22:49:55 +00:00
Rafael Espindola 598342accf Update the documentation, getCalleeSavedRegClasses is not required anymore.
llvm-svn: 105323
2010-06-02 14:03:11 +00:00
Nick Lewycky 9ab9a7fb29 Document aggregate operation constant expressions.
llvm-svn: 105098
2010-05-29 06:44:15 +00:00
Dale Johannesen ce52285c38 Fix Data Layout description of floating point.
llvm-svn: 104993
2010-05-28 18:54:47 +00:00
Dan Gohman aabfdb39af Fix more whitespace to be consistent with AsmPrinter.
llvm-svn: 104963
2010-05-28 17:13:49 +00:00
Dan Gohman d6a6f61fdb Fix whitespace to be more consistent with AsmPrinter's style.
llvm-svn: 104962
2010-05-28 17:07:41 +00:00
Dan Gohman 2140a74979 Eliminate the restriction that the array size in an alloca must be i32.
This will help reduce the amount of casting required on 64-bit targets.

llvm-svn: 104911
2010-05-28 01:14:11 +00:00
Dan Gohman e58f7b3c76 Fix a missing quote.
llvm-svn: 104750
2010-05-26 21:56:15 +00:00
Jim Grosbach 172aaadd20 Add entry for llvm.eh.sjlj.longjmp. PR4999.
llvm-svn: 104703
2010-05-26 16:21:41 +00:00
Chris Lattner 37c529ae68 expand on the llvm ir bitcode dox. Patch by Peter Housel!
llvm-svn: 104391
2010-05-21 22:20:54 +00:00
Tobias Grosser 4518c866b4 Update autoconf/automake versions in the documentation to match the versions used in Autogen.sh
llvm-svn: 104113
2010-05-19 07:00:17 +00:00
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