1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00
Commit Graph

5276 Commits

Author SHA1 Message Date
Nick Kledzik
3e803171af YAML I/O add support for validate()
MappingTrait template specializations can now have a validate() method which 
performs semantic checking. For details, see <http://llvm.org/docs/YamlIO.html>.

llvm-svn: 195286
2013-11-21 00:28:07 +00:00
Bill Wendling
6373ea3e86 Update to reflect the next release.
llvm-svn: 195235
2013-11-20 10:10:50 +00:00
Rafael Espindola
5d21406399 Support multiple COFF sections with the same name but different COMDAT.
This is the first step to fix pr17918.

It extends the .section directive a bit, inspired by what the ELF one looks
like. The problem with using linkonce is that given

.section foo
.linkonce....

.section foo
.linkonce

we would already have switched sections when getting to .linkonce. The cleanest
solution seems to be to add the comdat information in the .section itself.

llvm-svn: 195148
2013-11-19 19:52:52 +00:00
John Thompson
844100cb0c YAML I/O - Added default trait support for std:string. Making another attempt at this, this time doing a clean build on Linux, and running the LLVM, clang, and extra tests, to try to make sure there's no problems.
llvm-svn: 195134
2013-11-19 17:28:21 +00:00
Ahmed Bougacha
bd4c7e426e Docs: tweak code-block spacing.
llvm-svn: 195049
2013-11-18 22:26:59 +00:00
Paul Robinson
27ef03dc70 The 'optnone' attribute means don't inline anything into this function
(except functions marked always_inline).
Functions with 'optnone' must also have 'noinline' so they don't get
inlined into any other function.

Based on work by Andrea Di Biagio.

llvm-svn: 195046
2013-11-18 21:44:03 +00:00
Daniel Sanders
4826d2b987 [mips][msa] Add MSA to the release notes.
llvm-svn: 195001
2013-11-18 10:38:47 +00:00
Ahmed Bougacha
d1d34b8908 TableGen: Generate an enum for all named Operand types in tblgen'd InstrInfo.
llvm-svn: 194978
2013-11-17 21:24:41 +00:00
Ahmed Bougacha
461887f4d3 Docs: Clearly separate Operand-related paragraphs.
llvm-svn: 194977
2013-11-17 21:24:37 +00:00
Ahmed Bougacha
d5bc579e67 Docs: Fix typo: NoIntinerary -> NoItinerary.
llvm-svn: 194976
2013-11-17 21:24:34 +00:00
Matt Arsenault
733e6d6386 Mention address space related changes in release notes.
llvm-svn: 194904
2013-11-16 00:36:46 +00:00
Matt Arsenault
81cef6643a Fix typos.
I somehow didn't notice before that the examples
for addrspacecast use the wrong syntax for addrspace.

llvm-svn: 194868
2013-11-15 22:43:50 +00:00
Justin Holewinski
bdf566dd2a [NVPTX] Fix type in usage doc
llvm-svn: 194821
2013-11-15 16:08:49 +00:00
Justin Holewinski
e06f1e4ace [NVPTX] Update the usage document
llvm-svn: 194812
2013-11-15 13:02:10 +00:00
Renato Golin
17984e763c Adding some info about stability of ARM boards
Patch by Mikael Lyngvig

llvm-svn: 194794
2013-11-15 08:42:14 +00:00
Matt Arsenault
21f695f0ab Fix grammar in addrspacecast description
llvm-svn: 194785
2013-11-15 05:44:56 +00:00
Matt Arsenault
9921608896 Add addrspacecast instruction.
Patch by Michele Scandale!

llvm-svn: 194760
2013-11-15 01:34:59 +00:00
Paul Robinson
602bf7c61a Typos. (Test commit.)
llvm-svn: 194720
2013-11-14 18:47:23 +00:00
Kai Nacke
7ce6005736 Add external project LDC to release notes.
LDC, the LLVM-based D compiler, is already using LLVM 3.4.

llvm-svn: 194665
2013-11-14 05:57:40 +00:00
Nick Kledzik
cbecad4abd Add simple support for tags in YAML I/O
llvm-svn: 194644
2013-11-14 00:59:59 +00:00
Hans Wennborg
f386ce44b5 Revert my CMake patches concerning building with /MT (r194589, r194596)
Reid pointed out we already have LLVM_USE_CRT_{buildtype} to set it.

llvm-svn: 194604
2013-11-13 20:29:10 +00:00
Hans Wennborg
2390fdb13b CMake: make building with /MT an option instead of always forcing it
for release builds.

This is a follow-up to r194589. Aaron pointed out that building
libraries with /MT and using them in an application that uses a
different run-time library can be a bad idea.

Move the option to build with /MT behind a CMake option so it can be
turned on selectively, such as when building the toolchain installer.

llvm-svn: 194596
2013-11-13 19:12:02 +00:00
Matt Arsenault
eebb9d15c4 Add new FileCheck feature to 3.4 release notes
llvm-svn: 194456
2013-11-12 08:05:30 +00:00
Sylvestre Ledru
8e2d4172bf Update of the 'Code Review' page. The link is now called 'Create Diff' instead of 'Create Revision'
llvm-svn: 194378
2013-11-11 14:27:56 +00:00
Matt Arsenault
59f495c8a7 Allow multiple check prefixes in FileCheck.
This is useful if you want to run multiple variations
of a single test, and the majority of check lines
should be the same.

llvm-svn: 194343
2013-11-10 02:04:09 +00:00
Chandler Carruth
052823c572 Add the fact that we anticipate switching to use (some subset of) C++11
after the 3.4 release to the release notes. See the *lengthy* llvmdev
and cfe-dev threads on this subject. There will be more emails,
discussion and announcements, but I want to make noise in as many places
as I can to get everyone's concerns voiced and understood.

llvm-svn: 194183
2013-11-07 00:23:08 +00:00
Peter Zotov
d7002e4dd1 [OCaml] (PR10016) Add a few missing line in OCamlLangImpl2.rst
Original patch by Damien Schoof

llvm-svn: 194067
2013-11-05 12:14:04 +00:00
Sean Silva
f6760b61dc [docs] Add link to 32-bit ARM ELF supplement.
llvm-svn: 194011
2013-11-04 19:43:36 +00:00
Rafael Espindola
af18aaf051 Remove linkonce_odr_auto_hide.
linkonce_odr_auto_hide was in incomplete attempt to implement a way
for the linker to hide symbols that are known to be available in every
TU and whose addresses are not relevant for a particular DSO.

It was redundant in that it all its uses are equivalent to
linkonce_odr+unnamed_addr. Unlike those, it has never been connected
to clang or llvm's optimizers, so it was effectively dead.

Given that nothing produces it, this patch just nukes it
(other than the llvm-c enum value).

llvm-svn: 193865
2013-11-01 17:09:14 +00:00
Andrew Trick
48c4e0c740 whitespace
llvm-svn: 193765
2013-10-31 17:18:07 +00:00
Benjamin Kramer
80500b8f5b fix RST reference in Writing an LLVM Pass
Currently, instead of showing up as link, it is rendered as

  ...of FunctionPass <writing-an-llvm-pass-FunctionPass>. The...

PR17733. Patch by Tay Ray Chuan!

