aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Lobo <pedro.lobo@tecnico.ulisboa.pt>2024-12-18 18:35:31 +0000
committerGitHub <noreply@github.com>2024-12-18 18:35:31 +0000
commit1a87f07465d76c87ace25623c67faf9596bbbf56 (patch)
treef5b03d366352215d8d74658b6805a289587a6965
parentc6f753b9a0910cdbb6bee77af1e5a54cf2e168fa (diff)
downloadllvm-1a87f07465d76c87ace25623c67faf9596bbbf56.zip
llvm-1a87f07465d76c87ace25623c67faf9596bbbf56.tar.gz
llvm-1a87f07465d76c87ace25623c67faf9596bbbf56.tar.bz2
[clang] Change initialization of a vector from undef to poison [NFC] (#120446)
It is fully initialized with insertelements.
-rw-r--r--clang/lib/CodeGen/MicrosoftCXXABI.cpp2
-rw-r--r--clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp4
2 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
index d587daa..90651c3 100644
--- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp
+++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
@@ -3454,7 +3454,7 @@ llvm::Value *MicrosoftCXXABI::EmitNonNullMemberPointerConversion(
if (inheritanceModelHasOnlyOneField(IsFunc, DstInheritance)) {
Dst = FirstField;
} else {
- Dst = llvm::UndefValue::get(ConvertMemberPointerType(DstTy));
+ Dst = llvm::PoisonValue::get(ConvertMemberPointerType(DstTy));
unsigned Idx = 0;
Dst = Builder.CreateInsertValue(Dst, FirstField, Idx++);
if (inheritanceModelHasNVOffsetField(IsFunc, DstInheritance))
diff --git a/clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp b/clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
index 2ac1961..fc8a31e 100644
--- a/clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
+++ b/clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
@@ -647,7 +647,7 @@ void (Multiple::*convertB2FuncToMultiple(void (B2::*mp)()))() {
// CHECK: br i1 %{{.*}} label %{{.*}}, label %{{.*}}
//
// memptr.convert: ; preds = %entry
-// CHECK: insertvalue { ptr, i32 } undef, ptr %[[mp]], 0
+// CHECK: insertvalue { ptr, i32 } poison, ptr %[[mp]], 0
// CHECK: insertvalue { ptr, i32 } %{{.*}}, i32 4, 1
// CHECK: br label
//
@@ -705,7 +705,7 @@ void (D::*convertCToD(void (C::*mp)()))() {
// CHECK: %[[nv_adj:.*]] = select i1 %[[is_nvbase]], i32 %[[nv_disp]], i32 0
// CHECK: %[[dst_adj:.*]] = select i1 %[[is_nvbase]], i32 4, i32 0
// CHECK: %[[adj:.*]] = sub nsw i32 %[[nv_adj]], %[[dst_adj]]
-// CHECK: insertvalue { ptr, i32, i32 } undef, ptr {{.*}}, 0
+// CHECK: insertvalue { ptr, i32, i32 } poison, ptr {{.*}}, 0
// CHECK: insertvalue { ptr, i32, i32 } {{.*}}, i32 %[[adj]], 1
// CHECK: insertvalue { ptr, i32, i32 } {{.*}}, i32 {{.*}}, 2
// CHECK: br label