This is an archive of the discontinued LLVM Phabricator instance.

[Flang] Enable support for conversion of recursive record types
ClosedPublic

Authored by kiranchandramohan on Dec 17 2021, 6:08 AM.

Details

Summary

Uses the recursive type conversion implemented in D113579, D113580.
Tests check for recursive and mutually recursive types.

Note: The downstream implementation for recursive types is a bit old and is based on a static map. This was removed while upstreaming (https://reviews.llvm.org/D112961) based on review comments. Since the recursive type conversion is now available in MLIR we are using that. If this patch is accepted we can use the same in the downstream implementation.
Part of upstreaming flang from fir-dev branch of https://github.com/flang-compiler/f18-llvm-project.

Co-authored-by: Eric Schweitz <eschweitz@nvidia.com>

Diff Detail

Event Timeline

Herald added a project: Restricted Project. · View Herald TranscriptDec 17 2021, 6:08 AM
Herald added a subscriber: mehdi_amini. · View Herald Transcript
kiranchandramohan requested review of this revision.Dec 17 2021, 6:08 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 17 2021, 6:08 AM
kiranchandramohan edited the summary of this revision. (Show Details)Dec 17 2021, 7:56 AM

Specify targets in test for conversion. Fixes the Windows CI failure.

ftynse accepted this revision.Dec 20 2021, 5:17 AM
This revision is now accepted and ready to land.Dec 20 2021, 5:17 AM