summaryrefslogtreecommitdiffstats
path: root/llvm/docs
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix the docs I brokeChris Matthews2016-03-111-0/+3
| | | | llvm-svn: 263309
* Extend test-suite docs to describe how to run test-suite with cmake+litChris Matthews2016-03-111-9/+76
| | | | llvm-svn: 263305
* Introduce @llvm.experimental.deoptimizeSanjoy Das2016-03-111-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This intrinsic, together with deoptimization operand bundles, allow frontends to express transfer of control and frame-local state from one (typically more specialized, hence faster) version of a function into another (typically more generic, hence slower) version. In languages with a fully integrated managed runtime this intrinsic can be used to implement "uncommon trap" like functionality. In unmanaged languages like C and C++, this intrinsic can be used to represent the slow paths of specialized functions. Note: this change does not address how `@llvm.experimental_deoptimize` is lowered. That will be done in a later change. Reviewers: chandlerc, rnk, atrick, reames Subscribers: llvm-commits, kmod, mjacob, maksfb, mcrosier, JosephTremoulet Differential Revision: http://reviews.llvm.org/D17732 llvm-svn: 263281
* Support arbitrary addrspace pointers in masked load/store intrinsicsArtur Pilipenko2016-03-101-10/+10
| | | | | | | | | | | | This patch fixes the problem which occurs when loop-vectorize tries to use @llvm.masked.load/store intrinsic for a non-default addrspace pointer. It fails with "Calling a function with a bad signature!" assertion in CallInst constructor because it tries to pass a non-default addrspace pointer to the pointer argument which has default addrspace. The fix is to add pointer type as another overloaded type to @llvm.masked.load/store intrinsics. Reviewed By: reames Differential Revision: http://reviews.llvm.org/D17270 llvm-svn: 263158
* Add an entry in the Release Notes for LLVMContext::discardValueNames()Mehdi Amini2016-03-101-0/+5
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 263088
* ReleaseNotes: update 'you may prefer' link to 3.8Hans Wennborg2016-03-091-1/+1
| | | | llvm-svn: 263030
* Fix broken example for bitreverse documentationMatt Arsenault2016-03-071-2/+2
| | | | llvm-svn: 262865
* Fix typo.Wilfred Hughes2016-03-061-1/+1
| | | | llvm-svn: 262802
* [docs] Updated docs to work with Doxygen 1.8.11Alexander Kornienko2016-03-062-23/+11
| | | | llvm-svn: 262786
* [Statepoint docs] Delete trailing whitespaceSanjoy Das2016-03-041-21/+21
| | | | llvm-svn: 262730
* [docs] Add a description of current problem areas to the statepoint docsPhilip Reames2016-03-031-0/+35
| | | | | | Triggered by a question on llvm-dev about status llvm-svn: 262671
* [libFuzzer] more trophiesKostya Serebryany2016-03-021-1/+1
| | | | llvm-svn: 262509
* Rename embedded bitcode section in MachOSteven Wu2016-02-291-4/+5
| | | | | | | | | | | | | | Summary: Rename the section embeds bitcode from ".llvmbc,.llvmbc" to "__LLVM,__bitcode". The new name matches MachO section naming convention. Reviewers: rafael, pcc Subscribers: davide, llvm-commits, joker.eph Differential Revision: http://reviews.llvm.org/D17388 llvm-svn: 262245
* [libFuzzer] don't emit callbacks to sanitizer run-time in ↵Kostya Serebryany2016-02-271-0/+1
| | | | | | -fsanitize-coverage=trace-pc mode; update libFuzzer doc for previous commit llvm-svn: 262110
* Minor doc fix: statepoints are invokable tooSanjoy Das2016-02-261-2/+3
| | | | llvm-svn: 261968
* fix typoSanjay Patel2016-02-241-1/+1
| | | | llvm-svn: 261805
* [doc] Obtaining help on LLVM's CUDA support.Jingyue Wu2016-02-231-0/+6
| | | | llvm-svn: 261706
* fix the indentation of the exampleSylvestre Ledru2016-02-231-1/+1
| | | | llvm-svn: 261628
* docs/AMDGPUUsage: Update assembly exampleTom Stellard2016-02-221-2/+7
| | | | | | | | | | Reviewers: arsenm, nhaustov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D17461 llvm-svn: 261550
* [LPM] Document the new helpers to make it easy to get consistent requireChandler Carruth2016-02-191-0/+8
| | | | | | | | and preserve behavior from loop passes. Differential Revision: http://reviews.llvm.org/D17443 llvm-svn: 261319
* [IR] Extend cmpxchg to allow pointer type operandsPhilip Reames2016-02-191-7/+7
| | | | | | | | | | | | Today, we do not allow cmpxchg operations with pointer arguments. We require the frontend to insert ptrtoint casts and do the cmpxchg in integers. While correct, this is problematic from a couple of perspectives: 1) It makes the IR harder to analyse (for instance, it make capture tracking overly conservative) 2) It pushes work onto the frontend authors for no real gain This patch implements the simplest form of IR support. As we did with floating point loads and stores, we teach AtomicExpand to convert back to the old representation. This prevents us needing to change all backends in a single lock step change. Over time, we can migrate each backend to natively selecting the pointer type. In the meantime, we get the advantages of a cleaner IR representation without waiting for the backend changes. Differential Revision: http://reviews.llvm.org/D17413 llvm-svn: 261281
* Mention 'notail' attribute in 3.9 release notes.Akira Hatanaka2016-02-171-0/+6
| | | | llvm-svn: 261141
* Update langref to indicate that calls may be convergent.Justin Lebar2016-02-171-5/+14
| | | | | | | | | | | | | | | | | | | Summary: As previously written, only functions could be convergent. But calls need to have a notion of convergence as well. To see why this is important, consider an indirect call. We may or may not want to disable optimizations around it and behave as though we're calling a convergent function -- it depends on the semantics of the language we're compiling. Thus the need for this attr on the call. Reviewers: jingyue, joker.eph Subscribers: llvm-commits, tra, jhen, arsenm, chandlerc, hfinkel, resistor Differential Revision: http://reviews.llvm.org/D17314 llvm-svn: 261111
* Deprecate LLVMGetDataLayout and replace it by LLVMGetDataLayoutStrAmaury Sechet2016-02-161-0/+3
| | | | | | | | | | | | Summary: The name is confusing as it matche another method on the module. Reviewers: joker.eph, Wallbraker, echristo Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D17283 llvm-svn: 260920
* Kill LLVMAddTargetDataAmaury Sechet2016-02-161-0/+2
| | | | | | | | | | | | Summary: It's red, it's dead. Reviewers: joker.eph, Wallbraker, echristo Subscribers: llvm-commits, axw Differential Revision: http://reviews.llvm.org/D17282 llvm-svn: 260919
* Fix some typos in the llvm docSylvestre Ledru2016-02-148-11/+11
| | | | llvm-svn: 260855
* Delete the deprecated LLVMLinkModules.Rafael Espindola2016-02-121-1/+3
| | | | llvm-svn: 260683
* C API: Remove LLVMGetDataLayout that was deprecated in 3.7Mehdi Amini2016-02-121-1/+2
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 260657
* Fix minor error with debug info doc.Mark Lacey2016-02-121-1/+1
| | | | | | Replace 'third' with 'fourth' in the description of the fourth argument. llvm-svn: 260656
* Add -match-full-lines argument to FileCheck.James Y Knight2016-02-111-0/+12
| | | | | | | This is useful for some tests where more-exact matching is useful, such as clang's Preprocessor tests. llvm-svn: 260540
* [llvm-nm] Add -radix optionHemant Kulkarni2016-02-101-0/+5
| | | | | | Differential Revision: http://reviews.llvm.org/D16822 llvm-svn: 260392
* ARM: improve documentation slightly.Tim Northover2016-02-091-13/+6
| | | | | | | | It seems the ARMv8 instruction set overview is no longer provided by ARM, so I've removed it. Since most of the other documents were the same I unified the two sections. llvm-svn: 260329
* Update documentation about convergent attribute.Justin Lebar2016-02-091-4/+11
| | | | | | | | | | | | | | | Summary: Be more explicit about what 'convergent' means, and indicate that the compiler may remove the attribute from a function if it can prove that the function doesn't in fact execute any convergent ops. Reviewers: resistor, jingyue, joker.eph Subscribers: hfinkel, chandlerc, arsenm, jhen, tra, llvm-commits Differential Revision: http://reviews.llvm.org/D17012 llvm-svn: 260318
* cmake: Accept "thin" or "full" as arguments to -DLLVM_ENABLE_LTOJustin Bogner2016-02-081-3/+4
| | | | | | | Mehdi suggested in a review of r259766 that it's also useful to easily set the type of LTO. Augment the cmake variable to support that. llvm-svn: 260143
* [X86] Don't zero/sign-extend i1, i8, or i16 return values to 32 bits (PR22532)Hans Wennborg2016-02-081-2/+1
| | | | | | | | | | | | | | | | | | | | This matches GCC and MSVC's behaviour, and saves on code size. We were already not extending i1 return values on x86_64 after r127766. This takes that patch further by applying it to x86 target as well, and also for i8 and i16. The ABI docs have been unclear about the required behaviour here. The new i386 psABI [1] clearly states (Table 2.4, page 14) that i1, i8, and i16 return vales do not need to be extended beyond 8 bits. The x86_64 ABI doc is being updated to say the same [2]. Differential Revision: http://reviews.llvm.org/D16907 [1]. https://01.org/sites/default/files/file_attach/intel386-psabi-1.0.pdf [2]. https://groups.google.com/d/msg/x86-64-abi/E8O33onbnGQ/_RFWw_ixDQAJ llvm-svn: 260133
* [PGO] Enable compression in pgo instrumentationXinliang David Li2016-02-081-9/+19
| | | | | | | | | | | | This reduces sizes of instrumented object files, final binaries, process images, and raw profile data. The format of the indexed profile data remain the same. Differential Revision: http://reviews.llvm.org/D16388 llvm-svn: 260117
* [docs] Add a note that the Visual Studio C++ tools are requiredKeno Fischer2016-02-071-0/+4
| | | | | | | | | | Watching new contributors trying to build LLVM on Windows, one of the very common failure modes was getting a version of Visual Studio that did not have a C++ compiler for CMake to put up. Trying to create a C++ project in Visual Studio will cause Visual Studio to go and download the C++ tools. llvm-svn: 260049
* [docs] Remove now confusing references to cofigure/autoconfPhilip Reames2016-02-071-10/+1
| | | | llvm-svn: 260042
* [docs] Wordsmithing to program layout descriptio in GettingStartedPhilip Reames2016-02-071-97/+63
| | | | | | | | This just incrementally improves what was already there; it's questionable whether this content belongs in the getting started guide at all. Patch by Ben Nathanson w/permission w/minor edtis by me. llvm-svn: 260040
* [docs] Clarify disk space usage of debug buildsPhilip Reames2016-02-071-8/+9
| | | | llvm-svn: 260039
* [docs] Remove a stale and confusing section from GettingStartedPhilip Reames2016-02-071-19/+2
| | | | | | | | The mentioned environment variable doesn't appear to have any use in the LLVM repository. If it is still relevant for clang, we can consider adding it to the clang getting started page. Patch inspired by documentation work by Ben Nathanson at the LLVM Bloomberg sprint. llvm-svn: 260037
* [docs] Update the docs to describe how to build the docs with cmakePhilip Reames2016-02-072-14/+18
| | | | llvm-svn: 260035
* LangRef: Fix example code for cmpxchgDuncan P. N. Exon Smith2016-02-071-2/+2
| | | | | | Patch by Daniel Robertson! llvm-svn: 260018
* [docs] Warn against slow serial buildsPhilip Reames2016-02-061-0/+3
| | | | llvm-svn: 260006
* [docs] Redirect new contributors to the right starting pointPhilip Reames2016-02-061-0/+4
| | | | llvm-svn: 260004
* [docs] Clarify a couple of getting started issues identified during SprintPhilip Reames2016-02-061-2/+9
| | | | llvm-svn: 260003
* Fixed short underline error in LangRef.rst for recently addedAshutosh Nema2016-02-061-1/+1
| | | | | | metadata 'llvm.loop.licm_versioning.disable' description. llvm-svn: 259988
* New Loop Versioning LICM PassAshutosh Nema2016-02-061-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: When alias analysis is uncertain about the aliasing between any two accesses, it will return MayAlias. This uncertainty from alias analysis restricts LICM from proceeding further. In cases where alias analysis is uncertain we might use loop versioning as an alternative. Loop Versioning will create a version of the loop with aggressive aliasing assumptions in addition to the original with conservative (default) aliasing assumptions. The version of the loop making aggressive aliasing assumptions will have all the memory accesses marked as no-alias. These two versions of loop will be preceded by a memory runtime check. This runtime check consists of bound checks for all unique memory accessed in loop, and it ensures the lack of memory aliasing. The result of the runtime check determines which of the loop versions is executed: If the runtime check detects any memory aliasing, then the original loop is executed. Otherwise, the version with aggressive aliasing assumptions is used. The pass is off by default and can be enabled with command line option -enable-loop-versioning-licm. Reviewers: hfinkel, anemet, chatur01, reames Subscribers: MatzeB, grosser, joker.eph, sanjoy, javed.absar, sbaranga, llvm-commits Differential Revision: http://reviews.llvm.org/D9151 llvm-svn: 259986
* [docs] Fix typo in YamlIO.rstVedant Kumar2016-02-041-2/+3
| | | | | | Patch by Mario Lang! llvm-svn: 259825
* Install cmake files to lib/cmake/llvmNiels Ole Salscheider2016-02-041-4/+4
| | | | | | | | | | | This is the right location for platform-specific files. On some distributions (e. g. Exherbo), a package can be installed for several architectures in parallel, but the architecture-independent files are shared. Therefore, we must not install architecture-dependent files (like the CMake config and export files) to share/. llvm-svn: 259821
OpenPOWER on IntegriCloud