| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[NFC][Py Reformat] Reformat python files in the rest of the dirs This is an ongoing series of commits that are reformatting our Python code. This catches the last of the python files to reformat. Since they where so few I bunched them together. Reformatting is done with black. If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run git checkout --ours <yourfile> and then reformat it with black. If you run into any problems, post to discourse about it and we will try to help. RFC Thread below: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style Reviewed By: jhenderson, #libc, Mordante, sivachandra Differential Revision: https://reviews.llvm.org/D150784 | 3 年前 | |
[Flang] Fix release blocker issue #46931 related to documentation. Summary: Fixes bug : https://bugs.llvm.org/show_bug.cgi?id=46931 This commit add a new flag -DLLVM_ENABLE_SPHINX=ON to cmake command to generate sphinx documentation, along with new cmake targets docs-flang-html. ninja docs-flang-html - generates sphinx documentation. Generated release notes are present in <builddir>/tools/flang/docs/html/ folder. Reviewers: richard.barton.arm, DavidTruby Tags: #flang Differential Revision: https://reviews.llvm.org/D85470 | 5 年前 | |
[Flang][WWW] Update Bug Reports link to point to Github issues | 3 年前 | |
[Flang] Fix release blocker issue #46931 related to documentation. Summary: Fixes bug : https://bugs.llvm.org/show_bug.cgi?id=46931 This commit add a new flag -DLLVM_ENABLE_SPHINX=ON to cmake command to generate sphinx documentation, along with new cmake targets docs-flang-html. ninja docs-flang-html - generates sphinx documentation. Generated release notes are present in <builddir>/tools/flang/docs/html/ folder. Reviewers: richard.barton.arm, DavidTruby Tags: #flang Differential Revision: https://reviews.llvm.org/D85470 | 5 年前 | |
[flang][NFC] Document Fortran aliasing rules Summarize current understanding of Fortran's guarantees to a compiler (or in other words, restrictions on programs and programmers) about aliasing. Differential Revision: https://reviews.llvm.org/D135214 | 3 年前 | |
Document for Aliasing analysis in FIR | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang] Block construct A block construct is an execution control construct that supports declaration scopes contained within a parent subprogram scope or another block scope. (blocks may be nested.) This is implemented by applying basic scope processing to the block level. Name uniquing/mangling is extended to support this. The term "block" is heavily overloaded in Fortran standards. Prior name uniquing used tag B for common block objects. Existing tag choices were modified to free up B for block construct entities, and C for common blocks, and resolve additional issues with other tags. The "old tag -> new tag" changes can be summarized as: -> B -- block construct -> new B -> C -- common block C -> YI -- intrinsic type descriptor; not currently generated CT -> Y -- nonintrinsic type descriptor; not currently generated G -> N -- namelist group L -> -- block data; not needed -> deleted Existing name uniquing components consist of a tag followed by a name from user source code, such as a module, subprogram, or variable name. Block constructs are different in that they may be anonymous. (Like other constructs, a block may have a block-construct-name that can be used in exit statements, but this name is optional.) So blocks are given a numeric compiler-generated preorder index starting with B1, B2, and so on, on a per-procedure basis. Name uniquing is also modified to include component names for all containing procedures rather than for just the immediate host. This fixes an existing name clash bug with same-named entities in same-named host subprograms contained in different-named containing subprograms, and variations of the bug involving modules and submodules. F18 clause 9.7.3.1 (Deallocation of allocatable variables) paragraph 1 has a requirement that an allocated, unsaved allocatable local variable must be deallocated on procedure exit. The following paragraph 2 states: When a BLOCK construct terminates, any unsaved allocated allocatable local variable of the construct is deallocated. Similarly, F18 clause 7.5.6.3 (When finalization occurs) paragraph 3 has a requirement that a nonpointer, nonallocatable object must be finalized on procedure exit. The following paragraph 4 states: A nonpointer nonallocatable local variable of a BLOCK construct is finalized immediately before it would become undefined due to termination of the BLOCK construct. These deallocation and finalization requirements, along with stack restoration requirements, require knowledge of block exits. In addition to normal block termination at an end-block-stmt, a block may be terminated by executing a branching statement that targets a statement outside of the block. This includes Single-target branch statements: - goto - exit - cycle - return Bounded multiple-target branch statements: - arithmetic goto - IO statement with END, EOR, or ERR specifiers Unbounded multiple-target branch statements: - call with alternate return specs - computed goto - assigned goto Lowering code is extended to determine if one of these branches exits one or more relevant blocks or other constructs, and adds a mechanism to insert any necessary deallocation, finalization, or stack restoration code at the source of the branch. For a single-target branch it suffices to generate the exit code just prior to taking the indicated branch. Each target of a multiple-target branch must be analyzed individually. Where necessary, the code must first branch to an intermediate basic block that contains exit code, followed by a branch to the original target statement. This patch implements an activeConstructStack construct exit mechanism that queries a new activeConstruct PFT bit to insert stack restoration code at block exits. It ties in to existing code in ConvertVariable.cpp routine instantiateLocal which has code for finalization, making block exit finalization on par with subprogram exit finalization. Deallocation is as yet unimplemented for subprograms or blocks. This may result in memory leaks for affected objects at either the subprogram or block level. Deallocation cases can be addressed uniformly for both scopes in a future patch, presumably with code insertion in routine instantiateLocal. The exit code mechanism is not limited to block construct exits. It is also available for use with other constructs. In particular, it is used to replace custom deallocation code for a select case construct character selector expression where applicable. This functionality is also added to select type and associate constructs. It is available for use with other constructs, such as select rank and image control constructs, if that turns out to be necessary. Overlapping nonfunctional changes include eliminating "FIR" from some routine names and eliminating obsolete spaces in comments. | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[NFC][flang] Inclusive language: remove instances of master [NFC] As part of using inclusive language within the llvm project, this patch: - replaces master with main in C++style.md to match the renaming of the master branch, - removes master from FortranIR.md where it is superfluous, - renames a logical variable in pre-fir-tree04.f90 containing master. Reviewed By: ZarkoCA Differential Revision: https://reviews.llvm.org/D113923 | 4 年前 | |
[Flang] Use find_program() to find clang-tblgen There are two scenarios here: 1. Standalone flang build, where we use an installed clang-tblgen binary. We need to use find_package() to find it. 2. Combined build of clang and flang, where we want to use the path specified in CLANG_TABLEGEN_EXE during the clang build -- however, this variable was previously not exported. The new implementation matches what is done for mlir-tblgen. Differential Revision: https://reviews.llvm.org/D131475 | 3 年前 | |
[docs][flang] Fix typos Reviewed By: SouraVX Differential Revision: https://reviews.llvm.org/D87885 | 5 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang][RFC] Proposal for complex number lowering through MLIR This design document proposes lowering FIR complex number operations through the MLIR complex dialect. Differential Revision: https://reviews.llvm.org/D134364 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang] Adding a guideline for flang design documentation The goal of this document is to: - Allow the community to contribute to flang design by defining the expectations. - Ensure there is a minimum of consistency between future design docs. Differential Revision: https://reviews.llvm.org/D130166 | 3 年前 | |
[flang] Semantics for !DIR$ IGNORE_TKR Implement semantics for the IGNORE_TKR directive as it is interpreted by the PGI / NVFORTRAN compiler. Differential Revision: https://reviews.llvm.org/D148643 | 3 年前 | |
[flang] Document DO CONCURRENT's problems (NFC) Differential Revision: https://reviews.llvm.org/D86556 | 5 年前 | |
[flang] Portability warning and documentation for an obscure extension A quotation mark can appear in a Fortran character literal by doubling it; for example, PRINT *, "'""'" prints '"'. When those doubled quotation marks are split by a free form line continuation, the continuation line should have an ampersand before the second quotation mark. But most compilers, including this one, allow the second quotation mark to appear as the first character on the continuation line, too. So this works: print *, "'"& "'" but it really should be written as: print *, "'"& &"'" Emit a portability warning and document that we support this near-universal extension. Differential Revision: https://reviews.llvm.org/D155973 | 3 年前 | |
[flang][NFC] Add F2023X documentation Add a document that summarizes Fortran 202X's upcoming features and their urgency for implementation. Differential Revision: https://reviews.llvm.org/D153916 | 3 年前 | |
[flang][NFC] Fix typos in FIROps.td Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D135570 | 3 年前 | |
[flang] don't require -flang-experimental-exec flag anymore Reviewed By: awarzynski, PeteSteinfeld Differential Revision: https://reviews.llvm.org/D153379 | 3 年前 | |
[flang][docs][nfc] Refine FlangOptionsDocs.td Currently, FlangOptionsDocs.td doesn't specify ExcludedFlags which means that in the generated documentation file we expose flags that: * we don't necessarily won't to advertise to our users (e.g. hidden flags), or * are not supported altogether (e.g. CL options). This patch defines ExcludeFlags to fix that. The definition of ExcludeFlags was copied from Clang so that LLVM frontends have consistent documentation. It might be a bit counter-intuitive that IncludeFlags alone is not sufficient here. However, the current logic in ClangOptionDocEmitter.cpp will parse IncludeFlags and print all options that contains one of the included flags, as well as their aliases. So, for example, for -fopenmp (which is a supported Flang option), one would also get /fopenmp (i.e. CL mode equivalent for -fopenmp). By adding ExcludeFlags, we make sure that such aliases are excluded. I've also taken the liberty and moved FlangOptionsDocs.td. Originally it was located in Flang's "flang/include" directory, but there shouldn't be any implementation/documentation files there. Instead, I'm moving it to the "flang/docs" directory. Differential Revision: https://reviews.llvm.org/D130558 | 3 年前 | |
[flang] (NFC) Document Fortran feature history Add flang/docs/FortranFeatureHistory.md Differential Revision: https://reviews.llvm.org/D101081 | 5 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[NFC][flang] Inclusive language: remove instances of master [NFC] As part of using inclusive language within the llvm project, this patch: - replaces master with main in C++style.md to match the renaming of the master branch, - removes master from FortranIR.md where it is superfluous, - renames a logical variable in pre-fir-tree04.f90 containing master. Reviewed By: ZarkoCA Differential Revision: https://reviews.llvm.org/D113923 | 4 年前 | |
[flang][test-suite] Document need for NO_STOP_MESSAGE environment variable. NFC When running the llvm-test-suite with flang, we get a lot of failures because of the output of the STOP statement. We can workaround them by setting NO_STOP_MESSAGE=1 in the environment. This patch adds a few words about it to the docs about the Fortran part of the llvm-test-suite. See also https://reviews.llvm.org/D126360 | 4 年前 | |
Updated the 'getting involved' documentation for Flang to correct the technical call details modified: flang/docs/GettingInvolved.md Reviewed By: NimishMishra Differential Revision: https://reviews.llvm.org/D152466 | 3 年前 | |
[flang][runtime] Support in-tree device build of Flang runtime. I changed the set of files that are built for experimental CUDA/OMP builds, i.e. the files with enabled device support are built as such and the rest of the files are built just for the host target. With this change we can build Flang runtime library that is fully functional on the host target, so in-tree targets like check-flang become operational. Reviewed By: klausler, PeteSteinfeld Differential Revision: https://reviews.llvm.org/D155029 | 3 年前 | |
[flang][hlfir] Special handling for temporary LHS in AssignOp. When AssignOp is used with LHS that is a compiler generated temporary special care must be taken to initialize the temporary and avoid finalizations of its components. This change-set adds optional temporary_lhs attribute for AssignOp to convey this information to HLFIR-to-FIR conversion pass. Currently, this results in calling AssignTemporary runtime for doing the assignment. Reviewed By: jeanPerier, tblah Differential Revision: https://reviews.llvm.org/D152482 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang][driver] Delete f18 (i.e. the old Flang driver) This patch removes f18, a.k.a. the old driver. It is being replaced with the new driver, flang-new, which has reached feature parity with f18 a while ago. This was discussed in [1] and also in [2]. With this change, FLANG_BUILD_NEW_DRIVER is no longer needed and is also deleted. This means that we are making the dependency on Clang permanent (i.e. it cannot be disabled with a CMake flag). LIT set-up is updated accordingly. All references to f18 or f18.cpp are either updated or removed. The F18_FC variable from the flang bash script is replaced with FLANG_FC. The former is still supported for backwards compatibility. [1] https://lists.llvm.org/pipermail/flang-dev/2021-June/000742.html [2] https://reviews.llvm.org/D103177 Differential Revision: https://reviews.llvm.org/D105811 | 4 年前 | |
[Flang] Include logical default with default-integer-8 Other compilers include the logical default also with the default-integer-8 setting. This patch does the same for flang. Reviewed By: awarzynski, sscalpone Differential Revision: https://reviews.llvm.org/D155279 | 3 年前 | |
[flang][doc] Remove DCMPLX intrinsic from the Intrinsic Procedures Lacking Support list Differential Revision: https://reviews.llvm.org/D138848 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang][openacc] Relax clause rule on routine directive Some compiler treat acc routine without a parallelism clause as if seq is present. Relax the parser rule to allow acc routine without clause. The default clause will be handled in lowering. Reviewed By: razvanlupusoru Differential Revision: https://reviews.llvm.org/D153896 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[OpenMP][Flang][Semantics] Add semantics support for USE_DEVICE_ADDR clause on OMP TARGET DATA directive. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D149815 | 3 年前 | |
[Docs] Fix a link for cray-pointer documentation Differential Revision: https://reviews.llvm.org/D145554 | 3 年前 | |
[Flang] Reword the overview document I brought the overview document up to date and added information for most compilation phases to dump out the reeults of the phase. Differential Revision: https://reviews.llvm.org/D140241 | 3 年前 | |
[flang][docs] Add lowering design doc for parameterized derived-type This document aims to give insights at the representation of parameterized derived-type (PDTs) in FIR and how PDTs are lowered to FIR and interact with the runtime. Reviewed By: jeanPerier, klausler Differential Revision: https://reviews.llvm.org/D133096 | 3 年前 | |
[flang] CUDA Fortran - part 1/5: parsing Begin upstreaming of CUDA Fortran support in LLVM Flang. This first patch implements parsing for CUDA Fortran syntax, including: - a new LanguageFeature enum value for CUDA Fortran - driver change to enable that feature for *.cuf and *.CUF source files - parse tree representation of CUDA Fortran syntax - dumping and unparsing of the parse tree - the actual parsers for CUDA Fortran syntax - prescanning support for !@CUF and !$CUF - basic sanity testing via unparsing and parse tree dumps ... along with any minimized changes elsewhere to make these work, mostly no-op cases in common::visitors instances in semantics and lowering to allow them to compile in the face of new types in variant<> instances in the parse tree. Because CUDA Fortran allows the kernel launch chevron syntax ("call foo<<<blocks, threads>>>()") only on CALL statements and not on function references, the parse tree nodes for CallStmt, FunctionReference, and their shared Call were rearranged a bit; this caused a fair amount of one-line changes in many files. More patches will follow that implement CUDA Fortran in the symbol table and name resolution, and then semantic checking. Differential Revision: https://reviews.llvm.org/D150159 | 3 年前 | |
[flang] Fix pointer definition semantic checking via refactoring The infrastructure in semantics that is used to check that the left-hand sides of normal assignment statements are really definable variables was not being used to check whether the LHSs of pointer assignments are modifiable, and so most cases of unmodifiable pointers are left undiagnosed. Rework the semantics checking for pointer assignments, NULLIFY statements, pointer dummy arguments, &c. so that cases of unmodifiable pointers are properly caught. This has been done by extracting all the various definability checking code that has been implemented for different contexts in Fortran into one new facility. The new consolidated definability checking code returns messages meant to be attached as "because: " explanations to context-dependent errors like "left-hand side of assignment is not definable". These new error message texts and their attached explanations affect many existing tests, which have been updated. The testing infrastructure was extended by another patch to properly compare warnings and explanatory messages, which had been ignored until recently. Differential Revision: https://reviews.llvm.org/D136979 | 3 年前 | |
[flang][NFC] Update polymorphic design document to reflect implementation Update the design document to reflect the actual implementation of polymorphic entities. Reviewed By: jeanPerier, PeteSteinfeld Differential Revision: https://reviews.llvm.org/D147665 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang] Support codegen for global procedure pointer This supports the codegen for global procedure pointer in BoxedProcedure pass. Reset the boxproc type. Reviewed By: jeanPerier Differential Revision: https://reviews.llvm.org/D138273 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
flang: remove the hardcoded 15 from the release notes Differential Revision: https://reviews.llvm.org/D142835 | 3 年前 | |
[flang] Add new documentation main page Add a new index page to be the Flang documentation mainpage instead of Overview.md, which jumps straight into the compiler Design. The index file needs to be in .rst format to use the toctree directive to create table of contents. Also use the sphinx_markdown_tables extension to generate html tables form markdown. A number of additional style changes to the existing docs were needed to make this work well: * Convert all headings to the # style, which works better with toctree's titlesonly option. Ensure that there is only one top-level heading per document. * Add a title to documents that don't have one for rendering on the index. * Convert the grammar docs from .txt to .md. for better rendering * Fixed broken link to a section in another document - sphinx does not seem to support anchor links in markdown files. Depends on D87226 Reviewed By: sameeranjoshi Differential Revision: https://reviews.llvm.org/D87242 | 5 年前 | |
[flang] Implement derived type description table encoding Define Fortran derived types that describe the characteristics of derived types, and instantiations of parameterized derived types, that are of relevance to the runtime language support library. Define a suite of corresponding C++ structure types for the runtime library to use to interpret instances of the descriptions. Create instances of these description types in Semantics as static initializers for compiler-created objects in the scopes that define or instantiate user derived types. Delete obsolete code from earlier attempts to package runtime type information. Differential Revision: https://reviews.llvm.org/D92802 | 5 年前 | |
[flang] Improve initializer semantics, esp. for component default values This patch plugs many holes in static initializer semantics, improves error messages for default initial values and other component properties in parameterized derived type instantiations, and cleans up several small issues noticed during development. We now do proper scalar expansion, folding, and type, rank, and shape conformance checking for component default initializers in derived types and PDT instantiations. The initial values of named constants are now guaranteed to have been folded when installed in the symbol table, and are no longer folded or scalar-expanded at each use in expression folding. Semantics documentation was extended with information about the various kinds of initializations in Fortran and when each of them are processed in the compiler. Some necessary concomitant changes have bulked this patch out a bit: * contextual messages attachments, which are now produced for parameterized derived type instantiations so that the user can figure out which instance caused a problem with a component, have been added as part of ContextualMessages, and their implementation was debugged * several APIs in evaluate::characteristics was changed so that a FoldingContext is passed as an argument rather than just its intrinsic procedure table; this affected client call sites in many files * new tools in Evaluate/check-expression.cpp to determine when an Expr actually is a single constant value and to validate a non-pointer variable initializer or object component default value * shape conformance checking has additional arguments that control whether scalar expansion is allowed * several now-unused functions and data members noticed and removed * several crashes and bogus errors exposed by testing this new code were fixed * a -fdebug-stack-trace option to enable LLVM's stack tracing on a crash, which might be useful in the future TL;DR: Initialization processing does more and takes place at the right times for all of the various kinds of things that can be initialized. Differential Review: https://reviews.llvm.org/D92783 | 5 年前 | |
[Flang][driver] Update the docs Please note that the updated documentation reflects the design that we are working towards, but haven't implemented competely yet. We took this approach in order to provide a more holisitic and complete overview of the design. In particular, this document assumes that Flang's frontend and compiler driver can already generate code. This is still work-in-progress and is being developed on the fir-dev branch in the F18 repository [1]. [1] https://github.com/flang-compiler/f18-llvm-project/tree/fir-dev Differential Revision: https://reviews.llvm.org/D111573 | 4 年前 | |
[NFC][Py Reformat] Reformat python files in the rest of the dirs This is an ongoing series of commits that are reformatting our Python code. This catches the last of the python files to reformat. Since they where so few I bunched them together. Reformatting is done with black. If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run git checkout --ours <yourfile> and then reformat it with black. If you run into any problems, post to discourse about it and we will try to help. RFC Thread below: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style Reviewed By: jhenderson, #libc, Mordante, sivachandra Differential Revision: https://reviews.llvm.org/D150784 | 3 年前 | |
[flang] Fix link to old repo location in doxygen mainpage. NFC. | 5 年前 | |
[docs] Hide collaboration and include graphs in doxygen docs They don't convey any useful information and make the documentation unnecessarily hard to read. Differential Revision: https://reviews.llvm.org/D149641 | 3 年前 | |
[flang] Correct handling of null pointer initializers Fortran defines "null-init" null pointer initializers as being function references, syntactically, that have to resolve to calls to the intrinsic function NULL() with no actual arguments. Differential revision: https://reviews.llvm.org/D91657 | 5 年前 | |
[Branch-Rename] Fix some links According to the [[ https://foundation.llvm.org/docs/branch-rename/ | status of branch rename ]], the master branch of the LLVM repository is removed on 28 Jan 2021. Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D95766 | 5 年前 | |
[Flang][driver] Update the docs Please note that the updated documentation reflects the design that we are working towards, but haven't implemented competely yet. We took this approach in order to provide a more holisitic and complete overview of the design. In particular, this document assumes that Flang's frontend and compiler driver can already generate code. This is still work-in-progress and is being developed on the fir-dev branch in the F18 repository [1]. [1] https://github.com/flang-compiler/f18-llvm-project/tree/fir-dev Differential Revision: https://reviews.llvm.org/D111573 | 4 年前 | |
[flang] RFC: -fstack-arrays An RFC describing how -fstack-arrays will be implemented. Differential Revision: https://reviews.llvm.org/D139617 | 3 年前 | |
[Docs] Add GettingStarted.md to index.md | 3 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 |