This is an archive of the discontinued LLVM Phabricator instance.

[flang] Keep current polymorphic implementation under a flag
ClosedPublic

Authored by clementval on Oct 5 2022, 9:58 AM.

Details

Summary

It is useful for couple of test suite like NAG to keep failing
with a TODO until the polymorphic entities is implemented all the
way done to codegen.

This pass adds a flag to LoweringOptions for experimental development.
This flag is off by default and can be enable in bbc with -polymorphic-type.
Options can be added in the driver and tco when needed.

Diff Detail

Event Timeline

clementval created this revision.Oct 5 2022, 9:58 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald Transcript
Herald added a subscriber: mehdi_amini. · View Herald Transcript
clementval requested review of this revision.Oct 5 2022, 9:58 AM
PeteSteinfeld requested changes to this revision.Oct 5 2022, 11:22 AM

This generally functions well. But I'd rather have a name that's specific to the new implementation of polymorphic types rather than "experimental". Something like "PolyTypeImpl".

This revision now requires changes to proceed.Oct 5 2022, 11:22 AM

libc++ went the other direction. -fexperimental-library , see https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html. It enables all features, TSs that are under development.

Change flang name

clementval edited the summary of this revision. (Show Details)Oct 5 2022, 11:40 AM

libc++ went the other direction. -fexperimental-library , see https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html. It enables all features, TSs that are under development.

Since we are gradually implementing this feature and it is supposed to be removed once done, a dedicated option fits better here. I'm pretty sure we will have something like experimental in the future.

clang-format

PeteSteinfeld accepted this revision.Oct 5 2022, 11:48 AM

All builds and tests correctly and looks good.

Thanks for the fast action!

This revision is now accepted and ready to land.Oct 5 2022, 11:48 AM
This revision was landed with ongoing or failed builds.Oct 5 2022, 2:05 PM
This revision was automatically updated to reflect the committed changes.