Jay Foad
558d3762bc
Mention all API changes I've made since 2.9 was branched.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135142 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-14 09:19:05 +00:00
Tobias Grosser
d475c10508
VectorType is also a SequentialType
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134979 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-12 11:37:02 +00:00
Chris Lattner
1afcace3a3
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09 17:41:24 +00:00
Cameron Zwarich
abc43e69ea
Use add instead of accumulate.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134752 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-08 22:13:55 +00:00
Cameron Zwarich
33390848a7
Add an intrinsic and codegen support for fused multiply-accumulate. The intent
...
is to use this for architectures that have a native FMA instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134742 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-08 21:39:21 +00:00
Jakub Staszak
29057766f7
Add documenation about "branch_weight" metadata and __builtin_expect instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134517 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-06 18:31:02 +00:00
Owen Anderson
f1ac465b67
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134265 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-01 21:52:38 +00:00
Duncan Sands
eb7fe5df1b
The enum was moved to ISDOpcodes.h.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134134 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-30 06:37:07 +00:00
Evan Cheng
0b0669a056
Add missing operand. rdar://9694169
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134078 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-29 17:14:00 +00:00
Dan Gohman
129bd56eeb
Document nonlazybind.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133160 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-16 16:03:13 +00:00
Jakob Stoklund Olesen
f28987b76e
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133105 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-15 23:28:14 +00:00
Argyrios Kyrtzidis
81df089f86
Document ADT/PackedVector.h in "Programmer's Manual" doc.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133077 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-15 19:56:01 +00:00
Bruno Cardoso Lopes
9a767330f5
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132976 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-14 04:58:37 +00:00
Chris Lattner
83f9467436
mention graph vis isn't available in Release builds.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132916 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-13 15:59:35 +00:00
Chad Rosier
7b5c20bbb8
Typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132730 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-07 20:03:13 +00:00
Andrew Trick
21ac25144d
Corrections and additional information for "Creating and LLVM Project"
...
documentation. This should now reflect the current state of LLVM Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132527 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-03 02:20:48 +00:00
Andrew Trick
0fb684dae2
whitespace
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132526 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-03 02:16:53 +00:00
Devang Patel
f729e91353
Fix html formatting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132345 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-31 18:06:14 +00:00
Devang Patel
e0bdc59321
Clarify documentation and remove guarantees that are not fulfilled.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132344 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-31 17:45:27 +00:00
Chris Lattner
78e78b52c7
replace the intro tutorial from 2004 with a more recent work.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132310 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-30 03:36:58 +00:00
John McCall
d7c1086201
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132253 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-28 07:45:59 +00:00
Chad Rosier
e6291d02d1
Clean out the 2.9 Release Notes. Mostly limited to What's New in LLVM
...
and enhancements in sub-project status updates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132227 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-27 22:50:46 +00:00
Chad Rosier
f94c9c136b
Add change of crc32 intrinsic to release notes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132212 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-27 20:13:10 +00:00
Dan Gohman
08b280b0fe
Fix copy+pastos.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132168 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-27 00:36:31 +00:00
Dan Gohman
b0b0da72e9
Update documentation: -basicaa does chaining these days.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132010 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-24 22:01:32 +00:00
Dan Gohman
4e9011cbac
Document llvm.exp and llvm.pow.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131921 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-23 21:13:03 +00:00
Chris Lattner
01ebd566fa
document thiscall, PR9101
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131873 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-22 22:28:47 +00:00
Chris Lattner
8645d1acc0
insertvalue takes a variable number of arguments, document this, fixing PR9935.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131850 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-22 07:18:08 +00:00
Chad Rosier
55756e0d6d
Correct typos in TestingGuide.html
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131546 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-18 18:07:16 +00:00
Nick Lewycky
64f9fb1975
Fix errors in this llvm ir example.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131416 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-16 19:29:30 +00:00
Akira Hatanaka
325e66d81a
1. Keep lines in 80 columns.
...
2. Remove unused function.
3. Correct indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131028 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-06 22:11:29 +00:00
Bill Wendling
3f58a513e1
Document the automatic alias printing of InstAliases.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130889 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-04 23:40:14 +00:00
Devang Patel
464f4ef2bd
Use llvm.dbg.cu named metadata to collect compile units.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130756 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-03 16:18:28 +00:00
Oscar Fuentes
d4b0c6c3fa
Update instructions: LLVM.cmake is now LLVMConfig.cmake
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130631 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-01 02:12:20 +00:00
NAKAMURA Takumi
780cc5f663
docs/doxygen.css: Tweak padding on memdoc.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130493 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-29 09:59:12 +00:00
NAKAMURA Takumi
ca8d63b6fb
docs/doxygen.css: Tweak style for readability.
...
A few styles are brought from http://llvm.org/test-doxygen/api/api.css
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130333 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-27 21:53:35 +00:00
Mikhail Glushenkov
fb88665d97
Regenerate.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130091 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-24 14:17:37 +00:00
Andrew Trick
1611bcd6ac
Comment edit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130047 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-23 03:27:19 +00:00
NAKAMURA Takumi
f5af6ada3b
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130040 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-23 00:30:22 +00:00
Devang Patel
5e06bb83f4
Let front-end tie subprogram declaration with subprogram definition directly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130028 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-22 23:10:17 +00:00
NAKAMURA Takumi
074eeaae30
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>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129901 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-21 01:52:00 +00:00
NAKAMURA Takumi
b5f74914cd
docs/Passes.html: Fix a garbage.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129900 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-21 01:32:19 +00:00
NAKAMURA Takumi
05d0265fef
docs: Use <Hn> as Heading elements instead of <DIV class="doc_foo">.
...
H1 ... doc_title
H2 ... doc_section
H3 ... doc_subsection
H4 ... doc_subsubsection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129736 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-18 23:59:50 +00:00
NAKAMURA Takumi
06c6d9aeb0
docs: Redefine Heading elements as below;
...
H1 ... Title (and might be Chapter in future)
H2 ... Section
H3 ... Subsection
H4 ... Sub-subsection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129683 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-18 01:17:51 +00:00
Devang Patel
e9db5e29e3
Introduce support to encode Objective-C property information in debugging information generated for an interface.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129624 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-16 00:11:51 +00:00
Douglas Gregor
3e03e5d2a9
Fix some broken links, from Matthieu Monrocq
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129609 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-15 21:21:31 +00:00
Chris Lattner
7a2bdde0a0
Fix a ton of comment typos found by codespell. Patch by
...
Luis Felipe Strano Moraes!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-15 05:18:47 +00:00
Andrew Trick
b57b06647e
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129507 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-14 05:05:36 +00:00
Jay Foad
d61895a4be
Fix typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129437 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-13 13:03:56 +00:00
Dan Gohman
ca4cac4c74
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129404 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-12 23:05:59 +00:00