summaryrefslogtreecommitdiffstats
path: root/llvm/docs
Commit message (Collapse)AuthorAgeFilesLines
...
* [docs] Fix minor typo in CodingStandards.rstVedant Kumar2015-08-191-1/+1
| | | | llvm-svn: 245473
* [Kaleidoscope] Clang-format the Kaleidoscope tutorials.Lang Hames2015-08-198-137/+255
| | | | | | Also reduces changes between tutorial chapters. llvm-svn: 245472
* [Kaleidoscope] Start C++11'ifying the kaleidoscope tutorials.Lang Hames2015-08-188-132/+150
| | | | llvm-svn: 245322
* Doxygen: add build option to use svg instead of png files for graphsHans Wennborg2015-08-174-1/+15
| | | | | | Differential Revision: http://reviews.llvm.org/D11994 llvm-svn: 245256
* [IR] Give catchret an optional 'return value' operandDavid Majnemer2015-08-151-1/+2
| | | | | | | | | | | Some personality routines require funclet exit points to be clearly marked, this is done by producing a token at the funclet pad and consuming it at the corresponding ret instruction. CleanupReturnInst already had a spot for this operand but CatchReturnInst did not. Other personality routines don't need to use this which is why it has been made optional. llvm-svn: 245149
* MIRLangRef: Describe the syntax that is used to represent machine basic blocks.Alex Lorenz2015-08-151-2/+111
| | | | llvm-svn: 245138
* [bpf] add documentation and instruction set descriptionAlexei Starovoitov2015-08-141-0/+197
| | | | llvm-svn: 245105
* [IR] Add token typesDavid Majnemer2015-08-141-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces the basic functionality to support "token types". The motivation stems from the need to perform operations on a Value whose provenance cannot be obscured. There are several applications for such a type but my immediate motivation stems from WinEH. Our personality routine enforces a single-entry - single-exit regime for cleanups. After several rounds of optimizations, we may be left with a terminator whose "cleanup-entry block" is not entirely clear because control flow has merged two cleanups together. We have experimented with using labels as operands inside of instructions which are not terminators to indicate where we came from but found that LLVM does not expect such exotic uses of BasicBlocks. Instead, we can use this new type to clearly associate the "entry point" and "exit point" of our cleanup. This is done by having the cleanuppad yield a Token and consuming it at the cleanupret. The token type makes it impossible to obscure or otherwise hide the Value, making it trivial to track the relationship between the two points. What is the burden to the optimizer? Well, it turns out we have already paid down this cost by accepting that there are certain calls that we are not permitted to duplicate, optimizations have to watch out for such instructions anyway. There are additional places in the optimizer that we will probably have to update but early examination has given me the impression that this will not be heroic. Differential Revision: http://reviews.llvm.org/D11861 llvm-svn: 245029
* Update MIRLangRef for MIR syntax change from r244982.Alex Lorenz2015-08-141-16/+11
| | | | llvm-svn: 244996
* Test Commit - Corrected spelling in README.txt.Steve King2015-08-121-1/+1
| | | | llvm-svn: 244842
* [PM/AA] Remove the AliasDebugger pass.Chandler Carruth2015-08-121-5/+4
| | | | | | | | | | | | | | | | | | This debugger was designed to catch places where the old update API was failing to be used correctly. As I've removed the update API, it no longer serves any purpose. We can introduce new debugging aid passes around any future work w.r.t. updating AAs. Note that I've updated the documentation here, but really I need to rewrite the documentation to carefully spell out the ideas around stateful AA and how things are changing in the AA world. However, I'm hoping to do that as a follow-up to the refactoring of the AA infrastructure to work in both old and new pass managers so that I can write the documentation specific to that world. Differential Revision: http://reviews.llvm.org/D11984 llvm-svn: 244825
* Docs: keep copyright years up-to-date.Hans Wennborg2015-08-121-1/+2
| | | | llvm-svn: 244789
* [libFuzzer] more trophiesKostya Serebryany2015-08-111-0/+2
| | | | llvm-svn: 244661
* [libFuzzer] fix docs buildKostya Serebryany2015-08-111-5/+13
| | | | llvm-svn: 244566
* [libFuzzer] add the list of trophies to the docs. It is incomplete, ↵Kostya Serebryany2015-08-111-0/+15
| | | | | | additions are welcome :) llvm-svn: 244560
* [libFuzzer] add -only_ascii flagKostya Serebryany2015-08-111-0/+1
| | | | llvm-svn: 244559
* Update the syntax for load instruction in this example.Nick Lewycky2015-08-111-1/+1
| | | | llvm-svn: 244554
* Add new llvm.loop.unroll.enable metadata.Mark Heffernan2015-08-101-0/+12
| | | | | | | | | | | | | This change adds the unroll metadata "llvm.loop.unroll.enable" which directs the optimizer to unroll a loop fully if the trip count is known at compile time, and unroll partially if the trip count is not known at compile time. This differs from "llvm.loop.unroll.full" which explicitly does not unroll a loop if the trip count is not known at compile time. The "llvm.loop.unroll.enable" is intended to be added for loops annotated with "#pragma unroll". llvm-svn: 244466
* [LangRef] Cleanup some stray whitespace inconsistencies.Sean Silva2015-08-061-104/+104
| | | | | | Patch by Debora Setton Sanches! <setton.debora@gmail.com> llvm-svn: 244294
* [LangRef] Tiny editorial fixes.Sean Silva2015-08-061-20/+20
| | | | | | Patch by Debora Setton Sanches! <setton.debora@gmail.com> llvm-svn: 244293
* Add initial documentation for the MIR serialization format.Alex Lorenz2015-08-062-0/+129
| | | | | | Differential Revision: http://reviews.llvm.org/D11736 llvm-svn: 244292
* Describe the process better.Sean Silva2015-08-061-3/+5
| | | | | | Patch by Vedant Kumar! <vsk@apple.com> llvm-svn: 244283
* [WinEH] Add documentation motivating the new EH instructionsReid Kleckner2015-08-061-150/+205
| | | | | | | | | | | This adds documentation on how to use the new EH instructions added in r243766. Reviewers: majnemer, reames Differential Revision: http://reviews.llvm.org/D11565 llvm-svn: 244267
* Update docs for accessing !dbg attachmentsDuncan P. N. Exon Smith2015-08-061-6/+5
| | | | llvm-svn: 244238
* docs: Fix typo in Phabricator.rstReid Kleckner2015-08-061-1/+1
| | | | | | | | | | | | Summary: Fix a small typo in Phabricator.rst: s/your/you. Reviewers: rnk Subscribers: rnk, llvm-commits Differential Revision: http://reviews.llvm.org/D11585 llvm-svn: 244231
* Update GettingStarted docs list of LLVM_TARGETS_TO_BUILD to match cmake.Pete Cooper2015-08-051-3/+3
| | | | | | | | | | Since the docs were written, we've added the BPF backend to the list. Updating the docs to take this in to account. Also sorted them to match cmake while I was changing these lines. Reviewed by Chris B. llvm-svn: 244123
* [libFuzzer] use data-flow feedback from strcmpKostya Serebryany2015-08-051-1/+1
| | | | llvm-svn: 244084
* Rename all references to old mailing lists to new lists.llvm.org address.Tanya Lattner2015-08-0514-47/+47
| | | | llvm-svn: 243999
* [GettingStarted.rst] Commit the right patch.Sean Silva2015-08-041-4/+2
| | | | | | | | | Looks like the rebased version that Mehdi committed didn't incorporate the latest changes. Patch by Erik de Castro Lopo <erikd@mega-nerd.com>! llvm-svn: 243942
* Docs: s/Sanitiser/Sanitizer/ for consistencyMehdi Amini2015-08-031-4/+4
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 243918
* GettingStarted.rst: Add info about building sanitizersMehdi Amini2015-08-031-2/+19
| | | | | From: Erik de Castro Lopo <erikd@qti.qualcomm.com> llvm-svn: 243917
* docs/GettingStarted.rst: Whitespace onlyMehdi Amini2015-08-031-24/+24
| | | | | From: Erik de Castro Lopo <erikd@qti.qualcomm.com> llvm-svn: 243916
* [libFuzzer] minimal documentation on data-flow-guided fuzzingKostya Serebryany2015-07-311-0/+16
| | | | llvm-svn: 243793
* IR: Add a broad bitcode compatibility testDuncan P. N. Exon Smith2015-07-311-2/+7
| | | | | | | | | | | | | | | | Successive versions of LLVM should retain the ability to parse bitcode generated by old releases of the compiler. This adds a bitcode format compatibility test, which is intended to provide good (albeit not entirely exhaustive) coverage of the current LangRef. This also includes compatibility tests for LLVM 3.6. After every 3.X.0 release, the compatibility.ll file from the 3.X branch should be copied to compatibility-3.X.ll on trunk, and the 3.X.0 release used to generate a corresponding bitcode file. Patch by Vedant Kumar! llvm-svn: 243779
* DI: Remove DW_TAG_arg_variable and DW_TAG_auto_variableDuncan P. N. Exon Smith2015-07-312-19/+15
| | | | | | | | | | | | | | | | | | | | | | | | Remove the fake `DW_TAG_auto_variable` and `DW_TAG_arg_variable` tags, using `DW_TAG_variable` in their place Stop exposing the `tag:` field at all in the assembly format for `DILocalVariable`. Most of the testcase updates were generated by the following sed script: find test/ -name "*.ll" -o -name "*.mir" | xargs grep -l 'DILocalVariable' | xargs sed -i '' \ -e 's/tag: DW_TAG_arg_variable, //' \ -e 's/tag: DW_TAG_auto_variable, //' There were only a handful of tests in `test/Assembly` that I needed to update by hand. (Note: a follow-up could change `DILocalVariable::DILocalVariable()` to set the tag to `DW_TAG_formal_parameter` instead of `DW_TAG_variable` (as appropriate), instead of having that logic magically in the backend in `DbgVariable`. I've added a FIXME to that effect.) llvm-svn: 243774
* New EH representation for MSVC compatibilityDavid Majnemer2015-07-311-1/+367
| | | | | | | | | | This introduces new instructions neccessary to implement MSVC-compatible exception handling support. Most of the middle-end and none of the back-end haven't been audited or updated to take them into account. Differential Revision: http://reviews.llvm.org/D11097 llvm-svn: 243766
* DI: Rewrite the DIBuilder local variable APIDuncan P. N. Exon Smith2015-07-311-3/+2
| | | | | | | | | | | | Replace the general `createLocalVariable()` with two more specific functions: `createParameterVariable()` and `createAutoVariable()`, and rewrite the documentation. Besides cleaning up the API, this avoids exposing the fake DWARF tags `DW_TAG_arg_variable` and `DW_TAG_auto_variable` to frontends, and is preparation for removing them completely. llvm-svn: 243764
* docs: Add information about helper scripts to HowToReleaseLLVM pageTom Stellard2015-07-311-47/+10
| | | | | | Differential Revision: http://reviews.llvm.org/D10081 llvm-svn: 243720
* Reverting r243386 because it has serious post-commit concerns that have not ↵Aaron Ballman2015-07-291-2/+1
| | | | | | been addressed. Also reverts r243389, which relied on this commit. llvm-svn: 243527
* [Statepoints] Let patchable statepoints have a symbolic call target.Sanjoy Das2015-07-281-3/+5
| | | | | | | | | | | | | | | | | | | | Summary: As added initially, statepoints required their call targets to be a constant pointer null if ``numPatchBytes`` was non-zero. This turns out to be a problem ergonomically, since there is no way to mark patchable statepoints as calling a (readable) symbolic value. This change remove the restriction of requiring ``null`` call targets for patchable statepoints, and changes PlaceSafepoints to maintain the symbolic call target through its transformation. Reviewers: reames, swaroop.sridhar Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11550 llvm-svn: 243502
* Implement target independent TLS compatible with glibc's emutls.c.Chih-Hung Hsieh2015-07-281-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'common' section TLS is not implemented. Current C/C++ TLS variables are not placed in common section. DWARF debug info to get the address of TLS variables is not generated yet. clang and driver changes in http://reviews.llvm.org/D10524 Added -femulated-tls flag to select the emulated TLS model, which will be used for old targets like Android that do not support ELF TLS models. Added TargetLowering::LowerToTLSEmulatedModel as a target-independent function to convert a SDNode of TLS variable address to a function call to __emutls_get_address. Added into lib/Target/*/*ISelLowering.cpp to call LowerToTLSEmulatedModel for TLSModel::Emulated. Although all targets supporting ELF TLS models are enhanced, emulated TLS model has been tested only for Android ELF targets. Modified AsmPrinter.cpp to print the emutls_v.* and emutls_t.* variables for emulated TLS variables. Modified DwarfCompileUnit.cpp to skip some DIE for emulated TLS variabls. TODO: Add proper DIE for emulated TLS variables. Added new unit tests with emulated TLS. Differential Revision: http://reviews.llvm.org/D10522 llvm-svn: 243438
* Summary:Martell Malone2015-07-281-0/+1
| | | | | | | | | | | | | | | | Object: add IMAGE_FILE_MACHINE_ARM64 The official specifications state that the value of IMAGE_FILE_MACHINE_ARM64 is 0xAA64 (as per the Microsoft Portable Executable and Common Object Format Specification v8.3). Reviewers: rnk Subscribers: llvm-commits, compnerd, ruiu Differential Revision: http://reviews.llvm.org/D11511 llvm-svn: 243434
* docs: update arcanist linksMartell Malone2015-07-281-2/+2
| | | | | | | | | | | | | | Summary: I need a test commit for using arc. This seems like an appropriate commit to use as a test We may want to port this commit back to 3.7 also Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11527 llvm-svn: 243408
* Improving lli documentationRenato Golin2015-07-281-124/+44
| | | | | | | | | | | | | | | Too many people hope lli would act as an emulator when it's actually just a tool to help prototype IR code and test the JIT compiler. This commit makes that fact explicit in the documentation It also migrates the old style bold/italic doc tags to the preferred meta tags (.. option::, :program:, etc). No errors when generating the documents, visual inspection in the HTML result doesn't show any major difference, apart from the slight style change. llvm-svn: 243401
* Adding ADT SortedVector; client patch will follow.Puyan Lotfi2015-07-281-1/+2
| | | | llvm-svn: 243386
* DI/Verifier: Fix argument bitrot in DILocalVariableDuncan P. N. Exon Smith2015-07-242-4/+4
| | | | | | | | | | | | | | | | | | | | | | Add a verifier check that `DILocalVariable`s of tag `DW_TAG_arg_variable` always have a non-zero 'arg:' field, and those of tag `DW_TAG_auto_variable` always have a zero 'arg:' field. These are the only configurations that are properly understood by the backend. (Also, fix the bad examples in LangRef and test/Assembler, and fix the bug in Kaleidoscope Ch8.) A large number of testcases seem to have bitrotted their way forward from some ancient version of the debug info hierarchy that didn't have `arg:` parameters. If you have out-of-tree testcases that start failing in the verifier and you don't care enough to get the `arg:` right, you may have some luck just calling: sed -e 's/, arg: 0/, arg: 1/' or some such, but I hand-updated the ones in tree. llvm-svn: 243183
* Add missing underlines for a docs section. NFCJonathan Roelofs2015-07-241-0/+1
| | | | llvm-svn: 243075
* Remove oversight group. Replace with LLVM Foundation Board of Directors.Tanya Lattner2015-07-211-1/+1
| | | | llvm-svn: 242830
* Start adding documentation for llvm-lib.Rafael Espindola2015-07-172-0/+32
| | | | llvm-svn: 242557
* [OCaml] Use a nicer style for documentation than OCaml default.Peter Zotov2015-07-172-1/+100
| | | | | | | | | | In particular, it's much easier to read, as it doesn't expand all the way on wide-screen displays. CSS committed under LLVM license with explicit permission from Daniel Bünzli <daniel.buenzli@erratique.ch>. llvm-svn: 242511
OpenPOWER on IntegriCloud