[Mlir-commits] [mlir] [mlir][EmitC]Allow Fields to have initial values (PR #151437)
Paul Kirth
llvmlistbot at llvm.org
Thu Jul 31 08:28:22 PDT 2025
================
@@ -39,13 +37,46 @@ emitc.class final @finalClass {
// CHECK-LABEL: class finalClass final {
// CHECK-NEXT: public:
-// CHECK-NEXT: float[1] fieldName0;
-// CHECK-NEXT: float[1] fieldName1;
+// CHECK-NEXT: float fieldName0[1];
+// CHECK-NEXT: float fieldName1[1];
// CHECK-NEXT: void execute() {
// CHECK-NEXT: size_t v1 = 0;
-// CHECK-NEXT: float[1] v2 = fieldName0;
-// CHECK-NEXT: float[1] v3 = fieldName1;
// CHECK-NEXT: return;
// CHECK-NEXT: }
// CHECK-EMPTY:
// CHECK-NEXT: };
+
+emitc.class @mainClass {
+ emitc.field @fieldName0 : !emitc.array<2xf32> = dense<0.0> {attrs = {emitc.name_hint = "another_feature"}}
+ emitc.func @get_fieldName0() {
+ %0 = emitc.get_field @fieldName0 : !emitc.array<2xf32>
+ return
+ }
+}
+
+// CHECK-LABEL: class mainClass {
+// CHECK-NEXT: public:
+// CHECK-NEXT: float fieldName0[2] = {0.0e+00f, 0.0e+00f};
+// CHECK-NEXT: void get_fieldName0() {
+// CHECK-NEXT: return;
+// CHECK-NEXT: }
+// CHECK-EMPTY:
+// CHECK-NEXT: };
----------------
ilovepi wrote:
Do you want to enforce the empty line? I'd assume you'd be fine if the output was fixed to not emit that.
```suggestion
// CHECK: };
```
https://github.com/llvm/llvm-project/pull/151437
More information about the Mlir-commits
mailing list