llvm-svn: 193698
2013-10-30 17:09:32 +00:00
Benjamin Kramer
76237a9923 Fix common typos in the docs.
llvm-svn: 193632
2013-10-29 17:53:27 +00:00
Rafael Espindola
ccf00b3446 Clarify that GlobalVariables definitions must have an initializer.
llvm-svn: 193609
2013-10-29 13:44:11 +00:00
Bill Wendling
64bf363b8a Remove stray '_'.
llvm-svn: 193543
2013-10-28 21:43:54 +00:00
Bill Wendling
2545f0a72c Use the correct reference. Spotted by Sean Silva.
llvm-svn: 193542
2013-10-28 21:43:11 +00:00
Bill Wendling
4467c8b164 A small grammar-os fixed.
llvm-svn: 193496
2013-10-27 05:09:12 +00:00
Bill Wendling
11c70c3a5d Update to current output.
PR14039

llvm-svn: 193494
2013-10-27 04:50:34 +00:00
Bill Wendling
f156d950c8 Fix Sphinx warning.
llvm-svn: 193493
2013-10-27 04:25:02 +00:00
Bill Wendling
1ded523ec2 Update to specify that both metadata and label types aren't proper return types.
PR15447

llvm-svn: 193492
2013-10-27 04:19:29 +00:00
Bill Wendling
1f3a829b10 Update the Python version. And Perl isn't used anymore.
PR17608

llvm-svn: 193491
2013-10-27 04:02:21 +00:00
Bill Wendling
7e4552e5d1 Update link.
PR17608

llvm-svn: 193490
2013-10-27 03:57:10 +00:00
Shuxin Yang
eb29e658a0 Revert r193251 : Use address-taken to disambiguate global variable and indirect memops.
llvm-svn: 193489
2013-10-27 03:08:44 +00:00
John Thompson
551080bf52 Reverting my r193344 checkin due to build breakage.
llvm-svn: 193350
2013-10-24 14:52:56 +00:00
John Thompson
d6f9322368 Added std::string as a built-in type for mapping.
llvm-svn: 193344
2013-10-24 13:36:58 +00:00
Shuxin Yang
45a453cafe Use address-taken to disambiguate global variable and indirect memops.
Major steps include:
 1). introduces a not-addr-taken bit-field in GlobalVariable
 2). GlobalOpt pass sets "not-address-taken" if it proves a global varirable 
    dosen't have its address taken.
 3). AA use this info for disambiguation. 

llvm-svn: 193251
2013-10-23 17:28:19 +00:00
Bill Wendling
e170c598b9 Write a simple description of the 'target triple' directive. This should be expanded. PR8976.
llvm-svn: 193014
2013-10-18 23:41:25 +00:00
Bill Wendling
d9da479b71 Clarify that an alignment of 0 or 1 on a mem* intrinsic means 'no alignment'.
llvm-svn: 193012
2013-10-18 23:26:55 +00:00
Bill Wendling
3f73b2d106 Remove reference to obsolete arguments.
llvm-svn: 193009
2013-10-18 23:11:25 +00:00
Bill Wendling
e52d569e9a Update to reflect current GC APIs and usage. The example code is taken from the Erlang GC implementation.
llvm-svn: 193008
2013-10-18 23:09:06 +00:00
Alp Toker
e588886203 Developer policy amendment regarding confidentiality notices
Thanks to Daniel Berlin and Nadav Rotem for feedback and rewording!

Discussion:
  http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20131014/191677.html

Reviewed by: nrotem, dberlin

llvm-svn: 192958
2013-10-18 08:45:43 +00:00
Rafael Espindola
a9c4f02db3 Remove an outdated statement.
Aliases now have their own section where we document which linkages they can
have.

llvm-svn: 192825
2013-10-16 18:37:51 +00:00
Rafael Espindola
69e679267f Add more documentation about the TargetStreamer interface.
llvm-svn: 192796
2013-10-16 14:54:39 +00:00
David Majnemer
e0726b1a2f docs: Remove incompatibility with Solaris shell
There doesn't seem to be a need in checking if a directory exists if we
will just rm -rf it once we affirm that it does.  Instead, just blindly
try to delete it.

This fixes PR17541.

llvm-svn: 192679
2013-10-15 08:30:07 +00:00
Renato Golin
e36258038c Add warning about CHECK-DAG with variable definition
llvm-svn: 192479
2013-10-11 18:50:22 +00:00
Bill Wendling
59f3477f4f Add missing releases.
llvm-svn: 192304
2013-10-09 17:37:04 +00:00
Rafael Espindola
a6f424f877 Add a paragraph about MCTargetStreamer.
llvm-svn: 192265
2013-10-09 02:05:08 +00:00
Rafael Espindola
7630608c08 Fix typo.
Thanks to Sean Silva for noticing it.

llvm-svn: 192102
2013-10-07 13:57:59 +00:00
Rafael Espindola
499aaf305a Add support for aliases with linkonce_odr.
This will be used to extend constructor aliases in clang.

llvm-svn: 192066
2013-10-06 15:10:43 +00:00
Sylvestre Ledru
804e76cb31 Fix a typo in the documentation. Thanks to Diana Vasile for the patch
llvm-svn: 191752
2013-10-01 13:17:09 +00:00
Daniel Sanders
c054f26499 [mips] Fix a broken link to mips.com in the documentation.
It now points to the equivalent page on imgtec.com

llvm-svn: 191658
2013-09-30 09:35:37 +00:00
Renato Golin
885b54ffc7 Clarifying doc about cross-compiling
llvm-svn: 191561
2013-09-27 21:14:54 +00:00
Renato Golin
0aee2a5735 Add links to cross-compilation docs from getting started
llvm-svn: 191425
2013-09-26 08:57:07 +00:00
Peter Collingbourne
80b5b03595 Add a paragraph on prefix data layout.
llvm-svn: 191219
2013-09-23 20:14:21 +00:00
Rafael Espindola
43a8a89305 Remove remaining references to -O4.
Thanks to Hal Finkel for noticing it.

llvm-svn: 191216
2013-09-23 19:50:59 +00:00
Peter Collingbourne
cf3b1a2910 Implement function prefix data as an IR feature.
Previous discussion:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/063909.html

Differential Revision: http://llvm-reviews.chandlerc.com/D1191

llvm-svn: 190773
2013-09-16 01:08:15 +00:00
Nuno Lopes
00eb997beb typo fix: use BUILD_ARCHIVE to build .a libs and not ARCHIVE_LIBRARY
llvm-svn: 190696
2013-09-13 15:01:54 +00:00
Rui Ueyama
4c059baf98 Typo fixes.
llvm-svn: 190569
2013-09-12 01:43:21 +00:00
Nick Lewycky
25dd42b1f8 Fix anachronism/typo in syntax of declaration of llvm.va_start.
llvm-svn: 190552
2013-09-11 22:04:52 +00:00
Rui Ueyama
85d68da178 Fix typo
llvm-svn: 190492
2013-09-11 05:22:01 +00:00
Sean Silva
2ae54d7a1a [docs] Fix Sphinx warning.
Adornments need to be at least as long as the thing they adorn.

