[flang] Hanlde COMPLEX 2/3/10 in runtime TypeCode(cat, kind)
authorJean Perier <jperier@nvidia.com>
Tue, 15 Mar 2022 08:23:50 +0000 (09:23 +0100)
committerJean Perier <jperier@nvidia.com>
Tue, 15 Mar 2022 08:26:14 +0000 (09:26 +0100)
Type codes for COMPLEX kinds 2, 3, and 10 were added in https://reviews.llvm.org/D117336
but handling for these kinds in TypeCode(cat, kind) has not been added
yet.

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

flang/runtime/type-code.cpp

index 7acff93deac1cce9e7c1d3f01e7e7c94c1fa689d..bfa6416899e3f6c76f6ae51f1a8b0d646d43789c 100644 (file)
@@ -55,6 +55,12 @@ TypeCode::TypeCode(TypeCategory f, int kind) {
     break;
   case TypeCategory::Complex:
     switch (kind) {
+    case 2:
+      raw_ = CFI_type_half_float_Complex;
+      break;
+    case 3:
+      raw_ = CFI_type_bfloat_Complex;
+      break;
     case 4:
       raw_ = CFI_type_float_Complex;
       break;
@@ -62,6 +68,8 @@ TypeCode::TypeCode(TypeCategory f, int kind) {
       raw_ = CFI_type_double_Complex;
       break;
     case 10:
+      raw_ = CFI_type_extended_double_Complex;
+      break;
     case 16:
       raw_ = CFI_type_long_double_Complex;
       break;