1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
Commit Graph

5157 Commits

Author SHA1 Message Date
Juergen Ributzka
3673ce83a4 [anyregcc] Fix callee-save mask for anyregcc
Use separate callee-save masks for XMM and YMM registers for anyregcc on X86 and
select the proper mask depending on the target cpu we compile for.

llvm-svn: 198985
2014-01-11 01:00:27 +00:00
Rafael Espindola
4746cd5531 Add a note about the old asm printer being removed.
llvm-svn: 198960
2014-01-10 22:06:26 +00:00
Rafael Espindola
4ef724a8d2 Use 'w' instead of 'c' to represent the win32 mangling.
This change was requested to avoid confusion if we ever support non windows coff
systems.

llvm-svn: 198938
2014-01-10 13:42:12 +00:00
Chandler Carruth
f17fdf0afe Update the developer policy to more clearly spell out the steps for
contributors to submit patches to the LLVM project. Thanks to Danny,
Chris, Alp, and others for reviewing.

llvm-svn: 198901
2014-01-10 00:08:34 +00:00
Nico Rieck
38299d8a07 Remove mention of old deleted test scripts from testing guide
llvm-svn: 198771
2014-01-08 16:30:03 +00:00
Rafael Espindola
858e3503c4 Improve documentation of the 'a' specifier and the '<abi>:<pref>' align pair.
llvm-svn: 198636
2014-01-06 21:40:24 +00:00
Rafael Espindola
f448a5ab18 Fix typo.
Thanks to Owen Anderson for noticing it.

llvm-svn: 198443
2014-01-03 19:42:04 +00:00
Rafael Espindola
eae6386a1e Make the llvm mangler depend only on DataLayout.
Before this patch any program that wanted to know the final symbol name of a
GlobalValue had to link with Target.

This patch implements a compromise solution where the mangler uses DataLayout.
This way, any tool that already links with Target (llc, clang) gets the exact
behavior as before and new IR files can be mangled without linking with Target.

With this patch the mangler is constructed with just a DataLayout and DataLayout
is extended to include the information the Mangler needs.

llvm-svn: 198438
2014-01-03 19:21:54 +00:00
Rafael Espindola
95d600810f Remove the 's' DataLayout specification
During the years there have been some attempts at figuring out how to
align byval arguments. A look at the commit log suggests that they
were

* Use the ABI alignment.
* When that was not sufficient for x86-64, I added the 's' specification to
  DataLayout.
* When that was not sufficient Evan added the virtual getByValTypeAlignment.
* When even that was not sufficient, we just got the FE to add the alignment
  to the byval.

This patch is just a simple cleanup that removes my first attempt at fixing the
problem. I also added an AArch64 implementation of getByValTypeAlignment to
make sure this patch is a nop. I also left the 's' parsing for backward
compatibility.

I will send a short email to llvmdev about the change for anyone maintaining
an out of tree target.

llvm-svn: 198287
2014-01-01 22:29:43 +00:00
NAKAMURA Takumi
285e657a32 Update the copyright credits -- Happy new year 2014!
FIXME: Dragonegg may be updated at non-trivial changes.
llvm-svn: 198274
2014-01-01 08:27:31 +00:00
Alexey Samsonov
1a8dd49e21 Remove link to unexisting llvm-prof docs
llvm-svn: 197989
2013-12-24 19:58:49 +00:00
Alexey Samsonov
5c96c8dca5 llvm-symbolizer: add --obj flag to specify a single object file that should be symbolized.
llvm-svn: 197988
2013-12-24 19:33:22 +00:00
Andrew Trick
e157c50343 LangRef documentation for the stackmap and patchpoint intrinsics.
These still have "experimental" status, meaning we don't guarantee
backward compatibility. However, they are already actively used by the
open source WebKit project, and have started to be adopted by other
projects.

llvm-svn: 197930
2013-12-24 02:57:25 +00:00
Timur Iskhodzhanov
6118230a01 [COFF] Add support for the .secidx directive
Reviewed at http://llvm-reviews.chandlerc.com/D2445