llvm-svn: 190327
2013-09-09 19:13:28 +00:00
Sean Silva
5df4104f79 [docs] Fix some Sphinx toctree warnings.
llvm-svn: 190326
2013-09-09 19:09:00 +00:00
Sean Silva
f8b79cb122 [docs] Some typographical fixes.
llvm-svn: 190324
2013-09-09 19:05:03 +00:00
Renato Golin
97a86524f7 Cross-compilation doc
llvm-svn: 190282
2013-09-08 20:44:48 +00:00
Vincent Lejeune
b888e36466 TableGen: Enumerate Schedule Model too.
llvm-svn: 189839
2013-09-03 19:43:28 +00:00
Chandler Carruth
282328faed Nuke the hilariously out of date suggestion to unpack llvm-gcc 4.2 as
part of getting started with LLVM.

The LLVM getting started document is in woeful need of attention. I may
get to some of this, but some random notes for folks interested:

1) We need to separate the getting started steps for folks who are
   interested in the core LLVM libs and nothing else, folks interested
   in a nifty C++ toolchain and nothing else, and folks interested in
   both.
2) We should include documentation for both release archives, svn, and
   git in equal portion, and we should document all of the various
   repositories of interest: llvm, clang, clang-tools-extra,
   compiler-rt, lld, libcxx, test-suite.
3) We should document the CMake build. We should probably document the
   CMake build first, and give a fall-back set of docs for the Makefile
   build for the use cases where that is still the preferred solution.
   This would more closely match the use cases that folks in the open
   source community are likely to have, and would remove a point of
   discrepancy between Linux, Windows, and Mac instructions.
4) Probably a ton of other modernization stuff that I've not thought of
   here.

Anyways, if anyone at all is interested, please help clean up this
document. It is much needed.

llvm-svn: 189732
2013-09-01 23:42:27 +00:00
Chris Lattner
4fe35f8960 Revert r189704, which removed the guidance about not duplicating doc comments.
This is under active discussion.

llvm-svn: 189730
2013-09-01 15:48:08 +00:00
Chris Lattner
facd9ef8f5 Remove the suggestion to not duplicate comments in header and
implementation files.  While doc generation systems don't need this,
humans do benefit from it.  Not everyone reads all code through doxygen.

llvm-svn: 189704
2013-08-30 23:06:20 +00:00
Manman Ren
1dfca52e9e Add unique identifier field to Composite Types and Format.
llvm-svn: 189593
2013-08-29 17:07:49 +00:00
Michael Gottesman
1659d8245b [doxygen] Use correct variable names for external variable configuration and make EXTRA_SEARCH_MAPPINGS a "dumb" variable.
I do not think the massaging that I was doing for EXTRA_SEARCH_MAPPINGS was
truly necessary.

llvm-svn: 189522
2013-08-28 21:55:26 +00:00
Michael Gottesman
fb1d3c4af1 [doxygen] Added support for doxygen external search.
llvm-svn: 189507
2013-08-28 20:28:35 +00:00
Michael Gottesman
21b125f563 [cmake] Created an aggregate doxygen target for generating doxygen documentation for llvm/all subprojects. Renamed llvm's doxygen generation command to doxygen-llvm.
llvm-svn: 189506
2013-08-28 20:28:32 +00:00
Manuel Klimek
cc66f54baf Include a clearer policy about what's ok/nok to speed up code reviews.
llvm-svn: 189210
2013-08-26 07:29:08 +00:00
Michael Gottesman
8f0fc4c368 [autotools->cmake] Enable generation of doxygen documentation via cmake.
I am going to add in a subsequent patch support for generating the llvm
manpage.

llvm-svn: 189164
2013-08-24 07:25:21 +00:00
Andrea Di Biagio
b486212f5a Add function attribute 'optnone'.
This function attribute indicates that the function is not optimized
by any optimization or code generator passes with the 
exception of interprocedural optimization passes.

llvm-svn: 189101
2013-08-23 11:53:55 +00:00
Andrew Kaylor
0a1de947a9 Adding a document to describe the MCJIT execution engine implementation.
llvm-svn: 188943
2013-08-21 22:15:09 +00:00
Hal Finkel
8f395a803a Add a llvm.copysign intrinsic
This adds a llvm.copysign intrinsic; We already have Libfunc recognition for
copysign (which is turned into the FCOPYSIGN SDAG node). In order to
autovectorize calls to copysign in the loop vectorizer, we need a corresponding
intrinsic as well.

In addition to the expected changes to the language reference, the loop
vectorizer, BasicTTI, and the SDAG builder (the intrinsic is transformed into
an FCOPYSIGN node, just like the function call), this also adds FCOPYSIGN to a
few lists in LegalizeVector{Ops,Types} so that vector copysigns can be
expanded.

In TargetLoweringBase::initActions, I've made the default action for FCOPYSIGN
be Expand for vector types. This seems correct for all in-tree targets, and I
think is the right thing to do because, previously, there was no way to generate
vector-values FCOPYSIGN nodes (and most targets don't specify an action for
vector-typed FCOPYSIGN).

llvm-svn: 188728
2013-08-19 23:35:46 +00:00
Dmitri Gribenko
c87ccab92e docs: command guide: cleanups, no text changes
llvm-svn: 188627
2013-08-18 08:32:32 +00:00
Daniel Dunbar
657fb30f68 [typo] An LLVM.
llvm-svn: 188589
2013-08-16 23:30:19 +00:00
Benjamin Kramer
d5fd126b28 Sphinx refuses to render this code block. Try adding a newline.
llvm-svn: 188382
2013-08-14 16:18:47 +00:00
Tim Northover
c92df38447 Add the C99 hex-float assembly syntax to our extension document.
As Ben pointed out, GAS doesn't support this syntax so we should give at least
some warning that it might not be portable.

llvm-svn: 188377
2013-08-14 15:27:20 +00:00
Michael Gottesman
7203dd4b96 [stack protector] Fixed typo.
llvm-svn: 188195
2013-08-12 19:44:09 +00:00
Michael Gottesman
e32ebb94bd [stackprotector] Added intrinsic llvm.stackprotectorcheck.
llvm-svn: 188191
2013-08-12 18:35:32 +00:00
Daniel Dunbar
60802b33e2 [docs] Update TestingGuide's note on how to run with Valgrind.
llvm-svn: 188097
2013-08-09 19:39:48 +00:00
Andrea Di Biagio
419d3d2098 Add description of function attribute 'minsize' in LangRef.rst.
llvm-svn: 188091
2013-08-09 18:42:18 +00:00
Daniel Dunbar
f46311361c [lit] Change --show-{tests,suites} to exit after printing.
- This is a more sensible behavior than printing and also running tests.

llvm-svn: 188009
2013-08-08 20:59:25 +00:00
Daniel Dunbar
afca64a31c [lit] Remove --repeat option, which wasn't that useful.
llvm-svn: 188008
2013-08-08 20:59:20 +00:00
Hal Finkel
bdc7aa32c1 Add ISD::FROUND for libm round()
All libm floating-point rounding functions, except for round(), had their own
ISD nodes. Recent PowerPC cores have an instruction for round(), and so here I'm
adding ISD::FROUND so that round() can be custom lowered as well.

For the most part, this is straightforward. I've added an intrinsic
and a matching ISD node just like those for nearbyint() and friends. The
SelectionDAG pattern I've named frnd (because ISD::FP_ROUND has already claimed
fround).

This will be used by the PowerPC backend in a follow-up commit.

