1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 22:12:57 +02:00
Commit Graph

3803 Commits

Author SHA1 Message Date
Bill Wendling
bead915338 Random cleanups and format changes.
llvm-svn: 117428
2010-10-27 01:07:41 +00:00
Duncan Sands
5e0c84786b 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
3f1683a2ce 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
96b28d2fba Make hotpatch attribute description a little less Wintel-specific.
llvm-svn: 117267
2010-10-25 16:29:03 +00:00
Charles Davis
42270b5d54 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
2a3cb0b31f Update target feature matrix for CellSPU
llvm-svn: 117255
2010-10-25 08:57:30 +00:00
Jakob Stoklund Olesen
47111fb438 Update target feature matrix for Blackfin.
llvm-svn: 117245
2010-10-24 20:04:05 +00:00
Wesley Peck
4e10e0bf01 Updating target feature matrix to indicate current MBlaze status.
llvm-svn: 117244
2010-10-24 18:50:12 +00:00
Chris Lattner
585ed2f73f broken link
llvm-svn: 117232
2010-10-24 16:24:22 +00:00
Chris Lattner
2f1a7ec5d0 add a big table with target features.
llvm-svn: 117230
2010-10-24 16:18:00 +00:00
Peter Collingbourne
e43dd89068 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
d1218c2661 Fix type in passes.
llvm-svn: 117065
2010-10-21 21:16:03 +00:00
Duncan Sands
e4c3445e85 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
88ce93b0eb 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
a8c0be5343 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
005aa1c020 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
c9709f154d 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
c2bd6d02e5 clarify that zero sized vectors are illegal, PR8340
llvm-svn: 116167
2010-10-10 18:20:35 +00:00
Nick Lewycky
4850c46aab Fix dead link.
llvm-svn: 116157
2010-10-09 21:12:29 +00:00
Nick Lewycky
564c2d6894 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
154af563cf Fixed RELEASE_28 tags.
llvm-svn: 115872
2010-10-06 23:50:30 +00:00
Tobias Grosser
eecbee3024 Fix libc++ link in release notes.
llvm-svn: 115837
2010-10-06 21:07:30 +00:00
Tobias Grosser
0285624d0a Add missing "-" to the command line.
llvm-svn: 115777
2010-10-06 11:43:06 +00:00
Duncan Sands
faa847eb2b 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
2ddf96c6b9 Update release location.
llvm-svn: 115749
2010-10-06 05:36:01 +00:00
Chris Lattner
84846b71af 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
e17e5240f0 s/The ARM has/The ARM backend has/
llvm-svn: 115584
2010-10-05 01:00:42 +00:00
Bruno Cardoso Lopes
a4542cca49 AVX intrinsics and builtins were also added to clang
llvm-svn: 115566
2010-10-04 22:07:22 +00:00
Douglas Gregor
8de125224c Spell AltiVec correctly
llvm-svn: 115560
2010-10-04 21:12:06 +00:00
Daniel Dunbar
36246f254e ReleaseNotes: Note some changes to LLVM development infrastructure.
llvm-svn: 115550
2010-10-04 20:11:41 +00:00
Daniel Dunbar
478b185756 ReleaseNotes: Note a header rename.
llvm-svn: 115549
2010-10-04 20:11:39 +00:00
Gabor Greif
d08374c3dc 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
1e19a4eadb Add KLEE 2.8 release notes.
llvm-svn: 115524
2010-10-04 17:39:47 +00:00
Daniel Dunbar
0b33e806a5 A few more random Clang release notes.
llvm-svn: 115520
2010-10-04 17:06:49 +00:00
Gabor Greif
306399ff95 minor tweaks and typos
llvm-svn: 115518
2010-10-04 17:03:49 +00:00
Devang Patel
94f87b81a1 Fix lexical block's tag number.
llvm-svn: 115516
2010-10-04 16:51:59 +00:00
Chris Lattner
2ed773a81b scheduler update
llvm-svn: 115515
2010-10-04 16:46:07 +00:00
Chris Lattner
91257c3929 another tweak
llvm-svn: 115510
2010-10-04 16:06:37 +00:00
Duncan Sands
f194a6992b 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
58d029576c Fix a bunch of typos.
llvm-svn: 115500
2010-10-04 10:04:14 +00:00
Duncan Sands
8e604c59d1 Altvec -> Altivec.
llvm-svn: 115499
2010-10-04 09:11:50 +00:00
Douglas Gregor
83b1282060 Update LLVM 2.8 release notes for Clang
llvm-svn: 115498
2010-10-04 07:02:35 +00:00
Chris Lattner
4acab6fcf3 checkpoint, the release notes are now feature complete.
llvm-svn: 115495
2010-10-04 04:39:25 +00:00
Chris Lattner
43de760351 checkpoint
llvm-svn: 115494
2010-10-04 03:58:12 +00:00
Chris Lattner
5031184eb9 checkpoint.
llvm-svn: 115489
2010-10-04 02:42:39 +00:00
Chris Lattner
0b0f19a5ac write Major Changes and Removed Features.
llvm-svn: 115486
2010-10-04 01:29:06 +00:00
Chris Lattner
637a286155 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
21e6a57512 add a bunch of stuff that works with 2.8
llvm-svn: 115483
2010-10-03 23:09:03 +00:00
Chris Lattner
13dd2ce893 random updates
llvm-svn: 115427
2010-10-02 22:44:15 +00:00
Chris Lattner
18588cdf43 checkpoint, don't expect this to read right yet. :)
llvm-svn: 115426
2010-10-02 21:59:30 +00:00
Chris Lattner
fae92bab87 add a bunch more notes. I survived.
llvm-svn: 115418
2010-10-02 19:32:01 +00:00
Devang Patel
76cc74b5bc Fix block descriptor documentation.
llvm-svn: 115362
2010-10-01 22:45:00 +00:00
Devang Patel
ca4e525d59 Fix dbg_declare signature in document.
llvm-svn: 115326
2010-10-01 19:22:16 +00:00
Devang Patel
2a93615364 Fix DIDerived type fields' type in document.
llvm-svn: 115325
2010-10-01 19:19:30 +00:00
Chris Lattner
2dfa30152c add a note
llvm-svn: 115297
2010-10-01 06:34:49 +00:00
Dale Johannesen
80b0b36c10 Fix pasto.
llvm-svn: 115261
2010-10-01 01:07:02 +00:00
Dale Johannesen
e6f908a6ab Add some doc for the x86mmx type.
llvm-svn: 115255
2010-10-01 00:48:59 +00:00
Duncan Sands
f3c4831b1b Flesh out the dragonegg section.
llvm-svn: 115179
2010-09-30 17:37:34 +00:00
Chris Lattner
2ea322b13d checkpoint notes
llvm-svn: 115152
2010-09-30 16:31:33 +00:00
Chris Lattner
5e3655cd74 fix incorrect link!
llvm-svn: 115124
2010-09-30 01:12:09 +00:00
Chris Lattner
5235c13c2a add a bunch of entries for external projects.
llvm-svn: 115112
2010-09-30 00:34:43 +00:00
Duncan Sands
f66899560c 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
7d85c2b8f6 add some random notes.
llvm-svn: 115032
2010-09-29 07:25:03 +00:00
Chris Lattner
f823b68060 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
f13b1d5c18 prepare for new content.
llvm-svn: 115030
2010-09-29 05:30:03 +00:00
Chris Lattner
e97177677b reapply developer policy changes after discussion.
llvm-svn: 114886
2010-09-27 21:17:15 +00:00
Oscar Fuentes
9297448bed 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
aa1eaa4ac7 temporarily revert developer policy change as a courtesy to vikram.
llvm-svn: 114792
2010-09-25 15:53:35 +00:00
Chris Lattner
7c06222990 remove an obsolete section
llvm-svn: 114701
2010-09-23 22:34:49 +00:00
Andrew Trick
0f7d9dc391 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
efdfb58d99 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
2fb18abd7f add lldb and libc++ code owners.
llvm-svn: 114669
2010-09-23 17:27:54 +00:00
Chris Lattner
547aed434e random cruft in my tree.
llvm-svn: 114387
2010-09-21 04:03:39 +00:00
Michael J. Spencer
37c9ae6c7f docs: Tweak wording.
llvm-svn: 114271
2010-09-18 08:32:32 +00:00
Michael J. Spencer
df84552a08 docs: Update GettingStartedVS to reflect current state.
llvm-svn: 114167
2010-09-17 06:33:20 +00:00
Oscar Fuentes
371e96c67a Updated GettingStartedVS.html to reflect current state.
Reorganized it too.

