summaryrefslogtreecommitdiffstats
path: root/llvm/docs
Commit message (Collapse)AuthorAgeFilesLines
* Fix grammar in documentation.Eric Christopher2015-02-192-9/+9
| | | | | | Patch by Ralph Campbell! llvm-svn: 229884
* Document that defaulted & deleted methods and explicit conversions are ↵Benjamin Kramer2015-02-161-0/+7
| | | | | | allowed now. llvm-svn: 229369
* Remove LLVM_HAS_VARIADIC_TEMPLATES and all the faux variadic workarounds ↵Benjamin Kramer2015-02-151-0/+2
| | | | | | | | guarded by it. We no longer support compilers without variadic template support. llvm-svn: 229324
* Update the docs to require at least MSVC 2013.Benjamin Kramer2015-02-153-5/+5
| | | | llvm-svn: 229323
* Help: Document how to build and install with CMake.Tom Stellard2015-02-131-0/+30
| | | | | | | | Resolves PR21569. Patch by: Stephen Kelly llvm-svn: 229122
* Help: Document the minimum CMake version required.Tom Stellard2015-02-131-1/+1
| | | | | | Patch by: Stephen Kelly llvm-svn: 229121
* Don't promote asynch EH invokes of nounwind functions to callsReid Kleckner2015-02-111-3/+6
| | | | | | | | | | | If the landingpad of the invoke is using a personality function that catches asynch exceptions, then it can catch a trap. Also add some landingpads to invalid LLVM IR test cases that lack them. Over-the-shoulder reviewed by David Majnemer. llvm-svn: 228782
* fix docs typoNico Weber2015-02-101-1/+1
| | | | llvm-svn: 228741
* Adding support for llvm.eh.begincatch and llvm.eh.endcatch intrinsics and ↵Andrew Kaylor2015-02-101-0/+170
| | | | | | | | beginning the documentation of native Windows exception handling. Differential Revision: http://reviews.llvm.org/D7398 llvm-svn: 228733
* Fix typo in cmake example docsRenato Golin2015-02-101-1/+1
| | | | | | Patch by Vinicius Tinti. llvm-svn: 228690
* [DOC] Asserts are only enabled in Debug build, update the doc accordinglyMehdi Amini2015-02-101-5/+5
| | | | | | | | | | | | | Summary: The CMake configuration is explicitely looking for Debug build, all the other variant disable assertions. Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D7359 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 228653
* DebugInfo: Remove DW_TAG_constantDuncan P. N. Exon Smith2015-02-091-1/+0
| | | | | | | | Remove handling for DW_TAG_constant. We started producing it in r110656, but reverted that in r110876 without dropping the support. Finish the job. llvm-svn: 228623
* Rename the 'Extending the Language: Debug Information' to 'Adding Debug ↵David Blaikie2015-02-072-4/+4
| | | | | | Information' since this isn't actually modifying/extending the language. llvm-svn: 228512
* Fix docs typo regarding lit.local.cfg filesJonathan Roelofs2015-02-071-1/+1
| | | | llvm-svn: 228499
* [docs][LLVM-style RTTI] Add a mention of multiple inheritance.Sean Silva2015-02-071-0/+14
| | | | llvm-svn: 228479
* [docs] Put an explicit link to InAlloca.rstSean Silva2015-02-041-0/+3
| | | | llvm-svn: 228192
* Misc documentation/comment fixes.Peter Collingbourne2015-02-042-2/+2
| | | | llvm-svn: 228093
* Remove the preverify pass from the documentation now that it has been removedYunzhong Gao2015-01-301-7/+0
| | | | | | since r199487. llvm-svn: 227608
* Remove gc.root's performCustomLoweringPhilip Reames2015-01-281-63/+12
| | | | | | | | | | | | | | This is a refactoring to restructure the single user of performCustomLowering as a specific lowering pass and remove the custom lowering hook entirely. Before this change, the LowerIntrinsics pass (note to self: rename!) was essentially acting as a pass manager, but without being structured in terms of passes. Instead, it proxied calls to a set of GCStrategies internally. This adds a lot of conceptual complexity (i.e. GCStrategies are stateful!) for very little benefit. Since there's been interest in keeping the ShadowStackGC working, I extracting it's custom lowering pass into a dedicated pass and just added that to the pass order. It will only run for functions which opt-in to that gc. I wasn't able to find an easy way to preserve the runtime registration of custom lowering functionality. Given that no user of this exists that I'm aware of, I made the choice to just remove that. If someone really cares, we can look at restoring it via dynamic pass registration in the future. Note that despite the large diff, none of the lowering code actual changes. I added the framing needed to make it a pass and rename the class, but that's it. Differential Revision: http://reviews.llvm.org/D7218 llvm-svn: 227351
* [docs] Use slightly more proper .rst markupSean Silva2015-01-281-3/+3
| | | | | | | | | | | Again, I'd like to emphasize to everyone that this sort of markup change is *not* what you should be concerned about when writing docs. Focus on *content*. I applaud Chandler for focusing on the fantastic content of this new section! llvm-svn: 227305
* [docs] [cleanup] No need for a comment around C++11 overrideSean Silva2015-01-281-6/+6
| | | | llvm-svn: 227304
* Introduce a section to the programmers manual about type hierarchies,Chandler Carruth2015-01-281-0/+70
| | | | | | | | | | | | | | | | | | | polymorphism, and virtual dispatch. This is essentially trying to explain the emerging design techniques being used in LLVM these days somewhere more accessible than the comments on a particular piece of infrastructure. It covers the "concepts-based polymorphism" that caused some confusion during initial reviews of the new pass manager as well as the tagged-dispatch mechanism used pervasively in LLVM and Clang. Perhaps most notably, I've tried to provide some criteria to help developers choose between these options when designing new pieces of infrastructure. Differential Revision: http://reviews.llvm.org/D7191 llvm-svn: 227292
* [docs] Add link to the MIPS 64-bit ELF object file specificationSimon Atanasyan2015-01-251-0/+2
| | | | llvm-svn: 227050
* Fixup debug information references.Charlie Turner2015-01-243-11/+13
| | | | llvm-svn: 227020
* Update references to lines of code count.Charlie Turner2015-01-242-2/+2
| | | | | | | | The number of lines of code in Kaleidoscope has risen from the previously reported 700 to 986 according to the cloc tool. This tools was run on the toy.cpp file from Chapter 8. llvm-svn: 227019
* Intrinsics: introduce llvm_any_ty aka ValueType AnyRamkumar Ramachandra2015-01-221-7/+1
| | | | | | | | | | | | | | | Specifically, gc.result benefits from this greatly. Instead of: gc.result.int.* gc.result.float.* gc.result.ptr.* ... We now have a gc.result.* that can specialize to literally any type. Differential Revision: http://reviews.llvm.org/D7020 llvm-svn: 226857
* Explicitly describe '///' versus '//' comment delimiters.Paul Robinson2015-01-221-2/+4
| | | | llvm-svn: 226750
* [PM] Split the LoopInfo object apart from the legacy pass, creatingChandler Carruth2015-01-171-2/+2
| | | | | | | | | | a LoopInfoWrapperPass to wire the object up to the legacy pass manager. This switches all the clients of LoopInfo over and paves the way to port LoopInfo to the new pass manager. No functionality change is intended with this iteration. llvm-svn: 226373
* ProgrammersManual.rst: fix a typoHans Wennborg2015-01-171-1/+1
| | | | llvm-svn: 226367
* [PowerPC] Adjust PatchPoints for ppc64leHal Finkel2015-01-161-5/+6
| | | | | | | | | | Bill Schmidt pointed out that some adjustments would be needed to properly support powerpc64le (using the ELF V2 ABI). For one thing, R11 is not available as a scratch register, so we need to use R12. R12 is also available under ELF V1, so to maintain consistency, I flipped the order to make R12 the first scratch register in the array under both ABIs. llvm-svn: 226247
* ReleaseNotes.rst: bump version to 3.7Hans Wennborg2015-01-141-161/+8
| | | | | | The 3.6 notes are now in the 3.6 branch. llvm-svn: 226007
* Trunk is now 3.7.0svnHans Wennborg2015-01-141-2/+2
| | | | llvm-svn: 226004
* fix typosSanjay Patel2015-01-141-2/+2
| | | | llvm-svn: 225991
* SelectionDAG: add a -filter-view-dags option to llcMehdi Amini2015-01-141-1/+5
| | | | | | | | | This option takes the name of the basic block you want to visualize with -view-*-dags Differential Revision: http://reviews.llvm.org/D6948 llvm-svn: 225953
* Revert "r225811 - Revert "r225808 - [PowerPC] Add StackMap/PatchPoint support""Hal Finkel2015-01-141-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This re-applies r225808, fixed to avoid problems with SDAG dependencies along with the preceding fix to ScheduleDAGSDNodes::RegDefIter::InitNodeNumDefs. These problems caused the original regression tests to assert/segfault on many (but not all) systems. Original commit message: This commit does two things: 1. Refactors PPCFastISel to use more of the common infrastructure for call lowering (this lets us take advantage of this common code for lowering some common intrinsics, stackmap/patchpoint among them). 2. Adds support for stackmap/patchpoint lowering. For the most part, this is very similar to the support in the AArch64 target, with the obvious differences (different registers, NOP instructions, etc.). The test cases are adapted from the AArch64 test cases. One difference of note is that the patchpoint call sequence takes 24 bytes, so you can't use less than that (on AArch64 you can go down to 16). Also, as noted in the docs, we take the patchpoint address to be the actual code address (assuming the call is local in the TOC-sharing sense), which should yield higher performance than generating the full cross-DSO indirect-call sequence and is likely just as useful for JITed code (if not, we'll change it). StackMaps and Patchpoints are still marked as experimental, and so this support is doubly experimental. So go ahead and experiment! llvm-svn: 225909
* AsmParser/Bitcode: Add support for MDLocationDuncan P. N. Exon Smith2015-01-131-0/+17
| | | | | | | | | | | | This adds assembly and bitcode support for `MDLocation`. The assembly side is rather big, since this is the first `MDNode` subclass (that isn't `MDTuple`). Part of PR21433. (If you're wondering where the mountains of testcase updates are, we don't need them until I update `DILocation` and `DebugLoc` to actually use this class.) llvm-svn: 225830
* Add link to Go bindings documentation.Peter Collingbourne2015-01-131-0/+2
| | | | llvm-svn: 225815
* Revert "r225808 - [PowerPC] Add StackMap/PatchPoint support"Hal Finkel2015-01-131-6/+0
| | | | | | | Reverting this while I investiage buildbot failures (segfaulting in GetCostForDef at ScheduleDAGRRList.cpp:314). llvm-svn: 225811
* [PowerPC] Add StackMap/PatchPoint supportHal Finkel2015-01-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | This commit does two things: 1. Refactors PPCFastISel to use more of the common infrastructure for call lowering (this lets us take advantage of this common code for lowering some common intrinsics, stackmap/patchpoint among them). 2. Adds support for stackmap/patchpoint lowering. For the most part, this is very similar to the support in the AArch64 target, with the obvious differences (different registers, NOP instructions, etc.). The test cases are adapted from the AArch64 test cases. One difference of note is that the patchpoint call sequence takes 24 bytes, so you can't use less than that (on AArch64 you can go down to 16). Also, as noted in the docs, we take the patchpoint address to be the actual code address (assuming the call is local in the TOC-sharing sense), which should yield higher performance than generating the full cross-DSO indirect-call sequence and is likely just as useful for JITed code (if not, we'll change it). StackMaps and Patchpoints are still marked as experimental, and so this support is doubly experimental. So go ahead and experiment! llvm-svn: 225808
* Added a Mips lld milestone to the release notes for the 3.6 release.Daniel Sanders2015-01-131-4/+5
| | | | llvm-svn: 225797
* Update release notes wrt OCaml bindings.Peter Zotov2015-01-131-0/+26
| | | | llvm-svn: 225779
* Rename llvm.recoverframeallocation to llvm.framerecoverReid Kleckner2015-01-131-6/+6
| | | | | | | | This name is less descriptive, but it sort of puts things in the 'llvm.frame...' namespace, relating it to frameallocate and frameaddress. It also avoids using "allocate" and "allocation" together. llvm-svn: 225752
* Phabricator calls it "subscriber" not "cc"Paul Robinson2015-01-131-1/+2
| | | | llvm-svn: 225747
* Add the llvm.frameallocate and llvm.recoverframeallocation intrinsicsReid Kleckner2015-01-131-0/+50
| | | | | | | | | | | | | | | | | | | | | These intrinsics allow multiple functions to share a single stack allocation from one function's call frame. The function with the allocation may only perform one allocation, and it must be in the entry block. Functions accessing the allocation call llvm.recoverframeallocation with the function whose frame they are accessing and a frame pointer from an active call frame of that function. These intrinsics are very difficult to inline correctly, so the intention is that they be introduced rarely, or at least very late during EH preparation. Reviewers: echristo, andrew.w.kaylor Differential Revision: http://reviews.llvm.org/D6493 llvm-svn: 225746
* First crack at PowerPC 3.6 release notesBill Schmidt2015-01-121-1/+19
| | | | llvm-svn: 225695
* Fix silly mistake in release notes for Mips.Daniel Sanders2015-01-111-1/+1
| | | | llvm-svn: 225608
* Added release notes for the Mips target.Daniel Sanders2015-01-111-1/+68
| | | | llvm-svn: 225607
* ReleaseNotes.rst: these are for 3.6Hans Wennborg2015-01-091-1/+1
| | | | llvm-svn: 225482
* LangRef: Add usage points for distinct MDNodesDuncan P. N. Exon Smith2015-01-081-0/+4
| | | | | | Omission pointed out by Sean Silva! llvm-svn: 225479
* IR: Add 'distinct' MDNodes to bitcode and assemblyDuncan P. N. Exon Smith2015-01-081-0/+6
| | | | | | | | | | | | | | | | | | Propagate whether `MDNode`s are 'distinct' through the other types of IR (assembly and bitcode). This adds the `distinct` keyword to assembly. Currently, no one actually calls `MDNode::getDistinct()`, so these nodes only get created for: - self-references, which are never uniqued, and - nodes whose operands are replaced that hit a uniquing collision. The concept of distinct nodes is still not quite first-class, since distinct-ness doesn't yet survive across `MapMetadata()`. Part of PR22111. llvm-svn: 225474
OpenPOWER on IntegriCloud