Commit 7fc9f129 authored by Serge Guelton's avatar Serge Guelton Committed by Tom Stellard
Browse files

Merging r372281:

------------------------------------------------------------------------
r372281 | serge_sans_paille | 2019-09-18 17:54:40 -0700 (Wed, 18 Sep 2019) | 8 lines

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>
------------------------------------------------------------------------
parent 28f6aac1
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -109,14 +109,12 @@ private:
    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,