Commit Graph

4950 Commits

Author SHA1 Message Date
Daniel Dunbar
ff2515ef2c [docs] Minor doc tweaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182324 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-20 22:39:48 +00:00
Dmitri Gribenko
edc399aceb docs/Passes: fix some typos
Patch by Yacine Belkadi.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182197 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-18 18:01:44 +00:00
Arnaud A. de Grandmaison
38286bee4d Add Jade to the list of external projects using LLVM in the release notes.
Patch by: Antoine Lorence <Antoine.Lorence@insa-rennes.fr>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181886 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-15 14:05:01 +00:00
Michael Liao
95ab326674 Add 'CHECK-DAG' support
Refer to 'FileCheck.rst'f for details of 'CHECK-DAG'.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181827 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-14 20:34:12 +00:00
Richard Sandiford
c3b20c260e [SystemZ] Add disassembler support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181777 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-14 10:17:52 +00:00
Alexander Kornienko
2e24e19cac 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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181608 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-10 17:15:51 +00:00
Richard Sandiford
a571a93ebc Add SystemZ feats to CodeGenerator.rst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181431 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-08 14:23:43 +00:00
Rafael Espindola
e449654815 Remove exception handling support from the old JIT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181354 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 20:53:59 +00:00
Bill Wendling
0c25b8f07e We're in 3.4 land now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181350 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 20:31:28 +00:00
Rafael Espindola
4247ca40d3 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181349 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 20:26:16 +00:00
Andrew Trick
eb4d746d7d Add two points to release notes about recent command line library changes.
Patch by Dan Liew!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181335 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 17:34:35 +00:00
Richard Sandiford
46eb4a61c8 Mention SystemZ in the release notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181328 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 15:52:32 +00:00
Rafael Espindola
d31ba134bb Note that EH is now supported in MCJIT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181305 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 12:29:17 +00:00
Tim Northover
338eba7380 Correct logical shift documentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181290 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-07 06:17:14 +00:00
Andrew Trick
61e0172197 Implemented public interface for modifying registered (not positional or sink options) command line options at runtime.
Patch by Dan Liew!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181254 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-06 21:56:35 +00:00
Andrew Trick
b7ad33b719 Support command line option categories.
Patch by Dan Liew!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181253 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-06 21:56:23 +00:00
Ulrich Weigand
735ab83b3c [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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181208 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-06 16:22:34 +00:00
Richard Osborne
e0c3454771 [docs] Update Target Feature Matrix for the XCore backend.
Disassembler support has recently been added. Fill in some other unknowns
at the same time.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181156 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-05 14:09:55 +00:00
Amara Emerson
1aef163a68 Revert r181009.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181079 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-03 23:57:17 +00:00
Richard Sandiford
d07d29213b 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).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181016 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-03 14:32:27 +00:00
Amara Emerson
5d446e61d9 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181009 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-03 11:36:35 +00:00
Pekka Jaaskelainen
555e8f606f Added pocl and TCE blurbs to the ReleaseNotes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181001 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-03 07:37:04 +00:00
Tobias Grosser
66bb622cff Added table of contents declaration in CommandLine Library documentation.
Contributed-by:  Dan Liew <daniel.liew@imperial.ac.uk>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180919 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-02 14:59:52 +00:00
Aaron Ballman
a7eccdc59a 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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180869 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-01 19:13:50 +00:00
Nikola Smiljanic
f2403bbae6 Fix spelling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180843 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-01 13:05:43 +00:00
Nadav Rotem
6f4888f259 Update the release notes about the min/max reductions that Arnold added.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180805 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-30 21:04:04 +00:00
Dmitri Gribenko
595dd5af14 Documentation: end option description with a period
Patch by Dimitry Andric.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180675 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-27 16:34:24 +00:00
Michael Gottesman
e1f079064a Updated GettingStarted.rst so that it references utils/git-svn for git-svnup instead of catting it into the documentation itself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180589 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-26 01:04:45 +00:00
Alexey Samsonov
ee03c949b8 Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180083 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-23 08:28:39 +00:00
Eli Bendersky
72590d57bd Document the -filetype option of llc (PR #12902)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180031 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-22 17:16:35 +00:00
Rafael Espindola
cde25b435a 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180019 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-22 14:58:02 +00:00
Stephen Lin
456ca048af 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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179925 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-20 05:14:40 +00:00
Eli Bendersky
bff177676c Fix grammar in LLVMBuild.rst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179768 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-18 16:39:32 +00:00
Eli Bendersky
f841609c4a Fixes to LangRef.rst: incorrect attributes syntax and misplaced 'nobuiltin'
Patch by Stephen Lin


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179763 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-18 16:11:44 +00:00
Eli Bendersky
8c493386ce More consistent formatting and tidying-up
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179716 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-17 20:17:08 +00:00
Eli Bendersky
8952d909a5 Make formatting more consistent and tidy-up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179689 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-17 17:17:20 +00:00
Nadav Rotem
3fe91a4453 Fix a grammar mistake, and add a line about the two phases that the BB/SLP vectorizers have (top-down and bottom-up).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179566 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 22:21:25 +00:00
Nadav Rotem
96e0b96a91 Fix the internal link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179565 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 22:11:07 +00:00
Nadav Rotem
74cd12b73a Update the release notes about the vectorizers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179564 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 22:10:39 +00:00
John Criswell
24dcc2042e Grammar and punctuation fixes.
No content changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179540 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 17:38:06 +00:00
Tim Northover
eaa752f5e1 Enable all targets by default on Visual Studio.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179518 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 11:53:05 +00:00
Nadav Rotem
2f7ce4522d Document our desire to enable the loop vectorizer on -Os in future releases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179511 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 05:56:55 +00:00
Nadav Rotem
fc175d97ff Docs: merge the description of the BB and SLP vectorizers and document the -fslp-vectorize-aggressive flag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179510 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 05:53:23 +00:00
Jia Liu
fd975b0762 fix include path in doc Extending LLVM
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179503 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15 03:26:13 +00:00
Nadav Rotem
a15dedba28 Document the SLP infrastructure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179480 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-14 07:42:25 +00:00
Nico Rieck
cf3b55ab18 Teach llvm-readobj to print ELF program headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179363 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 04:07:39 +00:00
Nico Rieck
1c8dfa5e90 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
  }

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179359 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 04:01:52 +00:00
Nico Rieck
70c2b88d3b Add man page for llvm-readobj
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179244 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11 00:05:57 +00:00
Nico Rieck
18d49acdab 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'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179240 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10 23:28:17 +00:00
Nadav Rotem
fa335e4060 Remove the confusing sentence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179085 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-09 04:48:40 +00:00
Nadav Rotem
df4381b578 Update the docs about the fact that the loop vectorizer is enabled by default for -O3.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179060 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-08 21:34:49 +00:00
Tim Northover
c966285995 Add ACLE link to ARM documentation sections
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179006 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-08 08:42:24 +00:00
Eli Bendersky
8256a98847 Missing word
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178774 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-04 18:29:19 +00:00
Jakub Staszak
d0a0757c3b Fix a typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178567 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-02 20:02:36 +00:00
Justin Holewinski
531ebc8a3c 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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178428 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 16:41:14 +00:00
Sean Silva
6ef362a6de [docs] llvmbugs is not the place for patches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178426 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:33:02 +00:00
Sean Silva
fb7aa39435 [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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178425 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:33:01 +00:00
Sean Silva
135856526c [docs] Reorganize mailing lists.
Order them roughly by "which one should a newbie join first".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178424 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:32:54 +00:00
Sean Silva
bd1aecbea7 [docs] Pull IRC and Mailing Lists under a new "Community" heading.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178423 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:32:51 +00:00
Sean Silva
cad9b9cdb4 [docs] The GEP FAQ is not "design and overview"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178422 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:32:50 +00:00
Sean Silva
a6a22233a8 [docs] Put DeveloperPolicy under "Development Process Documentation"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178421 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30 15:32:47 +00:00
Sean Silva
4991289b33 [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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178376 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-29 21:57:47 +00:00
Thomas Schwinge
7f5f06b818 Correct spelling of Git.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178254 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-28 18:06:20 +00:00
Michael Gottesman
872b4e5785 Added documentation to LangRef for the intrinsic llvm.ptr.annotation.* which for some reason was never written.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177950 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-26 00:34:27 +00:00
Dmitri Gribenko
9409a64eb0 Documentation: Replace dead link for binfmt_misc
Patch by Thomas Schwinge.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177876 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-25 17:08:25 +00:00
Jakob Stoklund Olesen
a231033e70 Mention the new TableGen pattern format in the release notes.
Make threats about removing the old syntax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177848 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-25 00:36:53 +00:00
Jakob Stoklund Olesen
4717fd4c0f 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)>;

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177843 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-24 19:36:51 +00:00
Tobias Grosser
9c22886a01 GettingStarted: Add Git clone instructions for compiler-rt and test-suite
Contributed-by:  Thomas Schwinge  <thomas@codesourcery.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177841 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-24 15:15:19 +00:00
Jakob Stoklund Olesen
15a3c18623 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177835 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-24 00:56:20 +00:00
Sean Silva
928ef439a5 [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).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177778 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-22 23:52:38 +00:00
Sean Silva
0059eb1e2e [docs] Document usage of SmallVectorImpl in interfaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177775 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-22 23:41:29 +00:00
Eli Bendersky
be67aa52a8 fix small doc typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177737 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-22 16:09:06 +00:00
Eric Christopher
61e0b78d78 Formatting fixups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177458 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 23:10:26 +00:00
Ulrich Weigand
ec8d1a5b72 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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177428 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 19:51:09 +00:00
Eli Bendersky
7f63f01a4d Update documentation of llvm-link to reflect recent cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177411 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 16:04:19 +00:00
Sean Silva
037a4bcde3 [docs] Remove incorrect information about lit.
Lit does support redirects in the 2>&1 style.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177403 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 15:22:02 +00:00
Eric Christopher
afa288de50 Make the fields in the diagram match the descriptive text above them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177314 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-18 20:21:47 +00:00
Matthew Curtis
624ec29474 ReleaseNotes: Tweak hexagonv2/hexagonv3 removal note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177284 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-18 13:08:24 +00:00
Sean Silva
229aa6d23b [docs] Discuss a potential bug to be aware of.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177224 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-16 16:58:20 +00:00
Matthew Curtis
29da043ae3 ReleaseNotes: Add Hexagon Target section
And mention removal of hexagonv2 and hexagonv3 support (r176859).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176860 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12 12:20:51 +00:00
Eli Bendersky
48f8015121 Missing period in doc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176809 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-11 16:51:15 +00:00
Sean Silva
6ccdfc54ba [docs] Remove explicit authorship.
In the spirit of r172109. Version control keeps a far more detailed
record of authorship anyways.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176807 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-11 16:25:16 +00:00
Michael Liao
2faa0f37c2 Remove tailing whitespaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176570 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-06 18:24:34 +00:00
Alexey Samsonov
14809fd526 Docs for llvm-symbolizer command-line tool
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176337 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-01 07:58:27 +00:00
Benjamin Kramer
19949d8b86 Brag about function call vectorization in the docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176292 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-28 19:33:46 +00:00
Sean Silva
ba78f0b9c2 [docs] Discuss manpage output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176199 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-27 18:48:42 +00:00
Sean Silva
6668a4293d [docs] Provide pointer for building Sphinx docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176195 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-27 18:33:21 +00:00
Sean Silva
3e1a721a94 [docs] Use reST link instead of direct HTML link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176108 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-26 18:22:18 +00:00
Renato Golin
37527d1943 Adding ARM as supported architecture
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176096 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-26 17:23:13 +00:00
Renato Golin
86ab766ae9 GCC 4.6.3 O3 miscompiles on ARM
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176090 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-26 13:32:40 +00:00
Kostya Serebryany
8eec41fc77 Unify clang/llvm attributes for asan/tsan/msan (LLVM part)
These are two related changes (one in llvm, one in clang).
LLVM: 
- rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode)
- rename thread_safety => sanitize_thread
- rename no_uninitialized_checks -> sanitize_memory