llvm-svn: 187926
2013-08-07 22:49:12 +00:00
Rafael Espindola
f1f91213ec Add the common begin/end naming convention to the coding standard.
llvm-svn: 187902
2013-08-07 19:34:37 +00:00
Sean Silva
7a22552050 [LangRef] Alphabetize function attribute listing.
No content change.

Patch by Andrea Di Biagio!

llvm-svn: 187811
2013-08-06 19:34:37 +00:00
Rafael Espindola
ec284fec38 Add a release not about llvm-ar.
Thanks to Bill Wendling for the reminder.

llvm-svn: 187794
2013-08-06 13:16:28 +00:00
Bill Wendling
1ce6e81da8 Fix grammar.
llvm-svn: 187755
2013-08-05 23:29:16 +00:00
Nadav Rotem
cc36bd142d Update the release notes about the status of the vectorizers.
llvm-svn: 187714
2013-08-05 04:31:05 +00:00
Nadav Rotem
3cf6d1b3c9 Update the docs.
llvm-svn: 187713
2013-08-05 04:27:34 +00:00
Tom Stellard
b013a4ba0d Revert "TableGen: Enumerate Schedule Model too."
This reverts commit 2ca1e4a39c7e0d7a00e66ff5437c6d7ace2404a0.

llvm-svn: 187525
2013-07-31 20:43:08 +00:00
Vincent Lejeune
aed9766321 TableGen: Enumerate Schedule Model too.
llvm-svn: 187511
2013-07-31 19:31:20 +00:00
Matt Arsenault
c73a370ccb Reject bitcasts between address spaces with different sizes
llvm-svn: 187506
2013-07-31 17:49:08 +00:00
Bill Wendling
0aad45bdaa Fix underscore to be the proper length.
llvm-svn: 187406
2013-07-30 08:26:24 +00:00
Rafael Espindola
0c36f79092 Remove more dead documentation.
llvm-svn: 187403
2013-07-30 04:06:06 +00:00
Rafael Espindola
1480c060db Delete documentation for deleted options.
llvm-svn: 187380
2013-07-29 21:35:48 +00:00
Rafael Espindola
2cf6d36f16 Use pipefail when available.
This change makes test with RUN lines like
RUN: opt ... | FileCheck

fail if opt fails, even if it prints what FileCheck wants. Enabling this
found some interesting cases of broken tests that were not being noticed
because opt (or some other tool) was crashing late.

Pipefail is used when the shell supports it or when using the internal
python based tester.

llvm-svn: 187261
2013-07-26 22:32:58 +00:00
Hans Wennborg
df8cac83ae Phabricator.rst: tiny fix
llvm-svn: 187164
2013-07-25 22:58:31 +00:00
Rafael Espindola
b205870c9e Remove dead code from the makefile build system.
Back in r140220 we removed the autoconf code that would set LLVMCC_OPTION
since it was only used by the test-suite. This patch now removes code
that would only be used if LLVMCC_OPTION was set.

llvm-svn: 187154
2013-07-25 20:25:31 +00:00
Rafael Espindola
32f9d6abe2 Remove the mblaze backend from llvm.
Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html

llvm-svn: 187145
2013-07-25 18:55:05 +00:00
Jakob Stoklund Olesen
36ce352d23 Speling.
llvm-svn: 187076
2013-07-24 20:47:57 +00:00
Jakob Stoklund Olesen
e33f575374 Update old llc documentation.
Patch by Hafiz Abid!

llvm-svn: 187056
2013-07-24 17:45:11 +00:00
Rafael Espindola
518c02f972 llvm-ar is far closer to being a regular ar implementation now. Update the docs.
llvm-svn: 187034
2013-07-24 13:13:24 +00:00
Ahmed Bougacha
57345fecc8 docs: Update old VS 2008 references.
llvm-svn: 186968
2013-07-23 17:44:01 +00:00
Ahmed Bougacha
0591744b98 docs: cleanup VS 2008 release note.
Remove trailing ')'.  Sorry about all that, should be good now!

llvm-svn: 186965
2013-07-23 17:32:57 +00:00
Ahmed Bougacha
a53f182294 docs: Correct reST link.
llvm-svn: 186963
2013-07-23 17:28:35 +00:00
Ahmed Bougacha
3041073b41 Update docs to drop support for VS 2008.
llvm-svn: 186961
2013-07-23 17:25:26 +00:00
Stephen Lin
4d52e1d096 Fix FileCheck CHECK-LABEL documentation wording slightly; also mention that it allows error recovery.
llvm-svn: 186628
2013-07-18 23:26:58 +00:00
Stephen Lin
7eede83e33 Correct inaccurate statement in FileCheck docs.
llvm-svn: 186290
2013-07-14 18:12:25 +00:00
Tom Stellard
8d1b584bb1 R600: Add ISA documents to the CompilerWriterInfo page
llvm-svn: 186176
2013-07-12 18:14:40 +00:00
Stephen Lin
7148920f58 Add new directive called CHECK-LABEL to FileCheck.
CHECK-LABEL is meant to be used in place on CHECK on lines containing identifiers or other unique labels (they need not actually be labels in the source or output language, though.) This is used to break up the input stream into separate blocks delineated by CHECK-LABEL lines, each of which is checked independently. This greatly improves the accuracy of errors and fix-it hints in many cases, and allows for FileCheck to recover from errors in one block by continuing to subsequent blocks.

Some tests will be converted to use this new directive in forthcoming patches.

llvm-svn: 186162
2013-07-12 14:51:05 +00:00
Hans Wennborg
638eb9dfef CommandLine.rst: remove tiny bit of bad mark-up
llvm-svn: 186042
2013-07-10 22:09:22 +00:00
Alexey Samsonov
ce8937f226 Document LLVM_USE_SANITIZER CMake option
llvm-svn: 185925
2013-07-09 10:56:13 +00:00
Benjamin Kramer
f0b52f2712 IR headers moved to llvm/IR some aeons ago, update documentation.
llvm-svn: 185854
2013-07-08 19:59:35 +00:00
Stephen Lin
5b387a98f3 Update docs to say that a FunctionPass should not inspect other functions than the one being processed.
Please let me know if you disagree with this assessment (no one has yet, after asking on llvm-commits and LLVMDev) and I will revert.

llvm-svn: 185848
2013-07-08 18:34:39 +00:00
Nico Rieck
fb7b696627 MC: Implement COFF .linkonce directive
llvm-svn: 185753
2013-07-06 12:13:10 +00:00
Nick Lewycky
b09d51e35b Fix language.
llvm-svn: 185739
2013-07-06 01:04:47 +00:00
Nick Lewycky
7b093a1c2f Extend 'readonly' and 'readnone' to work on function arguments as well as
functions. Make the function attributes pass add it to known library functions
and when it can deduce it.

llvm-svn: 185735
2013-07-06 00:29:58 +00:00
Renato Golin
01d859312e Add platform specific tests doc
llvm-svn: 185581
2013-07-03 20:56:33 +00:00
Michael Gottesman
789266a511 Fixed typo in LangRef where we were using _'' to quote instead of the correct _.
llvm-svn: 185479
2013-07-02 21:32:56 +00:00
Sean Silva
01748e811b [docs] Amend confusing title
"Writing an LLVM Compiler Backend" can be misinterpreted as meaning
"backend" in the sense of "using LLVM as a backend for your compiler for
your new language". This new name is less ambiguous.

As a bonus, this brings the title in line with the file name.

