llvm-project/flang/tools
Andrzej Warzynski e81b340117 [flang][driver] Add debug options not requiring semantic checks
This patch adds two debugging options in the new Flang driver
(flang-new):
  *fdebug-unparse-no-sema
  *fdebug-dump-parse-tree-no-sema
Each of these options combines two options from the "throwaway" driver
(left: f18, right: flang-new):
  * `-fdebug-uparse -fdebug-no-semantics` --> `-fdebug-unparse-no-sema`
  * `-fdebug-dump-parse-tree -fdebug-no-semantics` -->
    `-fdebug-dump-parse-tree-no-sema`

There are no plans to implement `-fdebug-no-semantics` in the new
driver.  Such option would be too powerful. Also, it would only make
sense when combined with specific frontend actions (`-fdebug-unparse`
and `-fdebug-dump-parse-tree`). Instead, this patch adds 2 specialised
options listed above. Each of these is implemented through a dedicated
FrontendAction (also added).

The new frontend actions are implemented in terms of a new abstract base
action: `PrescanAndSemaAction`. This new base class was required so that
we can have finer control over what steps within the frontend are
executed:
  * `PrescanAction`: run the _prescanner_
  * `PrescanAndSemaAction`: run the _prescanner_ and the _parser_ (new
     in this patch)
  * `PrescanAndSemaAction`: run the _prescanner_, _parser_ and run the
    _semantic checks_

This patch introduces `PrescanAndParseAction::BeginSourceFileAction`.
Apart from the semantic checks removed at the end, it is similar to
`PrescanAndSemaAction::BeginSourceFileAction`.

Differential Revision: https://reviews.llvm.org/D99645
2021-04-08 09:44:19 +00:00
..
bbc [flang] Add clang-format files for FIR source (LLVM style) 2020-02-17 02:37:49 -08:00
f18 [flang][driver] Add debug options not requiring semantic checks 2021-04-08 09:44:19 +00:00
f18-parse-demo [flang] Add -fsyntax-only to f18; retain -fparse-only synonym 2021-02-03 09:01:39 -08:00
fir-opt [flang][fir] Add the pre-code gen rewrite pass and codegen ops. 2021-03-24 19:27:10 -07:00
flang-driver [clang][flang] Improve the consistency of the code-base 2021-02-25 21:25:43 +08:00
tco [flang][fir] Add the pre-code gen rewrite pass and codegen ops. 2021-03-24 19:27:10 -07:00
CMakeLists.txt [flang][fir] Add fir-opt tool 2021-02-16 11:48:40 -05:00