6057 Commits

Author SHA1 Message Date
Manman Ren
cf18232c49 Swift Calling Convention: swiftcc for ARM.
Differential Revision: http://reviews.llvm.org/D18769


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265482 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 22:44:44 +00:00
Manman Ren
1f7638e1cb Swift Calling Convention: add swiftcc.
Differential Revision: http://reviews.llvm.org/D17863


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265480 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 22:41:47 +00:00
JF Bastien
f90bc5f1a3 Docs: dampen story time for atomics
Story time was nice a few years ago, but by now it's nice to state how things are, rather than explain the diff from ye olden atomic history. These were dark times.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265369 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 00:31:25 +00:00
Paul Robinson
0a27f400f2 Document standard substitutions defined by lit.
Patch by Guilherme Bufolo!

Differential Revision: http://reviews.llvm.org/D18752


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265314 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-04 17:14:45 +00:00
Manman Ren
4bda882517 Swift Calling Convention: add swifterror attribute.
A ``swifterror`` attribute can be applied to a function parameter or an
AllocaInst.

This commit does not include any target-specific change. The target-specific
optimization will come as a follow-up patch.

Differential Revision: http://reviews.llvm.org/D18092


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265189 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-01 21:41:15 +00:00
Adrian Prantl
7876f64bc3 testcase gardening: update the emissionKind enum to the new syntax. (NFC)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265081 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-01 00:16:49 +00:00
Hans Wennborg
f864a32c13 Change eliminateCallFramePseudoInstr() to return an iterator
This will become necessary in a subsequent change to make this method
merge adjacent stack adjustments, i.e. it might erase the previous
and/or next instruction.

It also greatly simplifies the calls to this function from Prolog-
EpilogInserter. Previously, that had a bunch of logic to resume iteration
after the call; now it just continues with the returned iterator.

Note that this changes the behaviour of PEI a little. Previously,
it attempted to re-visit the new instruction created by
eliminateCallFramePseudoInstr(). That code was added in r36625,
but I can't see any reason for it: the new instructions will obviously
not be pseudo instructions, they will not have FrameIndex operands,
and we have already accounted for the stack adjustment.

Differential Revision: http://reviews.llvm.org/D18627

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265036 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-31 18:33:38 +00:00
Sanjoy Das
de765686f8 Introduce a @llvm.experimental.guard intrinsic
Summary:
As discussed on llvm-dev[1].

This change adds the basic boilerplate code around having this intrinsic
in LLVM:

 - Changes in Intrinsics.td, and the IR Verifier
 - A lowering pass to lower @llvm.experimental.guard to normal
   control flow
 - Inliner support

[1]: http://lists.llvm.org/pipermail/llvm-dev/2016-February/095523.html

Reviewers: reames, atrick, chandlerc, rnk, JosephTremoulet, echristo

Subscribers: mcrosier, llvm-commits

Differential Revision: http://reviews.llvm.org/D18527

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264976 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-31 00:18:46 +00:00
Sanjay Patel
c3260cad54 fix typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264933 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-30 21:38:20 +00:00
Justin Lebar
6feb1718ed [NVPTX] Make NVVMReflect a function pass.
Summary:
Currently it's a module pass.  Make it a function pass so that we can
move it to PassManagerBuilder's EP_EarlyAsPossible extension point,
which only accepts function passes.

Reviewers: rnk

Subscribers: tra, llvm-commits, jholewinski

Differential Revision: http://reviews.llvm.org/D18615

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264919 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-30 20:40:11 +00:00
Jingyue Wu
8c5f0de0ab [docs] Add gpucc publication and tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264839 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-30 05:05:40 +00:00
Kostya Serebryany
8bb475faa3 [libFuzzer] more trophies
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264804 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 23:13:25 +00:00
Kostya Serebryany
7544ffc130 [libFuzzer] more docs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264803 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 23:07:36 +00:00
Aaron Ballman
68b470458c Clarifying some of the requirements for building with Visual Studio on Windows. Namely, we require the latest Update to be installed (for sanity purposes), and we require CMake 2.8.12.2 for building LLVM with Visual Studio.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264779 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 20:23:55 +00:00
Manman Ren
d9e9e2b717 Swift Calling Convention: add swiftself attribute.
Differential Revision: http://reviews.llvm.org/D17866


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264754 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 17:37:21 +00:00
Elena Demikhovsky
5a15e95c59 Added 2 notes
1) Skylake and KNL support for X86
2) masked intrinsics load/store/gather/scatter

Differential Revision: http://reviews.llvm.org/D18353



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264703 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 06:55:56 +00:00
Vedant Kumar
cfef8b9a08 [docs] Corrections w.r.t V2 of the coverage mapping format
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264679 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-28 22:16:01 +00:00
Nico Weber
51d98d364c docs: Fix footnote after r260042.
r260042 removed a footnote referring to autoconf, but it left
around one item still referring to that footnote (libtool), and
it didn't renumber the later footnote reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264663 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-28 21:24:46 +00:00
Nico Weber
8c94859cd7 docs: Try to remove weird linebreak from generated html.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264654 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-28 21:00:21 +00:00
Nico Weber
c056d20eaf docs: Update Ninja link, also fix link syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264648 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-28 20:32:38 +00:00
Lang Hames
215b61f08e [Kaleidoscope] Rename Error -> LogError in Chapters 2-5.
This keeps the naming consistent with Chapters 6-8, where Error was renamed to
LogError in r264426 to avoid clashes with the new Error class in libSupport.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264427 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-25 17:41:26 +00:00
Lang Hames
d7b240afb9 [Kaleidoscope] Fix 'Error' name clashes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264426 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-25 17:33:32 +00:00
Reid Kleckner
c68f3d4c8d Try to fix ODR violation of ErrorInfo::ID
This implements my suggestion to Lang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264360 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-24 23:49:34 +00:00
Sanjoy Das
8ba5ebc098 Add lowering support for llvm.experimental.deoptimize
Summary:
Only adds support for "naked" calls to llvm.experimental.deoptimize.
Support for round-tripping through RewriteStatepointsForGC will come
as a separate patch (should be simpler than this one).