CLANG: 
- add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis))
- add __attribute__((no_sanitize_thread))
- add __attribute__((no_sanitize_memory))

for S in address thread memory
If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not
set llvm attribute sanitize_S


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176075 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-26 06:58:09 +00:00
Renato Golin
035a1f41a2 ARM build docs easier for copy&paste
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176033 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-25 18:25:58 +00:00
Renato Golin
abafaba4d5 Add global structure vectorization to docs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175965 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-23 13:25:41 +00:00
Pekka Jaaskelainen
45b2c25efb Made it more explicit that the self-referential llvm.loop identifier metadata
should be unique for each loop.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175888 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-22 12:03:07 +00:00
Bill Wendling
143d46476c Implement the NoBuiltin attribute.
The 'nobuiltin' attribute is applied to call sites to indicate that LLVM should
not treat the callee function as a built-in function. I.e., it shouldn't try to
replace that function with different code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175835 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-22 00:12:35 +00:00
Paul Redmond
8f0696c7a7 add missing space which prevented the llvm.loop code-block from appearing in the
generated html.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175769 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-21 17:20:45 +00:00
Alex Rosenberg
becdd3a5a9 Spelling corrections
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175415 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-18 02:44:09 +00:00
Dmitri Gribenko
4913680168 Documentation: correct syntax (one missing comma, one extra comma)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175375 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-16 20:07:40 +00:00
Sean Silva
ccb51f923f [docs] PR15254: Add "AST" to the lexicon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175077 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-13 21:17:20 +00:00
Bill Wendling
6eaab0d69b Add a blurb about the attributes changes to the release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175075 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-13 21:10:15 +00:00