array reflection

This commit is contained in:
2026-07-22 10:12:12 +02:00
parent 0d04925b3a
commit 07e89e23e1
12 changed files with 675 additions and 68 deletions
+6 -1
View File
@@ -2642,7 +2642,12 @@ emit_constructor :: proc(emitter: ^Emitter) {
)
strings.write_string(&emitter.builder, "define internal void @bro.init() {\nentry:\n")
for global, global_id in emitter.module.globals {
if !global.is_static && !global.external && !global.problematic {
if global.eager && !global.is_static && !global.external && !global.problematic {
fmt.sbprintf(&emitter.builder, " %%g%d = call %s @bro.get.%d()\n", global_id, llvm_type(global.type, &emitter.module.types), global_id)
}
}
for global, global_id in emitter.module.globals {
if !global.eager && !global.is_static && !global.external && !global.problematic {
fmt.sbprintf(&emitter.builder, " %%g%d = call %s @bro.get.%d()\n", global_id, llvm_type(global.type, &emitter.module.types), global_id)
}
}