1// RUN: tco %s | FileCheck %s 2// RUN: %flang_fc1 -emit-llvm %s -o - | FileCheck %s 3 4// CHECK: @g_i0 = global i32 0 5fir.global @g_i0 : i32 { 6 %1 = arith.constant 0 : i32 7 fir.has_value %1 : i32 8} 9 10// CHECK: @g_i2 = global i32 2 11fir.global @g_i2 : i32 { 12 %1 = arith.constant 2 : i32 13 fir.has_value %1 : i32 14} 15 16// CHECK: @g_ci5 = constant i32 5 17fir.global @g_ci5 constant : i32 { 18 %c = arith.constant 5 : i32 19 fir.has_value %c : i32 20} 21 22// CHECK: @i_i515 = internal global i32 515 23fir.global internal @i_i515 (515:i32) : i32 24 25// CHECK: @C_i511 = common global i32 0 26fir.global common @C_i511 (0:i32) : i32 27 28// CHECK: @w_i86 = weak global i32 86 29fir.global weak @w_i86 (86:i32) : i32 30 31// CHECK: @str1 = global [6 x i8] c"Hello!" 32fir.global @str1 : !fir.char<1,6> { 33 %1 = fir.string_lit "Hello!"(6) : !fir.char<1,6> 34 fir.has_value %1 : !fir.char<1,6> 35} 36 37// CHECK: @_QEmask = internal global [32 x i32] [i32 1, i32 1 38fir.global internal @_QEmask : !fir.array<32xi32> { 39 %c0_i32 = arith.constant 1 : i32 40 %0 = fir.undefined !fir.array<32xi32> 41 %2 = fir.insert_on_range %0, %c0_i32 from (0) to (31) : (!fir.array<32xi32>, i32) -> !fir.array<32xi32> 42 fir.has_value %2 : !fir.array<32xi32> 43} 44 45// CHECK: @_QEmultiarray = internal global [32 x [32 x i32]] 46fir.global internal @_QEmultiarray : !fir.array<32x32xi32> { 47 %c0_i32 = arith.constant 1 : i32 48 %0 = fir.undefined !fir.array<32x32xi32> 49 %2 = fir.insert_on_range %0, %c0_i32 from (0,0) to (31,31) : (!fir.array<32x32xi32>, i32) -> !fir.array<32x32xi32> 50 fir.has_value %2 : !fir.array<32x32xi32> 51} 52 53// CHECK: @_QEmasklogical = internal global [32768 x i32] [i32 -1, i32 -1, 54fir.global internal @_QEmasklogical : !fir.array<32768x!fir.logical<4>> { 55 %true = arith.constant true 56 %0 = fir.undefined !fir.array<32768x!fir.logical<4>> 57 %1 = fir.convert %true : (i1) -> !fir.logical<4> 58 %2 = fir.insert_on_range %0, %1 from (0) to (32767) : (!fir.array<32768x!fir.logical<4>>, !fir.logical<4>) -> !fir.array<32768x!fir.logical<4>> 59 fir.has_value %2 : !fir.array<32768x!fir.logical<4>> 60} 61