llvm-svn: 185377
2013-07-01 20:45:12 +00:00
Alexey Samsonov
317fbb1c4a llvm-symbolizer: add support for Mach-O universal binaries
llvm-svn: 185137
2013-06-28 08:15:40 +00:00
Michael Gottesman
133dbe8a40 At the request of Richard Smith, swapped the order of cold/builtin so it is in alphabetical order.
llvm-svn: 185113
2013-06-27 22:48:08 +00:00
Joey Gouly
42f1898415 Add a Subtarget feature 'v8fp' to the ARM backend.
llvm-svn: 185073
2013-06-27 11:49:26 +00:00
Michael Gottesman
fe055b3806 Added support for the Builtin attribute.
The Builtin attribute is an attribute that can be placed on function call site that signal that even though a function is declared as being a builtin,

rdar://problem/13727199

llvm-svn: 185049
2013-06-27 00:25:01 +00:00
Nadav Rotem
13610ba018 The SLP Vectorizer works across basic blocks. Update the docs.
llvm-svn: 184973
2013-06-26 17:59:35 +00:00
Tom Stellard
e230cd96cd TableGen: Generate a function for getting operand indices based on their defined names
This patch modifies TableGen to generate a function in
${TARGET}GenInstrInfo.inc called getNamedOperandIdx(), which can be used
to look up indices for operands based on their names.

In order to activate this feature for an instruction, you must set the
UseNamedOperandTable bit.

For example, if you have an instruction like:

def ADD : TargetInstr <(outs GPR:$dst), (ins GPR:$src0, GPR:$src1)>;

You can look up the operand indices using the new function, like this:

Target::getNamedOperandIdx(Target::ADD, Target::OpName::dst)  => 0
Target::getNamedOperandIdx(Target::ADD, Target::OpName::src0) => 1
Target::getNamedOperandIdx(Target::ADD, Target::OpName::src1) => 2

The operand names are case sensitive, so $dst and $DST are considered
different operands.

This change is useful for R600 which has instructions with a large number
of operands, many of which model single bit instruction configuration
values.  These configuration bits are common across most instructions,
but may have a different operand index depending on the instruction type.
It is useful to have a convenient way to look up the operand indices,
so these bits can be generically set on any instruction.

llvm-svn: 184879
2013-06-25 21:22:09 +00:00
Meador Inge
864cf3e669 Add a release note for removing the simplify-libcalls pass.
llvm-svn: 184522
2013-06-21 03:08:23 +00:00
Sean Silva
8e27158b1a [docs] Fix broken link.
llvm-svn: 184514
2013-06-21 01:11:52 +00:00
Sean Silva
5ab882091c [docs] Fix formatting.
'\n' was displaying as 'n'

llvm-svn: 184507
2013-06-21 00:27:54 +00:00
Stephen Lin
cd893c2ca5 Minor grammar and word usage fix to 'returned' parameter attribute section of LangRef
llvm-svn: 184479
2013-06-20 21:55:10 +00:00
Michael Gottesman
fac1685172 [ReleaseNotes] Added bullet point stating that APFloat::isNormal() is now IEEE 754R-2008 compliant and that the relevant method renaming occurred.
For more information see r184449, r184350, r184356, r184366.

llvm-svn: 184452
2013-06-20 18:47:51 +00:00
Stefanus Du Toit
788cd80f4e Fix typos "metatadata" -> "metadata" in the LangRef.
llvm-svn: 184426
2013-06-20 14:02:44 +00:00
JF Bastien
6271cba6e0 Small correction to unordered memory code generation of ARM LDRD
The information was correct pre-LPAE.

llvm-svn: 184253
2013-06-18 23:07:16 +00:00
Rafael Espindola
daa7f712a2 Remove the LLVM specific archive index.
Archive files (.a) can have a symbol table indicating which object
files in them define which symbols. The purpose of this symbol table
is to speed up linking by allowing the linker the read only the .o
files it is actually going to use instead of having to parse every
object's symbol table.

LLVM's archive library currently supports a LLVM specific format for
such table. It is hard to see any value in that now that llvm-ld is
gone:

* System linkers don't use it: GNU ar uses the same plugin as the
linker to create archive files with a regular index. The OS X ar
creates no symbol table for IL files, I assume the linker just parses
all IL files.

* It doesn't interact well with archives having both IL and native objects.

* We probably don't want to be responsible for yet another archive
format variant.

This patch then:

* Removes support for creating and reading such index from lib/Archive.
* Remove llvm-ranlib, since there is nothing left for it to do.

We should in the future add support for regular indexes to llvm-ar for
both native and IL objects. When we do that, llvm-ranlib should be
reimplemented as a symlink to llvm-ar, as it is equivalent to "ar s".

llvm-svn: 184019
2013-06-14 23:25:53 +00:00
Renato Golin
cd1f988570 Update Release Process doc
llvm-svn: 183825
2013-06-12 11:35:33 +00:00
Michael Liao
8e2a7be27a Fix documentation on the path to Bitcode reader/writer
llvm-svn: 183761
2013-06-11 18:09:21 +00:00
Rafael Espindola
22c806731c Require members of llvm.used to be named.
The effect of llvm.used is to introduce an invisible reference, so this seems
a reasonable restriction. It will be used to provide an easy ordering of
the entries in llvm.used.

llvm-svn: 183743
2013-06-11 13:18:13 +00:00
Logan Chien
80e33d8700 Update code listings in LLVM tutorial.
Several LLVM headers are moved.  The code listings in
LLVM tutorial are not updated yet.

This CL removes the code replica in the .rst, and replace
them with a literalinclude directive, so that sphinx can
include the latest code automatically.

llvm-svn: 183607
2013-06-08 09:03:03 +00:00
Rui Ueyama
3b2443052a [docs] Add link to Microsoft PE/COFF Spec.
llvm-svn: 183562
2013-06-07 20:30:27 +00:00
Eli Bendersky
5881ae7cf3 Add more explicit link targets to headers in LangRef.rst
llvm-svn: 183555
2013-06-07 20:24:43 +00:00
Eli Bendersky
ef135f44df Add explicit link targets to some headers in LangRef.rst
llvm-svn: 183548
2013-06-07 19:40:08 +00:00
Sean Silva
9440222ae2 [docs] Add link to C++ ABI document.
llvm-svn: 183342
2013-06-05 21:11:16 +00:00
Sean Silva
9d099aff3a [docs] Add link to SysV ABI document.
llvm-svn: 183341
2013-06-05 21:11:11 +00:00
Sean Silva
5e55efb957 [docs] Replace non-existent LLVM_YAML_UNIQUE_TYPE() macro
LLVM_YAML_STRONG_TYPEDEF() is the correct macro to perform this function.

llvm-svn: 183280
2013-06-04 23:36:41 +00:00
Richard Smith
5f0f7dc602 Fix link.
llvm-svn: 183248
2013-06-04 20:42:42 +00:00
Bill Wendling
953c3ab59f We are now in 3.4 land. We don't need the 3.3 releaese notes in ToT anymore.
llvm-svn: 183210
2013-06-04 06:12:31 +00:00
Richard Sandiford
0790589d26 Add links to the System z architecture manual and ABI
llvm-svn: 182990
2013-05-31 09:14:54 +00:00
Paul Redmond
a9ddf6778b Fix warning and resulting formatting issue.
llvm-svn: 182939
2013-05-30 17:24:32 +00:00
Paul Redmond
029788a60b Revise llvm.vectorizer.width documentation
- clarify that vectorizer.width only applies if the vectorizer decides to
  vectorize.