Reviewers: reames

Subscribers: sanjoy, mcrosier, llvm-commits

Differential Revision: http://reviews.llvm.org/D18429

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264329 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-24 20:23:29 +00:00
Chris Bieneman
c28ee9ced7 [Docs] Updating CMake docs to include LLVM_OPTIMIZED_TABLEGEN
This is based on feedback on llvm-commits from Sean Silvas.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264318 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-24 18:46:43 +00:00
Lang Hames
2e2ed8c746 [docs] Clarify Error example in Programmer's Manual.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264314 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-24 18:05:21 +00:00
Justin Bogner
8b620f3783 docs: Fix a missing language in a code-block
This should fix the docs build.
Spotted by spstarr, thanks!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264209 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 22:54:19 +00:00
Justin Lebar
fe3378bb83 [CUDA] Update docs to reflect that we no longer define __NVCC__.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264208 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 22:43:10 +00:00
Justin Bogner
2515d26400 FAQ: Remove the entire Build Problems section
This is all horribly outdated, and is mostly about the autoconf build
system that doesn't even exist anymore. These questions aren't
frequent, and these answers aren't useful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264141 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 06:54:42 +00:00
Justin Bogner
ce3a62bee8 FAQ: We require GCC 4.7 - nobody's asking about build failures with 3.3.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264139 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 06:38:53 +00:00
Vedant Kumar
4b4e6ab6be [docs] Fix typo in ProgrammersManual.rst
Patch by Miod Vallat!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264138 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 05:18:50 +00:00
Lang Hames
3821992393 [Docs] Clarify boolean conversion for Error and Expected<T> in the Programmer's
Manual.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264135 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 03:18:16 +00:00
Sean Silva
1495b908cb [docs] Use reST link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264121 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 00:31:21 +00:00
Sean Silva
00b768bfef Bring back Makefile.sphinx
It is not part of autoconf and should not have been removed in r258861.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264120 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 00:30:57 +00:00
Sean Silva
806688c673 [docs] Clarify the sense of --compile-command
In retrospect, it seems "obvious" that the sense of the return code is
the same as if it crashed on "interesting" inputs. But that didn't stop
me from spending more time than I care to admit verifying this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264119 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-23 00:25:13 +00:00
Matthias Braun
a31e891389 Revert "Support arbitrary addrspace pointers in masked load/store intrinsics"
This commit broke LTO builds. Reverting it to unbreak the bots while the
issue is investigated. See also:

http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20160321/341002.html

This reverts r263158

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264088 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-22 20:24:34 +00:00
Justin Lebar
9dd6a5392f [CUDA] Add documentation explaining how to detect clang vs nvcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264002 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-21 23:05:15 +00:00
Kostya Serebryany
bccbdac96f [libFuzzer] one more trophie
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263868 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-19 01:05:33 +00:00
Chris Bieneman
07799b24b7 Fixing autocorrect changing cmake->make
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263843 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-18 22:11:51 +00:00
Chris Bieneman
fd9f306bd8 Missed a few non-ascii characters
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263841 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-18 21:59:33 +00:00
Chris Bieneman
eceee13676 Updates based on post-commit review of r263834
* Renamed to be camel case, consistent with other docs.
* Fixed non-ascii characters (this is what I get for writing docs on an iPad).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263840 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-18 21:57:51 +00:00
Chris Bieneman
3600511689 [Docs] New documentation for advanced build configurations
This document covers how to use some of the new complex build configurations CMake supports.

Feedback and improvements welcomed!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263834 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-18 21:16:26 +00:00
Kostya Serebryany
4aa62c5d17 [libFuzzer] add a flag close_fd_mask so that we can silence spammy targets by closing stderr/stdout
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263831 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-18 20:58:29 +00:00
Alexey Samsonov
b0697bb475 [Docs] Fix a typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263754 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-17 23:08:01 +00:00
Wilfred Hughes
0a1bf1d197 Remove obselete reference to TypeResolve from the tutorial.
TypeResolve went away in r134829 in 2011.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263702 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-17 10:20:58 +00:00
Wilfred Hughes
656df231ed Minor grammar fix in kaleidoscope tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263700 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-17 10:18:13 +00:00
Wilfred Hughes
c2e48fb33a Further typo fixes in kaleidoscope tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263697 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-17 09:26:45 +00:00
Wilfred Hughes
a66f9eb55e Fix typo in kaleidoscope tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263696 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-17 09:09:07 +00:00
Lang Hames
b92213233c [Support] Add the 'Error' class for structured error handling.
This patch introduces the Error classs for lightweight, structured,
recoverable error handling. It includes utilities for creating, manipulating
and handling errors. The scheme is similar to exceptions, in that errors are
described with user-defined types. Unlike exceptions however, errors are
represented as ordinary return types in the API (similar to the way
std::error_code is used).

For usage notes see the LLVM programmer's manual, and the Error.h header.
Usage examples can be found in unittests/Support/ErrorTest.cpp.

Many thanks to David Blaikie, Mehdi Amini, Kevin Enderby and others on the
llvm-dev and llvm-commits lists for lots of discussion and review.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263609 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-16 01:02:46 +00:00
Justin Lebar
0e344de12e [docs] "Straightforward" is one word.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263480 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-14 20:18:51 +00:00