llvm-svn: 197826
2013-12-20 18:15:00 +00:00
Timur Iskhodzhanov
38352af0c7 Fix a typo in the docs
llvm-svn: 197798
2013-12-20 10:32:12 +00:00
Alp Toker
20f2bae8eb Fix documentation typos
llvm-svn: 197757
2013-12-20 00:33:39 +00:00
Rafael Espindola
7f55b26d85 Update the links to the SPARC information.
llvm-svn: 197719
2013-12-19 20:54:33 +00:00
Reid Kleckner
f795c3e4a9 Begin adding docs and IR-level support for the inalloca attribute
The inalloca attribute is designed to support passing C++ objects by
value in the Microsoft C++ ABI.  It behaves the same as byval, except
that it always implies that the argument is in memory and that the bytes
are never copied.  This attribute allows the caller to take the address
of an outgoing argument's memory and execute arbitrary code to store
into it.

This patch adds basic IR support, docs, and verification.  It does not
attempt to implement any lowering or fix any possibly broken transforms.

When this patch lands, a complete description of this feature should
appear at http://llvm.org/docs/InAlloca.html .

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

llvm-svn: 197645
2013-12-19 02:14:12 +00:00
Eli Bendersky
b9c2cb9c36 Fix code sample in NVPTX examples: now it compiles to PTX and runs as expected.
llvm-svn: 197498
2013-12-17 14:14:15 +00:00
Renato Golin
38b28ad8c6 Add ARM to release instructions
llvm-svn: 197220
2013-12-13 09:39:36 +00:00
Rafael Espindola
404941ee51 Use "a" instead of "a0" in DataLayout.
It means exactly the same and is just a bit shorter.

llvm-svn: 197169
2013-12-12 17:21:51 +00:00
Rafael Espindola
15e2e528f8 Use Field Lists for the types' "Overview", "Syntax" and "Examples".
Thanks to Sean Silva for the suggestion.

llvm-svn: 196924
2013-12-10 14:53:22 +00:00
Rafael Espindola
6f395c44b1 Remove the notion of primitive types.
They were out of place since the introduction of arbitrary precision integer
types.

This also synchronizes the documentation to Types.h, so it refers to first class
types and single value types.

llvm-svn: 196661
2013-12-07 19:34:20 +00:00
Vincent Lejeune
8f22bc4540 Add a RequireStructuredCFG Field to TargetMachine.
llvm-svn: 196634
2013-12-07 01:49:19 +00:00
Yunzhong Gao
f3138b60c3 Document that dllexported symbols are preserved by optimization passes.
llvm-svn: 196523
2013-12-05 18:37:54 +00:00
Alp Toker
e845f8af67 Correct word hyphenations
This patch tries to avoid unrelated changes other than fixing a few
hyphen-related ambiguities and contractions in nearby lines.

llvm-svn: 196471
2013-12-05 05:44:44 +00:00
Sean Silva
c765e40e3a [LangRef] Remove (non-normative) paragraph that doesn't make sense.
It appears to be referring to nonexistent entities. This must be a
carry-over from an older version of the document.

Patch by Mikael Lyngvig!

llvm-svn: 196342
2013-12-04 02:19:25 +00:00
Alp Toker
29a5122909 Update the LTO GoldPlugin documentation
* Update build instructions to reflect the current source tree layout.
 * Don't inflict CVS on readers; there's a perfectly good git mirror.
 * configure with --disable-werror making it possible to build using clang.
 * ar and nm-new now support the -plugin option.

llvm-svn: 196069
2013-12-02 07:15:33 +00:00
Sean Silva
c96428f3d6 [docs] Mention gotcha regarding implicit BB numbering
Impetus for the clarification by Mikael Lyngvig.

llvm-svn: 195812
2013-11-27 04:55:23 +00:00
Arnaud A. de Grandmaison
d7bbd2a889 CMake : optionaly enable LLVM to be compiled with -std=c++11 (default: off)
In some case, it may be required to build LLVM in C++11 mode, as some the subprojects (like lldb) requires it.

This mimics the autoconf behaviour.

However, given the discussions on the switch to C++11 of the codebase, this behaviour should evolve to default to C++11 with some checks of the compiler capabilities.

llvm-svn: 195727
2013-11-26 10:33:53 +00:00
Benjamin Kramer
1fbfb1fbd6 Remove dangling documentation. llvm-prof was deleted a while ago.
llvm-svn: 195372
2013-11-21 19:32:37 +00:00
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