llvm-svn: 182938
2013-05-30 17:22:46 +00:00
Ashok Thirumurthi
8fc903dc03 Added a sub-project status update section to the release notes with details
on the LLDB 3.3 release.

Reviewed by: Greg Clayton and Bill Wendling

llvm-svn: 182931
2013-05-30 14:23:07 +00:00
Sergey Matveev
702cff7843 Fix incorrect parameter name in LIT docs.
llvm-svn: 182926
2013-05-30 12:37:52 +00:00
David Blaikie
d72977d2e7 Debug Info: Update documentation to match recent (& not so recent) schema changes
This updates the debug info metadata schema documentation for various
schema changes made recently surrounding filename information for
scopes and the representation of imported entities.

llvm-svn: 182817
2013-05-29 02:05:13 +00:00
Paul Redmond
0eb4837b24 Add support for llvm.vectorizer metadata
- llvm.loop.parallel metadata has been renamed to llvm.loop to be more generic
  by making the root of additional loop metadata.
  - Loop::isAnnotatedParallel now looks for llvm.loop and associated
    llvm.mem.parallel_loop_access
  - document llvm.loop and update llvm.mem.parallel_loop_access
- add support for llvm.vectorizer.width and llvm.vectorizer.unroll
  - document llvm.vectorizer.* metadata
  - add utility class LoopVectorizerHints for getting/setting loop metadata
  - use llvm.vectorizer.width=1 to indicate already vectorized instead of
    already_vectorized
- update existing tests that used llvm.loop.parallel and
  llvm.vectorizer.already_vectorized

Reviewed by: Nadav Rotem

llvm-svn: 182802
2013-05-28 20:00:34 +00:00
Renato Golin
3dec360d28 Typo
llvm-svn: 182766
2013-05-28 11:28:37 +00:00
Renato Golin
efa59a9588 Linking ReleaseProcess doc with the world
llvm-svn: 182763
2013-05-28 10:32:55 +00:00
Renato Golin
88cda6435f Adding ReleaseProcess doc
llvm-svn: 182759
2013-05-28 09:48:52 +00:00
Kai Nacke
2a7d5edd65 Add LDC compiler to list of external OS projects using LLVM 3.3
llvm-svn: 182718
2013-05-26 17:37:43 +00:00
Diego Novillo
d1f091f169 Add a new function attribute 'cold' to functions.
Other than recognizing the attribute, the patch does little else.
It changes the branch probability analyzer so that edges into
blocks postdominated by a cold function are given low weight.

Added analysis and code generation tests.  Added documentation for the
new attribute.

llvm-svn: 182638
2013-05-24 12:26:52 +00:00
Tim Northover
9b6ef4d68e ARM: implement @llvm.readcyclecounter intrinsic
This implements the @llvm.readcyclecounter intrinsic as the specific
MRC instruction specified in the ARM manuals for CPUs with the Power
Management extensions.

Older CPUs had slightly different methods which may also have to be
implemented eventually, but this should cover all v7 cases.

rdar://problem/13939186

llvm-svn: 182603
2013-05-23 19:11:20 +00:00
Rui Ueyama
14683e5753 Fix typo in docs/GettingStarted.rst.
llvm-svn: 182496
2013-05-22 18:09:39 +00:00
Rafael Espindola
098c228558 Make R600 non-experimental.
The r600 backend has been in tree for some time now. Marking it as
non-experimental to avoid accidental breakage.

llvm-svn: 182442
2013-05-22 00:35:47 +00:00
Sean Silva
f92aea7789 LangRef.rst: Clarify how basic blocks without named label are handled.
Describe that they are assigned numbered label using the same counter
as for unnamed temporaries.

Based on http://llvm.org/bugs/show_bug.cgi?id=16043 and mailing list
discussion.

Patch by Paul Sokolovsky!

llvm-svn: 182332
2013-05-20 23:31:12 +00:00
Daniel Dunbar
8a10ff14a8 [docs] Minor doc tweaks.
llvm-svn: 182324
2013-05-20 22:39:48 +00:00
Dmitri Gribenko
fdcdaef7d6 docs/Passes: fix some typos
Patch by Yacine Belkadi.

llvm-svn: 182197
2013-05-18 18:01:44 +00:00
Arnaud A. de Grandmaison
2c998eed2c Add Jade to the list of external projects using LLVM in the release notes.
Patch by: Antoine Lorence <Antoine.Lorence@insa-rennes.fr>

llvm-svn: 181886
2013-05-15 14:05:01 +00:00
Michael Liao
68fd4f6246 Add 'CHECK-DAG' support
Refer to 'FileCheck.rst'f for details of 'CHECK-DAG'.

llvm-svn: 181827
2013-05-14 20:34:12 +00:00
Richard Sandiford
77796bbc7d [SystemZ] Add disassembler support
llvm-svn: 181777
2013-05-14 10:17:52 +00:00
Alexander Kornienko
7ae388f71e Better output for long help strings for command-line options.
Summary:
This patch allows using \n inside long help strings for command-line
options, so that all lines are equally indented. This is not a perfect solution,
as we don't (and probably don't want to) know about terminal width, but it
allows to format long help strings somehow readable without manually padding
them with spaces. A motivating example is -help output from clang-format (source
code in tools/clang-format/ClangFormat.cpp, see cl options offset, length,
style, and dump-config).

Reviewers: atrick, alexfh

Reviewed By: alexfh

CC: llvm-commits, rafael

Differential Revision: http://llvm-reviews.chandlerc.com/D779

llvm-svn: 181608
2013-05-10 17:15:51 +00:00
Richard Sandiford
31a90f913c Add SystemZ feats to CodeGenerator.rst
llvm-svn: 181431
2013-05-08 14:23:43 +00:00
Rafael Espindola
b0598a0361 Remove exception handling support from the old JIT.
llvm-svn: 181354
2013-05-07 20:53:59 +00:00
Bill Wendling
f6be87cbaa We're in 3.4 land now.
llvm-svn: 181350
2013-05-07 20:31:28 +00:00
Rafael Espindola
041d6c79e2 Add empty release notes for 3.4.
The idea is that docs/ReleaseNotes.rst is 3.3 and will be copied to the
branch by the release manager just before creating the release
candidates.

This ReleaseNotes_34.rst will then be moved over ReleaseNotes.rst after
the 3.3 release.

llvm-svn: 181349
2013-05-07 20:26:16 +00:00
Andrew Trick
424ae1d00a Add two points to release notes about recent command line library changes.
Patch by Dan Liew!

llvm-svn: 181335
2013-05-07 17:34:35 +00:00
Richard Sandiford
7607d0628b Mention SystemZ in the release notes
llvm-svn: 181328
2013-05-07 15:52:32 +00:00
Rafael Espindola
dd63d2006f Note that EH is now supported in MCJIT.
llvm-svn: 181305
2013-05-07 12:29:17 +00:00
Tim Northover
f29ea28532 Correct logical shift documentation
llvm-svn: 181290
2013-05-07 06:17:14 +00:00
Andrew Trick
66c37e7321 Implemented public interface for modifying registered (not positional or sink options) command line options at runtime.
Patch by Dan Liew!

