[all-commits] [llvm/llvm-project] 16a91a: [flang][driver] Make `flang-new` always generate r...

Andrzej WarzyƄski via All-commits all-commits at lists.llvm.org
Wed Feb 23 02:08:20 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 16a91a1cbe98268d5e0343e313d848650f5f3541
      https://github.com/llvm/llvm-project/commit/16a91a1cbe98268d5e0343e313d848650f5f3541
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2022-02-23 (Wed, 23 Feb 2022)

  Changed paths:
    M flang/include/flang/Frontend/CompilerInstance.h
    M flang/include/flang/Frontend/FrontendAction.h
    M flang/include/flang/Frontend/FrontendActions.h
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Frontend/FrontendActions.cpp

  Log Message:
  -----------
  [flang][driver] Make `flang-new` always generate run-time type info

Currently, the driver generates the tables with "run-time type
information for derived types" only when specific actions are run.
However, the corresponding data might be required by the subsequent
compilation stages (e.g. lowering, code-gen) and should be generated
unconditionally. Note that this is only possible once the semantic
checks have been run.

Note that when generating these tables, extra semantic errors might be
generated. The driver will always report these and in most cases such
semantic errors will cause the driver to exit immediately. The only
exception are actions inheriting from `PrescanAndSemaDebugAction`.
Currently, there's only one such action: `DebugDumpAllAction`
(corresponds to `-fdebug-dump-all` command-line flag). I've updated the
comments for this action to clarify this.

This change will mostly affect lowering, which currently is only
available for most basic examples (e.g. empty programs). I wasn't able
to find a working case that would demonstrate the new behaviour. I
hope that this change is straightforward enough and am submitting it
without a test.

Differential Revision: https://reviews.llvm.org/D120051




More information about the All-commits mailing list