40 lines
1.5 KiB
Diff
40 lines
1.5 KiB
Diff
From a1445cd0340006d7635101c4c2b27ae51328642c Mon Sep 17 00:00:00 2001
|
|
From: Serge Guelton <sguelton@redhat.com>
|
|
Date: Thu, 19 Sep 2019 00:54:40 +0000
|
|
Subject: [PATCH] Initialize all fields in ABIArgInfo.
|
|
|
|
Due to usage of an uninitialized fields, we end up with
|
|
a Conditional jump or move depends on uninitialised value
|
|
|
|
Fixes https://bugs.llvm.org/show_bug.cgi?id=40547
|
|
|
|
Commited on behalf of Martin Liska <mliska@suse.cz>
|
|
|
|
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@372281 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
---
|
|
include/clang/CodeGen/CGFunctionInfo.h | 10 ++++------
|
|
1 file changed, 4 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/include/clang/CodeGen/CGFunctionInfo.h b/include/clang/CodeGen/CGFunctionInfo.h
|
|
index 1f81072e23d0..5069d9af42a3 100644
|
|
--- a/include/clang/CodeGen/CGFunctionInfo.h
|
|
+++ b/include/clang/CodeGen/CGFunctionInfo.h
|
|
@@ -109,14 +109,12 @@ class ABIArgInfo {
|
|
UnpaddedCoerceAndExpandType = T;
|
|
}
|
|
|
|
- ABIArgInfo(Kind K)
|
|
- : TheKind(K), PaddingInReg(false), InReg(false) {
|
|
- }
|
|
-
|
|
public:
|
|
- ABIArgInfo()
|
|
+ ABIArgInfo(Kind K = Direct)
|
|
: TypeData(nullptr), PaddingType(nullptr), DirectOffset(0),
|
|
- TheKind(Direct), PaddingInReg(false), InReg(false) {}
|
|
+ TheKind(K), PaddingInReg(false), InAllocaSRet(false),
|
|
+ IndirectByVal(false), IndirectRealign(false), SRetAfterThis(false),
|
|
+ InReg(false), CanBeFlattened(false), SignExt(false) {}
|
|
|
|
static ABIArgInfo getDirect(llvm::Type *T = nullptr, unsigned Offset = 0,
|
|
llvm::Type *Padding = nullptr,
|