llvm-svn: 114151
2010-09-17 02:17:13 +00:00
Oscar Fuentes
7099ae0835 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
f1a7145d26 Fix formatting tags.
llvm-svn: 113758
2010-09-13 17:39:35 +00:00
Bob Wilson
25938c2b72 Document NEON intrinsic changes for 2.8.
llvm-svn: 113757
2010-09-13 17:37:55 +00:00
Chris Lattner
b769a3afde 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
f1418ef333 Add documentation for llvm-diff.
llvm-svn: 113303
2010-09-07 23:10:21 +00:00
Chris Lattner
faf356777a add note
llvm-svn: 113164
2010-09-06 19:14:40 +00:00
Chris Lattner
091212f130 some random notes.
llvm-svn: 113118
2010-09-05 20:49:45 +00:00
Chris Lattner
e2ef5b78ff this is a release note worthy change.
llvm-svn: 112907
2010-09-02 23:22:50 +00:00
Chris Lattner
67bb18f68c 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
070f76fc43 update the tutorial to use CreateFAdd to create fp operations.
llvm-svn: 112733
2010-09-01 20:09:20 +00:00
Jakob Stoklund Olesen
dc2f83c287 Stack slot access methods are in TargetInstrInfo.
llvm-svn: 112653
2010-08-31 22:01:07 +00:00
Duncan Sands
ca7a58c6a3 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
d261381db5 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
3e49fe09db 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
d16c80e27f 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
ecf276b787 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
163660135e 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
b5bb849f1a 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
982a804b20 fix a broken link
llvm-svn: 111326
2010-08-17 23:26:04 +00:00
Chris Lattner
c61aa15b46 add some  '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
9814c3c7a9 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
d8b4e8da0f CMake: documented testing procedure
llvm-svn: 110559
2010-08-09 02:49:39 +00:00
Rafael Espindola
d25e9dbc11 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
c3b766cc93 s/libLLVMgold/LLVMgold/g
llvm-svn: 110552
2010-08-08 21:14:26 +00:00
Peter Collingbourne
926fe36804 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
68f5d1e7fa Document results of PR7762.
llvm-svn: 110373
2010-08-05 20:38:39 +00:00
Owen Anderson
59e2dd4f8d Add a note about the changing pass registration interface.
llvm-svn: 110231
2010-08-04 18:27:08 +00:00
Dan Gohman
1eb3e12da2 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
b29ac42863 Remove a link which is no longer relevant.
llvm-svn: 110202
2010-08-04 15:59:16 +00:00
Torok Edwin
33f893ec69 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
10c4f9d6bd Add an atomic lowering pass
llvm-svn: 110113
2010-08-03 16:19:16 +00:00
Daniel Dunbar
87c74ac6e5 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
ef6b6da416 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
f2db3d61a9 Fix word choice.
llvm-svn: 109995
2010-08-01 23:18:45 +00:00
John Criswell
bc5393a5fe 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
7ae22e4471 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
48fc43e800 Document BUILD_EXAMPLES makefile variable
llvm-svn: 109346
2010-07-24 17:54:00 +00:00
Tobias Grosser
604a50cd71 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
b36d01c1b6 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
e380b82a47 First stab at updating the documentation for INITIALIZE_PASS().
llvm-svn: 109055
2010-07-21 22:58:07 +00:00
Dan Gohman
fc3ee085a0 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
538de44e5c 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
995ca8288c appease Validator
llvm-svn: 109007
2010-07-21 10:22:41 +00:00
Gabor Greif
c1c01f33ec add info on operand rotation
llvm-svn: 109006
2010-07-21 10:20:08 +00:00
Jakob Stoklund Olesen
44949b2e1b Remove the isMoveInstr() hook.
llvm-svn: 108567
2010-07-16 22:35:46 +00:00
Benjamin Kramer
da3e6cdb26 Don't pass StringRef by reference.
llvm-svn: 108366
2010-07-14 22:38:02 +00:00
Dan Gohman
546332a032 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
4fca0435b3 Fix compile unit in example. Thanks Renato Golin!
llvm-svn: 108246
2010-07-13 16:53:20 +00:00
Benjamin Kramer
9af04e360e HTML cleanup and validation.
llvm-svn: 108239
2010-07-13 12:26:09 +00:00
Duncan Sands
710b57b4b1 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
a28aa26057 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
226e208014 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
896788595d 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
65635f9231 Update the docs for debugging JITed code with GDB.
llvm-svn: 107808
2010-07-07 20:16:45 +00:00
Dan Gohman
2a08e2ce81 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
eb15d2084a 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
a59e143fec Closing tags start with slashes.
llvm-svn: 107699
2010-07-06 21:07:14 +00:00
Chris Lattner
3139b75beb minor typo
llvm-svn: 107696
2010-07-06 20:51:35 +00:00
Nick Lewycky
529cb5fcd1 Alphabetize the list of function parameters.
llvm-svn: 107680
2010-07-06 18:24:09 +00:00
Duncan Sands
31db6c2247 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
33f0f11376 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
58791300a3 indmemrem and lowerallocs are gone.
llvm-svn: 107587
2010-07-04 17:36:43 +00:00
Dan Gohman
de933eddb5 Document that BasicAA respects noalias, while InterproceduralBasicAA
does not.

llvm-svn: 107546
2010-07-02 23:52:36 +00:00
Dan Gohman
4848c9631b 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
7a6a35dbf7 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
04beeefa61 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
90b6422f2f 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
59ef9bcc6d Revert r107205 and r107207.
llvm-svn: 107215
2010-06-29 22:34:52 +00:00
Bill Wendling
462de20dd8 Improve explanation.
llvm-svn: 107207
2010-06-29 21:41:58 +00:00
Bill Wendling
05a4c0b1f2 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
ccdfbe251d Add a blurb about -scev-aa.
llvm-svn: 107080
2010-06-28 22:09:52 +00:00
Dan Gohman
47d999b275 Document problems that I encountered when working on -scev-aa.
llvm-svn: 106776
2010-06-24 19:34:03 +00:00
Chris Lattner
d7df3e9c5c 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
68b77d45c2 Remove isTwoAddress from llvm.
llvm-svn: 106470
2010-06-21 20:35:09 +00:00