| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[AMDGPU][GFX10][DOC][NFC] Update assembler syntax description Summary of changes: - Update FLAT LDS syntax (see https://reviews.llvm.org/D125126) | 3 年前 | |
[AMDGPU][NFC] Update DWARF extension allowing locations on stack Add changes to the DWARF Version 5 standard to the DWARF extension to allow locations on the evaluation stack documentation. Reviewed By: kzhuravl Differential Revision: https://reviews.llvm.org/D116265 | 4 年前 | |
[Symbolizer] Handle {{{bt}}} symbolizer markup element. This adds support for backtrace generation to the llvm-symbolizer markup filter, which is likely the largest use case. Reviewed By: peter.smith Differential Revision: https://reviews.llvm.org/D132706 (cherry picked from commit ea99225521cba6dec1ad4ca70a8665829e772fa9) | 3 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[docs] fix typo | 4 年前 | |
GlobalISel: Allow forming atomic/volatile G_ZEXTLOAD SelectionDAG has a target hook, getExtendForAtomicOps, which it uses in the computeKnownBits implementation for ATOMIC_LOAD. This is pretty ugly (as is having a separate load opcode for atomics), so instead allow making use of atomic zextload. Enable this for AArch64 since the DAG path defaults in to the zext behavior. The tablegen changes are pretty ugly, but partially helps migrate SelectionDAG from using ISD::ATOMIC_LOAD to regular ISD::LOAD with atomic memory operands. For now the DAG emitter will emit matchers for patterns which the DAG will not produce. I'm still a bit confused by the intent of the isLoad/isStore/isAtomic bits. The DAG implementation rejects trying to use any of these in combination. For now I've opted to make the isLoad checks also check isAtomic, although I think having isLoad and isAtomic set on these makes most sense. | 3 年前 | |
Doc: Links should use https | 6 年前 | |
[PDB] Add char8_t type Differential Revision: https://reviews.llvm.org/D120690 | 4 年前 | |
Move LLVM Proposal to doc directory, create index The LLVM Libc project is no longer just a proposal and should have a webpage tracking the status of the project. This changes puts the pieces into the right place so that the webpage can be created. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D117436 | 4 年前 | |
[TableGen] Add new operator !exists We can cast a string to a record via !cast, but we have no mechanism to check if it is valid and TableGen will raise an error if failed to cast. Besides, we have no semantic null in TableGen (we have ? but different backends handle uninitialized value differently), so operator like dyn_cast<> is hard to implement. In this patch, we add a new operator !exists<T>(s) to check whether a record with type T and name s exists. Self-references are allowed just like !cast. By doing these, we can write code like: class dyn_cast_to_record<string name> { R value = !if(!exists<R>(name), !cast<R>(name), default_value); } defvar v = dyn_cast_to_record<"R0">.value; // R0 or default_value. Reviewed By: tra, nhaehnle Differential Revision: https://reviews.llvm.org/D127948 | 4 年前 | |
[OCaml] Use a nicer style for documentation than OCaml default. 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 | 10 年前 | |
[docs] Add Loop Opt WG meeting ics. Add ics file for biweekly loop optimization meeting. Reviewed By: #loopoptwg, bmahjour Differential Revision: https://reviews.llvm.org/D120343 | 4 年前 | |
[www] More HTTPS and outdated link fixes. Resolves D69981. | 6 年前 | |
[Docs] Updates sidebar links and sets max-width property for div.body Updates the sidebar links for Getting Started. Also sets max-width on div.body to 1000px. llvm-svn: 374949 | 6 年前 | |
[Kaleidoscope] Fix DWARF function creation example The full code listing was fixed in fdaeb0c647eb66763721a7fe74e0a36b007dcd75 Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D130217 | 3 年前 | |
[AMDGPU][NFC] Correct typo in DWARF Extensions For Heterogeneous Debugging The DW_AT_LLVM_address_space attribute is mentioned as DW_AT_address_space in one of the notes. Reviewed By: scott.linder Differential Revision: https://reviews.llvm.org/D128210 | 4 年前 | |
[AMDGPU][MC][NFC][DOC] Updated AMD GPU assembler syntax description. Summary of changes: - Added f16 omod modifier (bug 51386). - Corrected names of data types (bug 48638). - Enabled a16 with most GFX10 MIMG opcodes (see https://reviews.llvm.org/D102231). - Corrected description of integer operands (bug 51130). - Corrected description of 8-bit DS offsets (bug 51536). - Improved PERMLANE op_sel description. - Corrected *SAD* opcode types. | 4 年前 | |
[AMDGPU][DOC][NFC] Added GFX1030 assembler syntax description | 4 年前 | |
[AMDGPU][GFX9][DOC][NFC] Update assembler syntax description Summary of changes: - Updated MUBUF lds syntax (see https://reviews.llvm.org/D124485). - Updated SMEM syntax (see https://reviews.llvm.org/D127314). - Enabled src0=literal for v_madak*, v_madmk* (see https://reviews.llvm.org/D111067). - Removed SYSMSG_OP_HOST_TRAP_ACK message. - Minor bug fixing and improvements. | 4 年前 | |
[AMDGPU][MC][NFC][DOC] Updated description of registers Corrected list of available register tuples to reflect changes introduced by commits https://reviews.llvm.org/D103672 and https://reviews.llvm.org/D103800 See bug https://bugs.llvm.org/show_bug.cgi?id=51388 | 4 年前 | |
[AMDGPU] Add the uses_dynamic_stack field to the kernel descriptor and the kernel metadata map This change introduces the dynamic stack boolean field to code-object-v3 and above under the code properties of the kernel descriptor and under the kernel metadata map of NT_AMDGPU_METADATA. This field corresponds to the is_dynamic_callstack field of amd_kernel_code_t. Differential Revision: https://reviews.llvm.org/D128344 | 3 年前 | |
[ARM64-BE] Add sphinx documentation for the ARM64 NEON implementation. There are some interesting decisions based on non-obvious rationale in the ARM64-BE NEON implementation - decent documentation is definitely required. llvm-svn: 208577 | 11 年前 | |
[ARM64-BE] Add sphinx documentation for the ARM64 NEON implementation. There are some interesting decisions based on non-obvious rationale in the ARM64-BE NEON implementation - decent documentation is definitely required. llvm-svn: 208577 | 11 年前 | |
[ARM64-BE] Add sphinx documentation for the ARM64 NEON implementation. There are some interesting decisions based on non-obvious rationale in the ARM64-BE NEON implementation - decent documentation is definitely required. llvm-svn: 208577 | 11 年前 | |
[ARM64-BE] Add sphinx documentation for the ARM64 NEON implementation. There are some interesting decisions based on non-obvious rationale in the ARM64-BE NEON implementation - decent documentation is definitely required. llvm-svn: 208577 | 11 年前 | |
[FEnv] Fix AddingConstrainedIntrinsics.rst after llvmorg-10-init-10282-g0c50c0b0552 | 6 年前 | |
[CMake] Make omitting CMAKE_BUILD_TYPE an error After a lot of discussion in this diff the consensus was that it is really hard to guess the users intention with their LLVM build. Instead of trying to guess if Debug or Release is the correct default option we opted for just not specifying CMAKE_BUILD_TYPE a error. Discussion on discourse here: https://discourse.llvm.org/t/rfc-select-a-better-linker-by-default-or-warn-about-using-bfd Reviewed By: hans, mehdi_amini, aaron.ballman, jhenderson, MaskRay, awarzynski Differential Revision: https://reviews.llvm.org/D124153 | 4 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[AArch64] Out-of-line atomics (-moutline-atomics) implementation. This patch implements out of line atomics for LSE deployment mechanism. Details how it works can be found in llvm/docs/Atomics.rst Options -moutline-atomics and -mno-outline-atomics to enable and disable it were added to clang driver. This is clang and llvm part of out-of-line atomics interface, library part is already supported by libgcc. Compiler-rt support is provided in separate patch. Differential Revision: https://reviews.llvm.org/D91157 | 5 年前 | |
Add some tips on benchmarking. llvm-svn: 303769 | 9 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[gold] Ignore bitcode from sections inside object files -fembed-bitcode will put bitcode into special sections within object files, but this is not meant to be used by LTO, so the gold plugin should ignore it. https://github.com/llvm/llvm-project/issues/47216 Reviewed By: tejohnson, MaskRay Differential Revision: https://reviews.llvm.org/D116995 | 3 年前 | |
[llvm] NFC: fix trivial typos in documents Reviewers: hans, Jim Reviewed By: Jim Subscribers: jvesely, nhaehnle, mgorny, arphaman, bmahjour, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73017 | 6 年前 | |
Add support of __builtin_expect_with_probability Add a new builtin-function __builtin_expect_with_probability and intrinsic llvm.expect.with.probability. The interface is __builtin_expect_with_probability(long expr, long expected, double probability). It is mainly the same as __builtin_expect besides one more argument indicating the probability of expression equal to expected value. The probability should be a constant floating-point expression and be in range [0.0, 1.0] inclusive. It is similar to builtin-expect-with-probability function in GCC built-in functions. Differential Revision: https://reviews.llvm.org/D79830 | 5 年前 | |
Fix "the the" typo in documentation and user facing strings There are many more instances of this pattern, but I chose to limit this change to .rst files (docs), anything in libcxx/include, and string literals. These have the highest chance of being seen by end users. Reviewed By: #libc, Mordante, martong, ldionne Differential Revision: https://reviews.llvm.org/D124708 | 4 年前 | |
[llvm] NFC: fix trivial typos in documents Reviewers: hans, Jim Reviewed By: Jim Subscribers: jvesely, nhaehnle, mgorny, arphaman, bmahjour, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73017 | 6 年前 | |
[Bugpoint redesign] Fix nonlocal URI link in doc Summary: Fixes documentation bot build http://lab.llvm.org:8011/builders/llvm-sphinx-docs Reviewers: JDevlieghere Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D66022 llvm-svn: 368493 | 6 年前 | |
[cmake] Loosen multi-distribution restrictions We've found that there are cases where it's useful to be able to include the same target in multiple distributions (e.g. if you want a distribution that's a superset of another distribution, for convenience purposes), and that there are cases where the distribution of a target and its umbrella can legitimately differ (e.g. the LTO library would commonly be distributed alongside your tools, but it also falls under the llvm-libraries umbrella, which would commonly be distributed separately). Relax the restrictions while providing an option to restore them (which is mostly useful to ensure you aren't accidentally placing targets in the wrong distributions). There could be further refinements here (e.g. excluding a target from an umbrella if it's explicitly included in some other distribution, or having variables to control which targets are allowed to be duplicated or placed in a separate distribution than their umbrellas), but we can punt on those until there's an actual need. | 4 年前 | |
[cfi-verify] Abort on unsupported targets As suggested in the review for r337007, this makes cfi-verify abort on unsupported targets instead of producing incorrect results. It also updates the design document to reflect this. Differential Revision: https://reviews.llvm.org/D49304 llvm-svn: 337181 | 7 年前 | |
[llvm][cmake] Follow up to D117973 1. Slightly document the "mark advanced" variable used to control the installed CMake package dir. I would document it more, but I am considering in the future adding pkg-config support in this manner, after which _PACKGE_DIR is probably better called _CMAKE_PACKGE_DIR or similar. 2. Convey the custom path to the legacy llvm-config binary. Reviewed By: sebastian-ne Differential Revision: https://reviews.llvm.org/D130539 | 3 年前 | |
[dsymutil][doc] Improve wording in manpage and rename file. - Improve wording - Rename llvm-dsymutil to dsymutil - Name -arch=<arch> argument Differential revision: https://reviews.llvm.org/D39561 llvm-svn: 317226 | 8 年前 | |
[CMake] Bump CMake minimum version to 3.13.4 This upgrade should be friction-less because we've already been ensuring that CMake >= 3.13.4 is used. This is part of the effort discussed on llvm-dev here: http://lists.llvm.org/pipermail/llvm-dev/2020-April/140578.html Differential Revision: https://reviews.llvm.org/D78648 | 5 年前 | |
[docs] Remove unmaintained target feature matrix Back in 2017, a table was added to the codegen documentation listing which features various backends support. It received a few updates since then, but not since the end of 2019. Having such a table is a nice idea, but it hasn't been kept up to date, it isn't easy to ensure that it is up to date, and the table probably isn't very discoverable for most users who would be interested in this information anyway (it would be better suited to some kind of "what can LLVM do for me?" page). For all of the above reasons, I believe it makes sense to remove it. Differential Revision: https://reviews.llvm.org/D129996 | 3 年前 | |
Add transparency report. | 4 年前 | |
[docs] Set Phabricator as the tool for pre-commit reviews Differential Revision: https://reviews.llvm.org/D103811 | 5 年前 | |
[Docs] Clarify the guideline on omitting braces While working on a clang-format option RemoveBracesLLVM that removes braces following the guideline, we were unsure about what to do with the braces of do-while loops. The ratio of using to omitting the braces is about 4:1 in the llvm-project source, so it will help to add an example to the guideline. Also cleans up the original examples including making the nested if example more targeted on avoiding potential dangling else situations. Differential Revision: https://reviews.llvm.org/D126512 | 4 年前 | |
Remove unneeded cl::ZeroOrMore for cl::list options | 4 年前 | |
[CUDA] Bump supported CUDA version to 11.5 Differential Revision: https://reviews.llvm.org/D113249 | 4 年前 | |
[SPIR-V](1/6) Add stub for SPIRV backend This patch contains enough for lib/Target/SPIRV to compile: a basic SPIRVTargetMachine and SPIRVTargetInfo. Differential Revision: https://reviews.llvm.org/D115009 Authors: Aleksandr Bezzubikov, Lewis Crawford, Ilia Diachkov, Michal Paszkowski, Andrey Tretyakov, Konrad Trifunovic Co-authored-by: Aleksandr Bezzubikov <zuban32s@gmail.com> Co-authored-by: Ilia Diachkov <iliya.diyachkov@intel.com> Co-authored-by: Michal Paszkowski <michal.paszkowski@outlook.com> Co-authored-by: Andrey Tretyakov <andrey1.tretyakov@intel.com> Co-authored-by: Konrad Trifunovic <konrad.trifunovic@intel.com> | 4 年前 | |
[docs] Move code contribution from GettingStarted.rst to Contributing.rst For code contribution, GettingStarted.rst duplicates information in Contributing.rst. The dedicated Contributing.rst is a better place for code contribution, so move the content there. Notes: * D41665 added Contributing.rst * D110976 mentioned git cherry-pick e3659d43d8911e91739f3b0c5935598bceb859aa workaround Reviewed By: cjdb, fhahn, nickdesaulniers Differential Revision: https://reviews.llvm.org/D129255 | 3 年前 | |
Revert "Don't treat readnone call in presplit coroutine as not access memory" This reverts commit 57224ff4a6833dca1f17568cc9cf77f9579030ae. This commit may trigger crashes on some workloads. Revert it for clearness. | 3 年前 | |
[Coverage] Store compilation dir separately in coverage mapping We currently always store absolute filenames in coverage mapping. This is problematic for several reasons. It poses a problem for distributed compilation as source location might vary across machines. We are also duplicating the path prefix potentially wasting space. This change modifies how we store filenames in coverage mapping. Rather than absolute paths, it stores the compilation directory and file paths as given to the compiler, either relative or absolute. Later when reading the coverage mapping information, we recombine relative paths with the working directory. This approach is similar to handling ofDW_AT_comp_dir in DWARF. Finally, we also provide a new option, -fprofile-compilation-dir akin to -fdebug-compilation-dir which can be used to manually override the compilation directory which is useful in distributed compilation cases. Differential Revision: https://reviews.llvm.org/D95753 | 5 年前 | |
Reapply CycleInfo: Introduce cycles as a generalization of loops Reverts 02940d6d2202. Fixes breakage in the modules build. LLVM loops cannot represent irreducible structures in the CFG. This change introduce the concept of cycles as a generalization of loops, along with a CycleInfo analysis that discovers a nested hierarchy of such cycles. This is based on Havlak (1997), Nesting of Reducible and Irreducible Loops. The cycle analysis is implemented as a generic template and then instatiated for LLVM IR and Machine IR. The template relies on a new GenericSSAContext template which must be specialized when used for each IR. This review is a restart of an older review request: https://reviews.llvm.org/D83094 Original implementation by Nicolai Hähnle <nicolai.haehnle@amd.com>, with recent refactoring by Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> Differential Revision: https://reviews.llvm.org/D112696 | 4 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
Revise outdated parts of the developer policy. Specifically: - Diffs are not passed around on mailing lists any more. - Diffs should be -U999999. - Clarify part about automated emails. Differential review: https://reviews.llvm.org/D128645 | 4 年前 | |
[docs] Adding DirectX target usage doc This document is a work in progress to begin fleshing out documentation for the DirectX backend and related changes in the LLVM project. This is not intended to be exhaustive or complete, it is intended as a starting point so taht future changes have a place for documentation to land. Differential Revision: https://reviews.llvm.org/D127640 | 4 年前 | |
Update status on migration again. Add note about issues with reply by email from emails pre-migration. | 4 年前 | |
[Dockerfile] Upgrade debian base image to version 10 Debian8 is too old to build LLVM project, the version of GCC, CMake and python are lower than the requirements: https://llvm.org/docs/GettingStarted.html#software Debian10 is the earliest release that has software packages that meet the above requirements. Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D120826 | 4 年前 | |
[docs] Fix typos | 5 年前 | |
Revert r103213. It broke several sections of live website. llvm-svn: 103219 | 15 年前 | |
Replace links to archived mailing lists by links to Discourse forums | 4 年前 | |
[Object] Add ELF section type for offloading objects Currently we use the .llvm.offloading section to store device-side objects inside the host, creating a fat binary. The contents of these sections is currently determined by the name of the section while it should ideally be determined by its type. This patch adds the new SHT_LLVM_OFFLOADING section type to the ELF section types. Which should make it easier to identify this specific data format. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D129052 | 3 年前 | |
Update references to 'master' branch. This commit replace 'master' with 'main' in llvm/docs. Reviewed By: sammccall, kristof.beyls Differential Revision: https://reviews.llvm.org/D92831 | 5 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[lldb] Add a fuzzer for target creation This patch adds a generic fuzzer that interprets inputs as object files and uses them to create a target in lldb. It is very similar to the llvm-dwarfdump fuzzer which found a bunch of issues in libObject. Differential revision: https://reviews.llvm.org/D122461 | 4 年前 | |
[MC] De-capitalize SwitchSection. NFC Add SwitchSection to return switchSection. The API will be removed soon. | 4 年前 | |
[Docs] Update GEP docs for opaque pointers Update the GEP FAQ to use opaque pointers. This requires more than a syntactic change in some place, because some of the concerns just don't make sense anymore (trying to index past a ptr member in a struct for example). This also fixes uses of incorrect syntax to declare or reference globals. Differential Revision: https://reviews.llvm.org/D130353 | 3 年前 | |
[docs] Add BOLT Office Hours Reviewed By: rafauler Differential Revision: https://reviews.llvm.org/D129408 | 3 年前 | |
[docs] Move code contribution from GettingStarted.rst to Contributing.rst For code contribution, GettingStarted.rst duplicates information in Contributing.rst. The dedicated Contributing.rst is a better place for code contribution, so move the content there. Notes: * D41665 added Contributing.rst * D110976 mentioned git cherry-pick e3659d43d8911e91739f3b0c5935598bceb859aa workaround Reviewed By: cjdb, fhahn, nickdesaulniers Differential Revision: https://reviews.llvm.org/D129255 | 3 年前 | |
[docs] Add a new tutorial that talk about how to make a change to llvm This tutorial will guide you through the process of making a change to LLVM, and contributing it back to the LLVM project. We'll be making a change to Clang, but the steps for other parts of LLVM are the same. Even though the change we'll be making is simple, we're going to cover steps like building LLVM, running the tests, and code review. This is good practice, and you'll be prepared for making larger changes. Authors: @meikeb , @gribozavr Commit: Zhiqian Xia PS - This is a duplicate revision of https://reviews.llvm.org/D100714 which was actually used for patch review. Reviewed By: kuhnel Differential Revision: https://reviews.llvm.org/D108267 | 4 年前 | |
Raise the minimum Visual Studio version to VS2019 As raised here: https://lists.llvm.org/pipermail/llvm-dev/2021-November/153881.html Now that VS2022 is on general release, LLVM is expected to build on VS2017, VS2019 and VS2022, which is proving hazardous to maintain due to changes in behaviour including preprocessor and constexpr changes. Plus of the few developers that work with VS, many have already moved to VS2019/22. This patch proposes to raise the minimum supported version to VS2019 (16.x) - I've made the hard limit 16.0 or later, with the soft limit VS2019 16.7 - older versions of VS2019 are "allowed" (at your own risk) via the LLVM_FORCE_USE_OLD_TOOLCHAIN cmake flag. Differential Revision: https://reviews.llvm.org/D114639 | 4 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
docs: Update instructions for requesting backports to the release branches Reviewed By: lattner Differential Revision: https://reviews.llvm.org/D120974 | 4 年前 | |
first draft of a written policy around git repos This is a frist draft of a set of policies around new git repos and how we grant write access to our GitHub organisation. This proposal is based on the discussions in: https://github.com/llvm/llvm-iwg/issues/40 https://github.com/llvm/llvm-iwg/issues/51 Differential Revision: https://reviews.llvm.org/D111723 | 4 年前 | |
[gold] Ignore bitcode from sections inside object files -fembed-bitcode will put bitcode into special sections within object files, but this is not meant to be used by LTO, so the gold plugin should ignore it. https://github.com/llvm/llvm-project/issues/47216 Reviewed By: tejohnson, MaskRay Differential Revision: https://reviews.llvm.org/D116995 | 3 年前 | |
[llvm] NFC: fix trivial typos in documents Reviewers: hans, Jim Reviewed By: Jim Subscribers: jvesely, nhaehnle, mgorny, arphaman, bmahjour, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73017 | 6 年前 | |
[docs] Update new builder instructions to starting on the staging buildmaster This adds a step in the instructions to switch to the production buildmaster at the very end (after explicit approval), and updates the early instruction to start with the builder pointed at the staging buildmaster. Differential Revision: https://reviews.llvm.org/D116129 | 4 年前 | |
Remove Python2 fallback and only advertise Python3 in the doc Differential Revision: https://www.youtube.com/watch?v=RsL0cipURA0 | 5 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
docs: Add pointer to cmake caches for PGO Also add a link to end-user PGO documentation. Differential Revision: https://reviews.llvm.org/D92768 | 5 年前 | |
[test] Migrate -gcc-toolchain with space separator to --gcc-toolchain= Space separated driver options are uncommon but Clang traditionally did not do a good job. --gcc-toolchain= is the preferred form. | 4 年前 | |
[CMake] Make omitting CMAKE_BUILD_TYPE an error After a lot of discussion in this diff the consensus was that it is really hard to guess the users intention with their LLVM build. Instead of trying to guess if Debug or Release is the correct default option we opted for just not specifying CMAKE_BUILD_TYPE a error. Discussion on discourse here: https://discourse.llvm.org/t/rfc-select-a-better-linker-by-default-or-warn-about-using-bfd Reviewed By: hans, mehdi_amini, aaron.ballman, jhenderson, MaskRay, awarzynski Differential Revision: https://reviews.llvm.org/D124153 | 4 年前 | |
HowToReleaseLLVM: Add description of the bug triage process Reviewed By: andreil99 Differential Revision: https://reviews.llvm.org/D126985 | 4 年前 | |
[docs] Fix style and typo in HowToSetUpLLVMStyleRTTI.rst after D126943 | 4 年前 | |
docs: update some bug tracker references (NFC) Fixes https://github.com/llvm/llvm-project/issues/53091 Differential Revision: https://reviews.llvm.org/D116898 | 4 年前 | |
[Debugify] Limit number of processed functions for original mode Debugify in OriginalDebugInfo mode, does (DebugInfo) collect-before-pass & check-after-pass for each instruction, which is pretty expensive. When used to analyze DebugInfo losses in large projects (like LLVM), this raises the build time unacceptably. This patch introduces a limit for the number of processed functions per compile unit. By default, the limit is set to UINT_MAX (practically unlimited), and by using the introduced option -debugify-func-limit the limit could be set to any positive integer number. Differential revision: https://reviews.llvm.org/D115714 | 4 年前 | |
Remove references to the 4.0 release as a major breaking (NFC) This is cleaning up comments (mostly in the bitcode handling) about removing some backward compatibility aspect in the 4.0 release. Historically, "4.0" was used during the development of the 3.x versions as "this future major breaking change version". At the time the major number was used to indicate the compatibility. When we reached 3.9 we decided to change the numbering, instead of going to 3.10 we went to 4.0 but after changing the meaning of the major number to not mean anything anymore with respect to bitcode backward compatibility. The current policy (https://llvm.org/docs/DeveloperPolicy.html#ir-backwards-compatibility) indicates only now: The current LLVM version supports loading any bitcode since version 3.0. Differential Revision: https://reviews.llvm.org/D82514 | 5 年前 | |
[llvm] NFC: Fix trivial typo in rst and td files Differential Revision: https://reviews.llvm.org/D77469 | 6 年前 | |
[docs] Fixing Sphinx warnings to unclog the buildbot Lots of blocks had "llvm" or "nasm" syntax types but either weren't following the syntax, or the syntax has changed (and sphinx hasn't keep up) or the type doesn't even exist (nasm?). Other documents had :options: what were invalid. I only removed those that had warnings, and left the ones that didn't, in order to follow the principle of least surprise. This is like this for ages, but the buildbot is now failing on errors. It may take a while to upgrade the buildbot's sphinx, if that's even possible, but that shouldn't stop us from getting docs updates (which seem down for quite a while). Also, we're not losing any syntax highlight, since when it doesn't parse, it doesn't colour. Ie. those blocks are not being highlighted anyway. I'm trying to get all docs in one go, so that it's easy to revert later if we do fix, or at least easy to know what's to fix. llvm-svn: 276109 | 9 年前 | |
[DebugInfo][Docs] Improve code formatting in instruction referencing doc This adds code blocks and inline code formatting to improve the readability of the instruction referencing doc. Reviewed By: Orlando Differential Revision: https://reviews.llvm.org/D126767 | 4 年前 | |
Fix some typos in the llvm docs | 4 年前 | |
Init project. | 11 个月前 | |
[docs][Lexicon] Add new explanation for some shortcomings(WPD, CFI) for lexicon Add explanations for WPD(whole program devirtualization) and another meaning for CFI(control flow Integrity). Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D122473 | 4 年前 | |
[libFuzzer] Extend the fuzz target intarface to allow -1 return value. With this change, fuzz targets may choose to return -1 to indicate that the input should not be added to the corpus regardless of the coverage it generated. Reviewed By: morehouse Differential Revision: https://reviews.llvm.org/D128749 | 4 年前 | |
[LTO][Legacy] Add new API to query Mach-O CPU (sub)type Tools working with object files on Darwin (e.g. lipo) may need to know properties like the CPU type and subtype of a bitcode file. The logic of converting a triple to a Mach-O CPU_(SUB_)TYPE should be provided by LLVM instead of relying on tools to re-implement it. Differential Revision: https://reviews.llvm.org/D75067 | 6 年前 | |
[docs] Update LoopTerminology. Includes 2 corrections: * Update irreducible control flow and add references to CycleTerminology; Natural loop is not the only definition of something looping in LLVM anymore. * Mention mustprogress loop and function attributes to be used instead of the llvm.sideeffect intrinsic. | 4 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
Adding a document to describe the MCJIT execution engine implementation. llvm-svn: 188943 | 12 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[DebugInfo][NFC] Add instr-ref documentation, migration guide This used to be D102158, but all the code it describes got re-written, so I figured I'd take another shot at documenting the new instruction referencing variable locations, this time from a higher level. Happily there's no longer any need to describe LiveDebugValues in any detail seeing how it's all SSA-based now. Probably the most important part is the explanation of what targets need to do to support instruction referencing. The list is small, mostly because there's nothing especially complicated that targets need to do: just instrument their target-specific optimisations and implement the stack spill/restore recognition target hooks. This is a small amount of text (which is a virtue), I'm extremely happy to expand on anything. Differential Revision: https://reviews.llvm.org/D113586 Co-authored-by: Jeremy Morse <jeremy.morse@sony.com> | 4 年前 | |
[doc] added section on generating the html doc Added a new section on generating the html documentation from the rst/md sources to our documentation. Background: I wanted to check what my documenation changes would look like on the website and had a hard time finding how to do that. So I wanted to save other folks the effort. Differential Revision: https://reviews.llvm.org/D107460 | 4 年前 | |
[llvm] NFC: fix trivial typos in documents Reviewers: hans, Jim Reviewed By: Jim Subscribers: jvesely, nhaehnle, mgorny, arphaman, bmahjour, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73017 | 6 年前 | |
Add guidelines/recommendations for organizers of LLVM Socials Differential Revision: https://reviews.llvm.org/D61550 llvm-svn: 360651 | 7 年前 | |
Fix MemTagSanitizer docs to point at Armv8.5-A MTE The Memory Tagging Extension was introduced in Armv8.5-A. | 6 年前 | |
[Docs] Fix reference (NFC) | 4 年前 | |
[llvm] Fix typos in documentation (NFC) | 5 年前 | |
[misexpect] Re-implement MisExpect Diagnostics Reimplements MisExpect diagnostics from D66324 to reconstruct its original checking methodology only using MD_prof branch_weights metadata. New checks rely on 2 invariants: 1) For frontend instrumentation, MD_prof branch_weights will always be populated before llvm.expect intrinsics are lowered. 2) for IR and sample profiling, llvm.expect intrinsics will always be lowered before branch_weights are populated from the IR profiles. These invariants allow the checking to assume how the existing branch weights are populated depending on the profiling method used, and emit the correct diagnostics. If these invariants are ever invalidated, the MisExpect related checks would need to be updated, potentially by re-introducing MD_misexpect metadata, and ensuring it always will be transformed the same way as branch_weights in other optimization passes. Frontend based profiling is now enabled without using LLVM Args, by introducing a new CodeGen option, and checking if the -Wmisexpect flag has been passed on the command line. Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D115907 | 4 年前 | |
[docs] Update outdated mentions of lab.llvm.org:8011. Some places were still referring to the outdated buildbot URL http://lab.llvm.org:8011. Update those to use the new URL http://lab.llvm.org/buildbot/#. | 4 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[docs][NewPM] Add more info on why accessing mutable outer analyses is disallowed Reviewed By: asbirlea, rnk Differential Revision: https://reviews.llvm.org/D128374 | 4 年前 | |
[docs][ORC] Fix RST error in dfffb7df24e. | 4 年前 | |
[docs] Fix typo | 4 年前 | |
[LegacyPassManager] Delete BasicBlockPass/Manager. Summary: Delete the BasicBlockPass and BasicBlockManager, all its dependencies and update documentation. The BasicBlockManager was improperly tested and found to be potentially broken, and was deprecated as of rL373254. In light of the switch to the new pass manager coming before the next release, this patch is a first cleanup of the LegacyPassManager. Reviewers: chandlerc, echristo Subscribers: mehdi_amini, sanjoy.google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D69121 | 6 年前 | |
update of the llvm doc: we moved to git | 6 年前 | |
Reland "Lower @llvm.global_dtors using __cxa_atexit on MachO" For MachO, lower @llvm.global_dtors into @llvm_global_ctors with __cxa_atexit calls to avoid emitting the deprecated __mod_term_func. Reuse the existing WebAssemblyLowerGlobalDtors.cpp to accomplish this. Enable fallback to the old behavior via Clang driver flag (-fregister-global-dtors-with-atexit) or llc / code generation flag (-lower-global-dtors-via-cxa-atexit). This escape hatch will be removed in the future. Differential Revision: https://reviews.llvm.org/D121736 | 4 年前 | |
[llvm][docs] commit phabricator patch Users upgrading to PHP 8.1 might start observing failures with arc. Commit @ychen's suggestions as a patch in tree that can be applied since arcanist is no longer accepting patches. Also, remove the suggestion to apply an external patch updating CA certs. It seems that this was fixed in upstream arcanist before they stopped accepting patches. Compare https://github.com/rashkov/arcanist/commit/e3659d43d8911e91739f3b0c5935598bceb859aa vs https://github.com/rashkov/arcanist/commit/13d3a3c3b100979c34dda261fe21253e3571bc46 Link: https://secure.phabricator.com/book/phabcontrib/article/contributing_code/ Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D129232 | 3 年前 | |
[doc] added documentation for pre-merge testing fixes https://github.com/google/llvm-premerge-checks/issues/275 Differential Revision: https://reviews.llvm.org/D100936 | 5 年前 | |
[doc] added documentation for pre-merge testing fixes https://github.com/google/llvm-premerge-checks/issues/275 Differential Revision: https://reviews.llvm.org/D100936 | 5 年前 | |
[IR] Define "ptrauth" operand bundle. This introduces a new "ptrauth" operand bundle to be used in call/invoke. At the IR level, it's semantically equivalent to an @llvm.ptrauth.auth followed by an indirect call, but it additionally provides additional hardening, by preventing the intermediate raw pointer from being exposed. This mostly adds the IR definition, verifier checks, and support in a couple of general helper functions. Clang IRGen and backend support will come separately. Note that we'll eventually want to support this bundle in indirectbr as well, for similar reasons. indirectbr currently doesn't support bundles at all, and the IR data structures need to be updated to allow that. Differential Revision: https://reviews.llvm.org/D113685 | 4 年前 | |
Update the ProgrammersManual explanation for ilist and iplist They are now using aliases and thus the comments about iplist are now incorrect. Remove them here. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D95210 | 4 年前 | |
[NFC][llvm] Inclusive language: replace master in llvm docs [NFC] As part of using inclusive language within the llvm project, this patch removes instances of master in these files. Reviewed By: ZarkoCA Differential Revision: https://reviews.llvm.org/D114187 | 4 年前 | |
Replace references to Makefile.sphinx and fix some typos Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D112299 | 4 年前 | |
[Symbolize] Add log markup --filter to llvm-symbolizer. This adds a --filter option to llvm-symbolizer. This takes log-bearing symbolizer markup from stdin and writes a human-readable version to stdout. For now, this only implements the "symbol" markup tag; all others are passed through unaltered. This is a proof-of-concept bit of functionalty; implement the various tags is more-or-less just a matter of hooking up various parts of the Symbolize library to the architecture established here. Reviewed By: peter.smith Differential Revision: https://reviews.llvm.org/D126980 | 4 年前 | |
[SystemZ] Relase notes for LLVM 15 Unfortunately these notes were compiled until now, but these are the release notes for SystemZ. (Did not find anything under clang) @tstellar Should I push this patch onto release/15.x once approved, or will you apply it? Differential Revision: https://reviews.llvm.org/D134430 | 3 年前 | |
Doc: Links should use https | 6 年前 | |
[Remarks] Extend the RemarkStreamer to support other emitters This extends the RemarkStreamer to allow for other emitters (e.g. frontends, SIL, etc.) to emit remarks through a common interface. See changes in llvm/docs/Remarks.rst for motivation and design choices. Differential Revision: https://reviews.llvm.org/D73676 | 6 年前 | |
Consistently use the same apostrophe in these docs. | 4 年前 | |
Consistently use the same apostrophe in these docs. | 4 年前 | |
[Doc][OpenCL] Misc wording improvements for SPIR-V | 4 年前 | |
[llvm] Fix typos in documentation (NFC) | 4 年前 | |
[Security Group] Update representative for Rust. Steve Klabnik recently left the Rust project. Josh Stone (the other member of the Rust Security Response WG) replaces him as one of the vendor contacts for Rust. Differential Revision: https://reviews.llvm.org/D119137 | 4 年前 | |
Add security group 2021 transparency report. Differential Revision: https://reviews.llvm.org/D117872 | 4 年前 | |
[docs] Fixing Sphinx warnings to unclog the buildbot Lots of blocks had "llvm" or "nasm" syntax types but either weren't following the syntax, or the syntax has changed (and sphinx hasn't keep up) or the type doesn't even exist (nasm?). Other documents had :options: what were invalid. I only removed those that had warnings, and left the ones that didn't, in order to follow the principle of least surprise. This is like this for ages, but the buildbot is now failing on errors. It may take a while to upgrade the buildbot's sphinx, if that's even possible, but that shouldn't stop us from getting docs updates (which seem down for quite a while). Also, we're not losing any syntax highlight, since when it doesn't parse, it doesn't colour. Ie. those blocks are not being highlighted anyway. I'm trying to get all docs in one go, so that it's easy to revert later if we do fix, or at least easy to know what's to fix. llvm-svn: 276109 | 9 年前 | |
[DebugInfo] Add a TargetFuncName field in DISubprogram for specifying DW_AT_trampoline as a string. Also update the signature of DIBuilder::createFunction to reflect this addition. Differential Revision: https://reviews.llvm.org/D123697 | 4 年前 | |
Fix a few spellos in docs. (Trying to debug an incremental build thing on a bot...) llvm-svn: 371860 | 6 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
Init project. | 11 个月前 | |
Remove trailing empty line llvm-svn: 347613 | 7 年前 | |
Init project. | 11 个月前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
Update references to the mailing lists that have moved to Discourse. | 4 年前 | |
[Symbolizer] Handle {{{bt}}} symbolizer markup element. This adds support for backtrace generation to the llvm-symbolizer markup filter, which is likely the largest use case. Reviewed By: peter.smith Differential Revision: https://reviews.llvm.org/D132706 (cherry picked from commit ea99225521cba6dec1ad4ca70a8665829e772fa9) | 3 年前 | |
[Docs] [Support] System Library to Support Library transition along with minor corrections to reflect it. System Library has been a long deprecated term along with the path lib/System, having been superseded/renamed to the Support Library a long time ago. These patches reflect those changes in documentation as well as update some outdated examples and provide context to the origin of the Support Library. Differential Revision: https://reviews.llvm.org/D52107 llvm-svn: 342500 | 7 年前 | |
Recover TableGen/LangRef, make it official Making the new TableGen documentation official and marking the old file as "Moved". Also, reverting the original LangRef as the normative formal description of the language, while keeping the "new" LangRef as LangIntro for the less inlcined to reading language grammars. We should remove TableGenFundamentals.rst one day, but for now, just a warning that it moved will have to do, while we make sure there are no more links to it from elsewhere. llvm-svn: 205289 | 12 年前 | |
[CMake] Make omitting CMAKE_BUILD_TYPE an error After a lot of discussion in this diff the consensus was that it is really hard to guess the users intention with their LLVM build. Instead of trying to guess if Debug or Release is the correct default option we opted for just not specifying CMAKE_BUILD_TYPE a error. Discussion on discourse here: https://discourse.llvm.org/t/rfc-select-a-better-linker-by-default-or-warn-about-using-bfd Reviewed By: hans, mehdi_amini, aaron.ballman, jhenderson, MaskRay, awarzynski Differential Revision: https://reviews.llvm.org/D124153 | 4 年前 | |
Adjust documentation for git migration. This fixes most references to the paths: llvm.org/svn/ llvm.org/git/ llvm.org/viewvc/ github.com/llvm-mirror/ github.com/llvm-project/ reviews.llvm.org/diffusion/ to instead point to https://github.com/llvm/llvm-project. This is *not* a trivial substitution, because additionally, all the checkout instructions had to be migrated to instruct users on how to use the monorepo layout, setting LLVM_ENABLE_PROJECTS instead of checking out various projects into various subdirectories. I've attempted to not change any scripts here, only documentation. The scripts will have to be addressed separately. Additionally, I've deleted one document which appeared to be outdated and unneeded: lldb/docs/building-with-debug-llvm.txt Differential Revision: https://reviews.llvm.org/D57330 llvm-svn: 352514 | 7 年前 | |
[lit] Support %if ... %else syntax for RUN lines This syntax allows to modify RUN lines based on features available. For example: RUN: ... | FileCheck %s --check-prefix=%if windows %{CHECK-W%} %else %{CHECK-NON-W%} CHECK-W: ... CHECK-NON-W: ... The whole command can be put under %if ... %else: RUN: %if tool_available %{ %tool %} %else %{ true %} or: RUN: %if tool_available %{ %tool %} If tool_available feature is missing, we'll have an empty command in this RUN line. LIT used to emit an error for empty commands, but now it treats such commands as nop in all cases. Multi-line expressions are also supported: RUN: %if tool_available %{ \ RUN: %tool \ RUN: %} %else %{ \ RUN: true \ RUN: %} Background and motivation: D121727 [NVPTX] Integrate ptxas to LIT tests https://reviews.llvm.org/D121727 Differential Revision: https://reviews.llvm.org/D122569 | 4 年前 | |
Insert missing bracket in docs. Body of unrolled loop was missing opening bracket. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D87329 | 5 年前 | |
Update references to 'master' branch. This commit replace 'master' with 'main' in llvm/docs. Reviewed By: sammccall, kristof.beyls Differential Revision: https://reviews.llvm.org/D92831 | 5 年前 | |
[docs] Adding DirectX target usage doc This document is a work in progress to begin fleshing out documentation for the DirectX backend and related changes in the LLVM project. This is not intended to be exhaustive or complete, it is intended as a starting point so taht future changes have a place for documentation to land. Differential Revision: https://reviews.llvm.org/D127640 | 4 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[SystemZ][z/OS] Introduce CCAssignToRegAndStack to calling convention Differential Revision: https://reviews.llvm.org/D127328 | 3 年前 | |
[docs] Add documentation on using the new pass manager And clarify in the "writing a pass" docs that both the legacy and new PMs are being used for the codegen/optimization pipelines. Reviewed By: ychen, asbirlea Differential Revision: https://reviews.llvm.org/D97515 | 5 年前 | |
[llvm][docs] Fix typos to say subclasses need to override virtual methods but not overload Reviewed By: aeubanks Differential Revision: https://reviews.llvm.org/D129484 | 3 年前 | |
[xray] Fix xray document spelling fix a couple of words spelling Reviewed By: dberris Differential Revision: https://reviews.llvm.org/D96658 | 5 年前 | |
[NFC] Trim trailing whitespace in *.rst | 4 年前 | |
[llvm] NFC: fix trivial typos in documents Reviewers: hans, Jim Reviewed By: Jim Subscribers: jvesely, nhaehnle, mgorny, arphaman, bmahjour, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73017 | 6 年前 | |
[yamlio] Allow parsing an entire mapping as an enumeration For when we want to change a configuration option from an enum into a struct. The need arose when working on D119599. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D120363 | 4 年前 | |
added section on CI system Add documentation for working with the CI systems. This is based on the discussion in the Infrastructure Working Group: https://github.com/ChristianKuehnel/iwg-workspace/issues/37 Differential Revision: https://reviews.llvm.org/D97389 | 5 年前 | |
[docs] Remove hard-coded version numbers from sphinx configs This updates all the non-runtime project release notes to use the version number from CMake instead of the hard-coded version numbers in conf.py. It also hides warnings about pre-releases when the git suffix is dropped from the LLVM version in CMake. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D112181 | 4 年前 | |
Reapply CycleInfo: Introduce cycles as a generalization of loops Reverts 02940d6d2202. Fixes breakage in the modules build. LLVM loops cannot represent irreducible structures in the CFG. This change introduce the concept of cycles as a generalization of loops, along with a CycleInfo analysis that discovers a nested hierarchy of such cycles. This is based on Havlak (1997), Nesting of Reducible and Irreducible Loops. The cycle analysis is implemented as a generic template and then instatiated for LLVM IR and Machine IR. The template relies on a new GenericSSAContext template which must be specialized when used for each IR. This review is a restart of an older review request: https://reviews.llvm.org/D83094 Original implementation by Nicolai Hähnle <nicolai.haehnle@amd.com>, with recent refactoring by Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> Differential Revision: https://reviews.llvm.org/D112696 | 4 年前 | |
Reapply CycleInfo: Introduce cycles as a generalization of loops Reverts 02940d6d2202. Fixes breakage in the modules build. LLVM loops cannot represent irreducible structures in the CFG. This change introduce the concept of cycles as a generalization of loops, along with a CycleInfo analysis that discovers a nested hierarchy of such cycles. This is based on Havlak (1997), Nesting of Reducible and Irreducible Loops. The cycle analysis is implemented as a generic template and then instatiated for LLVM IR and Machine IR. The template relies on a new GenericSSAContext template which must be specialized when used for each IR. This review is a restart of an older review request: https://reviews.llvm.org/D83094 Original implementation by Nicolai Hähnle <nicolai.haehnle@amd.com>, with recent refactoring by Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> Differential Revision: https://reviews.llvm.org/D112696 | 4 年前 | |
Reapply CycleInfo: Introduce cycles as a generalization of loops Reverts 02940d6d2202. Fixes breakage in the modules build. LLVM loops cannot represent irreducible structures in the CFG. This change introduce the concept of cycles as a generalization of loops, along with a CycleInfo analysis that discovers a nested hierarchy of such cycles. This is based on Havlak (1997), Nesting of Reducible and Irreducible Loops. The cycle analysis is implemented as a generic template and then instatiated for LLVM IR and Machine IR. The template relies on a new GenericSSAContext template which must be specialized when used for each IR. This review is a restart of an older review request: https://reviews.llvm.org/D83094 Original implementation by Nicolai Hähnle <nicolai.haehnle@amd.com>, with recent refactoring by Sameer Sahasrabuddhe <sameer.sahasrabuddhe@amd.com> Differential Revision: https://reviews.llvm.org/D112696 | 4 年前 | |
[docs] Updated docs to work with Doxygen 1.8.11 llvm-svn: 262786 | 10 年前 | |
[NFC] Inclusive Language: change master to main for .chm files [NFC] As part of using inclusive language within the llvm project, this patch replaces master with main when referring to .chm files. Reviewed By: teemperor Differential Revision: https://reviews.llvm.org/D113299 | 4 年前 | |
[LV] Epilogue Vectorization with Optimal Control Flow (Recommit) This is yet another attempt at providing support for epilogue vectorization following discussions raised in RFC http://llvm.1065342.n5.nabble.com/llvm-dev-Proposal-RFC-Epilog-loop-vectorization-tt106322.html#none and reviews D30247 and D88819. Similar to D88819, this patch achieve epilogue vectorization by executing a single vplan twice: once on the main loop and a second time on the epilogue loop (using a different VF). However it's able to handle more loops, and generates more optimal control flow for cases where the trip count is too small to execute any code in vector form. Reviewed By: SjoerdMeijer Differential Revision: https://reviews.llvm.org/D89566 | 5 年前 | |
Update the gcc-loops benchmark llvm-svn: 172966 | 13 年前 | |
Update references to the mailing lists that have moved to Discourse. | 4 年前 | |
Update the linpack benchmark with different array sizes. llvm-svn: 172965 | 13 年前 | |
[llvm-objdump][docs] Fix documentation for offloading flags | 3 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[LoopTerminology] Rotated Loops images | 6 年前 | |
[LoopTerminology] Rotated Loops images | 6 年前 | |
[LoopTerminology] Rotated Loops images | 6 年前 | |
[docs] Revise loop terminology reference. Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here. Some selected errors: * Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops. * "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo) * "execute before some interesting event happens" (some interesting event is not well-defined) Reviewed By: baziotis, Whitney Differential Revision: https://reviews.llvm.org/D88408 | 5 年前 | |
[docs] Stub out structure for Sphinx-based docs. - Work in progress, this is just the basic structure. llvm-svn: 155132 | 14 年前 | |
Revert r103213. It broke several sections of live website. llvm-svn: 103219 | 15 年前 | |
[x86/SLH] Add the design document for Speculative Load Hardening, a Spectre v1 mitigation. This was initially posted w/ the patch implementing this, got some basic review there. Also, it is generated from a the Google doc that I shared as part of the Speculative Load Hardening RFC and which has seen pretty widespread review at this point. However, as the patches are landing in LLVM, I wanted to land the docs as well. But it seemed like a bad idea to have them in the same commit in case of reverts or other things. So the docs are split out here. Thanks for all the review so far, and further review and improvements to the documentation here welcome. Please feel free to keep hammering on the code review or Google document. Note that this is a markdown document which Sphinx doesn't yet process. But we can add support for that after and this should get picked up (and I'm preparing patches for that). Also, this gets the document itself into a nice shared place where we can iterate on it. Differential Revision: https://reviews.llvm.org/D49433 llvm-svn: 337391 | 7 年前 | |
Summary: 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 | 10 年前 |
LLVM Documentation
LLVM's documentation is written in reStructuredText, a lightweight
plaintext markup language (file extension .rst). While the
reStructuredText documentation should be quite readable in source form, it
is mostly meant to be processed by the Sphinx documentation generation
system to create HTML pages which are hosted on https://llvm.org/docs/ and
updated after every commit. Manpage output is also supported, see below.
If you instead would like to generate and view the HTML locally, install Sphinx http://sphinx-doc.org/ and then do:
cd <build-dir>
cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_HTML=true <src-dir>
make -j3 docs-llvm-html
$BROWSER <build-dir>/docs/html/index.html
The mapping between reStructuredText files and generated documentation is
docs/Foo.rst <-> <build-dir>/docs//html/Foo.html <-> https://llvm.org/docs/Foo.html.
If you are interested in writing new documentation, you will want to read
SphinxQuickstartTemplate.rst which will get you writing documentation
very fast and includes examples of the most important reStructuredText
markup syntax.
Manpage Output
Building the manpages is similar to building the HTML documentation. The
primary difference is to use the man makefile target, instead of the
default (which is html). Sphinx then produces the man pages in the
directory <build-dir>/docs/man/.
cd <build-dir>
cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_MAN=true <src-dir>
make -j3 docs-llvm-man
man -l <build-dir>/docs/man/FileCheck.1
The correspondence between .rst files and man pages is
docs/CommandGuide/Foo.rst <-> <build-dir>/docs//man/Foo.1.
These .rst files are also included during HTML generation so they are also
viewable online (as noted above) at e.g.
https://llvm.org/docs/CommandGuide/Foo.html.
Checking links
The reachability of external links in the documentation can be checked by running:
cd llvm/docs/
sphinx-build -b linkcheck . _build/lintcheck/
# report will be generated in _build/lintcheck/output.txt
Doxygen page Output
Install doxygen https://www.doxygen.nl/download.html and dot2tex https://dot2tex.readthedocs.io/en/latest.
cd <build-dir>
cmake -DLLVM_ENABLE_DOXYGEN=On <llvm-top-src-dir>
make doxygen-llvm # for LLVM docs
make doxygen-clang # for clang docs
It will generate html in
<build-dir>/docs/doxygen/html # for LLVM docs
<build-dir>/tools/clang/docs/doxygen/html # for clang docs