llvm-svn: 181254
2013-05-06 21:56:35 +00:00
Andrew Trick
7cf2347306 Support command line option categories.
Patch by Dan Liew!

llvm-svn: 181253
2013-05-06 21:56:23 +00:00
Ulrich Weigand
0d393e5693 [SystemZ] Add configure bits
This patch wires up the SystemZ target in configure, so that it can now be
built using --enable-targets=systemz.   It is not yet included in the default
build (--enable-targets=all); this will be done by a follow-up patch.

Patch by Richard Sandiford.

llvm-svn: 181208
2013-05-06 16:22:34 +00:00
Richard Osborne
1c4909b705 [docs] Update Target Feature Matrix for the XCore backend.
Disassembler support has recently been added. Fill in some other unknowns
at the same time.

llvm-svn: 181156
2013-05-05 14:09:55 +00:00
Amara Emerson
036eb4649d Revert r181009.
llvm-svn: 181079
2013-05-03 23:57:17 +00:00
Richard Sandiford
aa8496276f Remove comment that no target supports 128-bit IEEE floats
The soon-to-be-committed SystemZ port uses 128-bit IEEE floats.
MIPS64 GNU/Linux does too (albeit with unusual NaNs).

llvm-svn: 181016
2013-05-03 14:32:27 +00:00
Amara Emerson
863672f436 Add support for reading ARM ELF build attributes.
Build attribute sections can now be read if they exist via ELFObjectFile, and
the llvm-readobj tool has been extended with an option to dump this information
if requested. Regression tests are also included which exercise these features.

Also update the docs with a fixed ARM ABI link and a new link to the Addenda
which provides the build attributes specification.

llvm-svn: 181009
2013-05-03 11:36:35 +00:00
Pekka Jaaskelainen
ba66b3d2a7 Added pocl and TCE blurbs to the ReleaseNotes.
llvm-svn: 181001
2013-05-03 07:37:04 +00:00
Tobias Grosser
923a6bc6e9 Added table of contents declaration in CommandLine Library documentation.
Contributed-by:  Dan Liew <daniel.liew@imperial.ac.uk>
llvm-svn: 180919
2013-05-02 14:59:52 +00:00
Aaron Ballman
dcda36337e Updating the getting started guide for Visual Studio users. Specifically, pointing out that you have to pass additional parameters to llvm-lit and explicitly specify python on the command line.
llvm-svn: 180869
2013-05-01 19:13:50 +00:00
Nikola Smiljanic
6bed8fd9cc Fix spelling
llvm-svn: 180843
2013-05-01 13:05:43 +00:00
Nadav Rotem
1ba2292746 Update the release notes about the min/max reductions that Arnold added.
llvm-svn: 180805
2013-04-30 21:04:04 +00:00
Dmitri Gribenko
6b661ad8e1 Documentation: end option description with a period
Patch by Dimitry Andric.

