llvm-project/mlir/test/Target/LLVMIR/Import/zeroinitializer.ll
Bala_Bhuvan_Varma dc8fde0821
[MLIR][LLVMIR] Fix LLVM IR import of ZeroInitializers to constant zero (#171107)
Constant zero aggregate structures are imported to from llvm IR as
undef.
This includes for example LandingPad Instructions which have zero value
filters, structs.

This fixes the import to use the zeroOp to materialize a
zero-initialized constant.
2025-12-10 07:41:54 +01:00

11 lines
400 B
LLVM

; RUN: mlir-translate --import-llvm %s | FileCheck %s
%Domain = type { ptr, ptr }
; CHECK: llvm.mlir.global external @D()
; CHECK-SAME: !llvm.struct<"Domain", (ptr, ptr)>
; CHECK: %[[E0:.+]] = llvm.mlir.zero : !llvm.ptr
; CHECK: %[[RES:.+]] = llvm.mlir.zero : !llvm.struct<"Domain", (ptr, ptr)>
; CHECK: llvm.return %[[RES]] : !llvm.struct<"Domain", (ptr, ptr)>
@D = global %Domain zeroinitializer