llvm-svn: 180675
2013-04-27 16:34:24 +00:00
Michael Gottesman
4f7b7f0655 Updated GettingStarted.rst so that it references utils/git-svn for git-svnup instead of catting it into the documentation itself.
llvm-svn: 180589
2013-04-26 01:04:45 +00:00
Alexey Samsonov
30f0410c39 Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools.
llvm-svn: 180083
2013-04-23 08:28:39 +00:00
Eli Bendersky
397cf8eede Document the -filetype option of llc (PR #12902)
llvm-svn: 180031
2013-04-22 17:16:35 +00:00
Rafael Espindola
88a7961c64 Clarify that llvm.used can contain aliases.
Also add a check for llvm.used in the verifier and simplify clients now that
they can assume they have a ConstantArray.

llvm-svn: 180019
2013-04-22 14:58:02 +00:00
Stephen Lin
9d99ba2071 Add CodeGen support for functions that always return arguments via a new parameter attribute 'returned', which is taken advantage of in target-independent tail call opportunity detection and in ARM call lowering (when placed on an integral first parameter).
llvm-svn: 179925
2013-04-20 05:14:40 +00:00
Eli Bendersky
a2db9bb211 Fix grammar in LLVMBuild.rst
llvm-svn: 179768
2013-04-18 16:39:32 +00:00
Eli Bendersky
3aded24ad4 Fixes to LangRef.rst: incorrect attributes syntax and misplaced 'nobuiltin'
Patch by Stephen Lin

llvm-svn: 179763
2013-04-18 16:11:44 +00:00
Eli Bendersky
08cbb46b88 More consistent formatting and tidying-up
llvm-svn: 179716
2013-04-17 20:17:08 +00:00
Eli Bendersky
882aaffcf6 Make formatting more consistent and tidy-up.
llvm-svn: 179689
2013-04-17 17:17:20 +00:00
Nadav Rotem
cd793c55bf Fix a grammar mistake, and add a line about the two phases that the BB/SLP vectorizers have (top-down and bottom-up).
llvm-svn: 179566
2013-04-15 22:21:25 +00:00
Nadav Rotem
7d5c664728 Fix the internal link.
llvm-svn: 179565
2013-04-15 22:11:07 +00:00
Nadav Rotem
bd23c18b1d Update the release notes about the vectorizers.
llvm-svn: 179564
2013-04-15 22:10:39 +00:00
John Criswell
f101677b3e Grammar and punctuation fixes.
No content changes.

llvm-svn: 179540
2013-04-15 17:38:06 +00:00
Tim Northover
f8e799781e Enable all targets by default on Visual Studio.
llvm-svn: 179518
2013-04-15 11:53:05 +00:00
Nadav Rotem
0e89041496 Document our desire to enable the loop vectorizer on -Os in future releases.
llvm-svn: 179511
2013-04-15 05:56:55 +00:00
Nadav Rotem
9ab9988081 Docs: merge the description of the BB and SLP vectorizers and document the -fslp-vectorize-aggressive flag.
llvm-svn: 179510
2013-04-15 05:53:23 +00:00
Jia Liu
09426bc1e1 fix include path in doc Extending LLVM
llvm-svn: 179503
2013-04-15 03:26:13 +00:00
Nadav Rotem
3260e4f4f7 Document the SLP infrastructure.
llvm-svn: 179480
2013-04-14 07:42:25 +00:00
Nico Rieck
e4564483fb Teach llvm-readobj to print ELF program headers
llvm-svn: 179363
2013-04-12 04:07:39 +00:00
Nico Rieck
ba720923ae Add -expand-relocs to llvm-readobj
This option expands shown relocations from single line to a dictionary
format:

  Relocation {
    Offset: 0x4
    Type: R_386_32 (1)
    Symbol: sym
    Info: 0x0
  }

llvm-svn: 179359
2013-04-12 04:01:52 +00:00
Nico Rieck
36a98e60d3 Add man page for llvm-readobj
llvm-svn: 179244
2013-04-11 00:05:57 +00:00
Nico Rieck
8e22855ea6 MC: Support COFF image-relative MCSymbolRefs
Add support for the COFF relocation types IMAGE_REL_I386_DIR32NB and
IMAGE_REL_AMD64_ADDR32NB for 32- and 64-bit respectively. These are
similar to normal 4-byte relocations except that they do not include
the base address of the image.

Image-relative relocations are used for debug information (32-bit) and
SEH unwind tables (64-bit).

A new MCSymbolRef variant called 'VK_COFF_IMGREL32' is introduced to
specify such relocations. For AT&T assembly, this variant can be accessed
using the symbol suffix '@imgrel'.

llvm-svn: 179240
2013-04-10 23:28:17 +00:00
Nadav Rotem
c48b9d78aa Remove the confusing sentence.
llvm-svn: 179085
2013-04-09 04:48:40 +00:00
Nadav Rotem
cedc2f5e24 Update the docs about the fact that the loop vectorizer is enabled by default for -O3.
llvm-svn: 179060
2013-04-08 21:34:49 +00:00
Tim Northover
2384153a61 Add ACLE link to ARM documentation sections
llvm-svn: 179006
2013-04-08 08:42:24 +00:00
Eli Bendersky
91eef1d3c8 Missing word
llvm-svn: 178774
2013-04-04 18:29:19 +00:00
Jakub Staszak
cf9e8b1402 Fix a typo.
llvm-svn: 178567
2013-04-02 20:02:36 +00:00
Justin Holewinski
8e3d59929c Add start of user documentation for NVPTX
Summary: This is the beginning of user documentation for the NVPTX back-end.  I want to ensure I am integrating this properly into the rest of the LLVM documentation.

Differential Revision: http://llvm-reviews.chandlerc.com/D600

llvm-svn: 178428
2013-03-30 16:41:14 +00:00
Sean Silva
f1daa4e46b [docs] llvmbugs is not the place for patches.
llvm-svn: 178426
2013-03-30 15:33:02 +00:00
Sean Silva
b2e6eb0354 [docs] Annotate mailing lists with their "name".
Nobody says "the developer's list" or "commits archive"; they always say
"llvmdev" or "llvm-commits". It makes sense for our documentation to
at least make that association explicitly.

llvm-svn: 178425
2013-03-30 15:33:01 +00:00
Sean Silva
61ad8bcdeb [docs] Reorganize mailing lists.
Order them roughly by "which one should a newbie join first".

llvm-svn: 178424
2013-03-30 15:32:54 +00:00
Sean Silva
7a23f14fdb [docs] Pull IRC and Mailing Lists under a new "Community" heading.
llvm-svn: 178423
2013-03-30 15:32:51 +00:00
Sean Silva
dd29200a97 [docs] The GEP FAQ is not "design and overview"
llvm-svn: 178422
2013-03-30 15:32:50 +00:00
Sean Silva
b35b1c47e9 [docs] Put DeveloperPolicy under "Development Process Documentation"
llvm-svn: 178421
2013-03-30 15:32:47 +00:00
Sean Silva
04c7342f29 [docs] The STL "binary search" has a non-obvious name.
std::lower_bound is the canonical "binary search" in the STL
(std::binary_search generally is not what you want). The name actually
makes a lot of sense (and also has a beautiful symmetry with the
std::upper_bound algorithm). The name is nonetheless non-obvious.

Also, remove mention of "radix search". It's not even clear how that
would work in the context of a sorted vector. AFAIK "radix search" only
makes sense when you have a trie-like data structure.

llvm-svn: 178376
2013-03-29 21:57:47 +00:00
Thomas Schwinge
fe458b9d61 Correct spelling of Git.
llvm-svn: 178254
2013-03-28 18:06:20 +00:00
Michael Gottesman
0ff9d9eff0 Added documentation to LangRef for the intrinsic llvm.ptr.annotation.* which for some reason was never written.
llvm-svn: 177950
2013-03-26 00:34:27 +00:00
Dmitri Gribenko
0a614d6be4 Documentation: Replace dead link for binfmt_misc
Patch by Thomas Schwinge.

llvm-svn: 177876
2013-03-25 17:08:25 +00:00
Jakob Stoklund Olesen
248a113326 Mention the new TableGen pattern format in the release notes.
Make threats about removing the old syntax.

llvm-svn: 177848
2013-03-25 00:36:53 +00:00
Jakob Stoklund Olesen
83c1b42b62 Allow TableGen DAG arguments to be just a name.
DAG arguments can optionally be named:

  (dag node, node:$name)

With this change, the node is also optional:

  (dag node, node:$name, $name)

The missing node is treated as an UnsetInit, so the above is equivalent
to:

  (dag node, node:$name, ?:$name)

This syntax is useful in output patterns where we currently require the
types of variables to be repeated:

  def : Pat<(subc i32:$b, i32:$c), (SUBCCrr i32:$b, i32:$c)>;

This is preferable:

  def : Pat<(subc i32:$b, i32:$c), (SUBCCrr $b, $c)>;

llvm-svn: 177843
2013-03-24 19:36:51 +00:00
Tobias Grosser
589c56587c GettingStarted: Add Git clone instructions for compiler-rt and test-suite
Contributed-by:  Thomas Schwinge  <thomas@codesourcery.com>
llvm-svn: 177841
2013-03-24 15:15:19 +00:00
Jakob Stoklund Olesen
9e3f84b275 Give Sparc instruction patterns direct types instead of register classes.
Also update the documentation since Sparc is the nicest backend, and
used as an example in WritingAnLLVMBackend.

llvm-svn: 177835
2013-03-24 00:56:20 +00:00
Sean Silva
57d35d0952 [docs] Slight reword for precision.
The new wording cannot be construed as suggesting the use of
SmallVectorImpl<T> as e.g. a class member (just because the class
happens to be in an interface).

llvm-svn: 177778
2013-03-22 23:52:38 +00:00
Sean Silva
b845938bd3 [docs] Document usage of SmallVectorImpl in interfaces.
llvm-svn: 177775
2013-03-22 23:41:29 +00:00
Eli Bendersky
7d1ea7b334 fix small doc typo
llvm-svn: 177737
2013-03-22 16:09:06 +00:00
Eric Christopher
7f55317710 Formatting fixups.
llvm-svn: 177458
2013-03-19 23:10:26 +00:00
Ulrich Weigand
6cee29625a Extend TableGen instruction selection matcher to improve handling
of complex instruction operands (e.g. address modes).

Currently, if a Pat pattern creates an instruction that has a complex
operand (i.e. one that consists of multiple sub-operands at the MI
level), this operand must match a ComplexPattern DAG pattern with the
correct number of output operands.

This commit extends TableGen to alternatively allow match a complex
operands against multiple separate operands at the DAG level.

This allows using Pat patterns to match pre-increment nodes like
pre_store (which must have separate operands at the DAG level) onto
an instruction pattern that uses a multi-operand memory operand,
like the following example on PowerPC (will be committed as a
follow-on patch):

  def STWU  : DForm_1<37, (outs ptr_rc:$ea_res), (ins GPRC:$rS, memri:$dst),
                    "stwu $rS, $dst", LdStStoreUpd, []>,
                    RegConstraint<"$dst.reg = $ea_res">, NoEncode<"$ea_res">;

  def : Pat<(pre_store GPRC:$rS, ptr_rc:$ptrreg, iaddroff:$ptroff),
            (STWU GPRC:$rS, iaddroff:$ptroff, ptr_rc:$ptrreg)>;

Here, the pair of "ptroff" and "ptrreg" operands is matched onto the
complex operand "dst" of class "memri" in the "STWU" instruction.

Approved by Jakob Stoklund Olesen.

llvm-svn: 177428
2013-03-19 19:51:09 +00:00