svf-lib 1.0.1720 → 1.0.1722

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -661,9 +661,9 @@ inline IntervalValue operator<(const IntervalValue &lhs, const IntervalValue &rh
661
661
  }
662
662
  // Return [0,0] means lhs is totally impossible to be less than rhs
663
663
  // i.e., lhs is totally greater than or equal to rhs
664
- // When lhs.ub >= rhs.lb, e.g., lhs:[3, 4] rhs:[4,5]
665
- // lhs.ub(4) >= rhs.lb(4)
666
- else if (rhs.ub().geq(lhs.lb()))
664
+ // When lhs.lb >= rhs.ub, e.g., lhs:[4,5] rhs:[3,4]
665
+ // lhs.lb(4) >= rhs.ub(4)
666
+ else if (lhs.lb().geq(rhs.ub()))
667
667
  {
668
668
  return IntervalValue(0, 0);
669
669
  }
@@ -74,20 +74,20 @@ public:
74
74
  VAddrs getGepObjAddress(u32_t pointer, APOffset offset);
75
75
 
76
76
  /// Return the byte offset from one gep param offset
77
- std::pair<APOffset, APOffset> getBytefromGepTypePair(const AccessPath::VarAndGepTypePair& gep_pair, const GepStmt *gep);
77
+ IntervalValue getByteOffsetfromGepTypePair(const AccessPath::IdxVarAndGepTypePair& gep_pair, const GepStmt *gep);
78
78
 
79
79
  /// Return the Index offset from one gep param offset
80
- std::pair<APOffset, APOffset> getIndexfromGepTypePair(const AccessPath::VarAndGepTypePair& gep_pair, const GepStmt *gep);
80
+ IntervalValue getItvOfFlattenedElemIndexFromGepTypePair(const AccessPath::IdxVarAndGepTypePair& gep_pair, const GepStmt *gep);
81
81
 
82
82
  /// Return the byte offset expression of a GepStmt
83
83
  /// elemBytesize is the element byte size of an static alloc or heap alloc array
84
84
  /// e.g. GepStmt* gep = [i32*10], x, and x is [0,3]
85
- /// std::pair<s32_t, s32_t> byteOffset = getGepByteOffset(gep);
85
+ /// std::pair<s32_t, s32_t> byteOffset = getByteOffset(gep);
86
86
  /// byteOffset should be [0, 12] since i32 is 4 bytes.
87
- std::pair<APOffset, APOffset> getGepByteOffset(const GepStmt *gep);
87
+ IntervalValue getByteOffset(const GepStmt *gep);
88
88
 
89
89
  /// Return the offset expression of a GepStmt
90
- std::pair<APOffset, APOffset> getGepOffset(const GepStmt *gep);
90
+ IntervalValue getItvOfFlattenedElemIndex(const GepStmt *gep);
91
91
 
92
92
 
93
93
  static z3::context &getContext()
@@ -61,8 +61,8 @@ public:
61
61
  NonOverlap, Overlap, Subset, Superset, Same
62
62
  };
63
63
 
64
- typedef std::pair<const SVFVar*, const SVFType*> VarAndGepTypePair;
65
- typedef std::vector<VarAndGepTypePair> OffsetVarAndGepTypePairs;
64
+ typedef std::pair<const SVFVar*, const SVFType*> IdxVarAndGepTypePair;
65
+ typedef std::vector<IdxVarAndGepTypePair> IdxVarAndGepTypePairs;
66
66
 
67
67
  /// Constructor
68
68
  AccessPath(APOffset o = 0) : fldIdx(o) {}
@@ -103,7 +103,7 @@ public:
103
103
  {
104
104
  fldIdx = idx;
105
105
  }
106
- inline const OffsetVarAndGepTypePairs& getOffsetVarAndGepTypePairVec() const
106
+ inline const IdxVarAndGepTypePairs& getOffsetVarAndGepTypePairVec() const
107
107
  {
108
108
  return offsetVarAndGepTypePairs;
109
109
  }
@@ -163,7 +163,8 @@ private:
163
163
  NodeBS computeAllLocations() const;
164
164
 
165
165
  APOffset fldIdx; ///< Accumulated Constant Offsets
166
- OffsetVarAndGepTypePairs offsetVarAndGepTypePairs; ///< a vector of actual offset in the form of <SVF Var, iterator type>s
166
+ IdxVarAndGepTypePairs
167
+ offsetVarAndGepTypePairs; ///< a vector of actual offset in the form of <SVF Var, iterator type>s
167
168
  };
168
169
 
169
170
  } // End namespace SVF
@@ -173,7 +174,7 @@ template <> struct std::hash<SVF::AccessPath>
173
174
  size_t operator()(const SVF::AccessPath &ap) const
174
175
  {
175
176
  SVF::Hash<std::pair<SVF::NodeID, SVF::NodeID>> h;
176
- std::hash<SVF::AccessPath::OffsetVarAndGepTypePairs> v;
177
+ std::hash<SVF::AccessPath::IdxVarAndGepTypePairs> v;
177
178
  return h(std::make_pair(ap.getConstantFieldIdx(),
178
179
  v(ap.getOffsetVarAndGepTypePairVec())));
179
180
  }
@@ -342,6 +342,7 @@ public:
342
342
  AddrStmt(SVFVar* s, SVFVar* d) : AssignStmt(s, d, SVFStmt::Addr) {}
343
343
 
344
344
  virtual const std::string toString() const override;
345
+
345
346
  };
346
347
 
347
348
  /*!
@@ -491,7 +492,8 @@ public:
491
492
  {
492
493
  return ap;
493
494
  }
494
- inline const AccessPath::OffsetVarAndGepTypePairs getOffsetVarAndGepTypePairVec() const
495
+ inline const AccessPath::IdxVarAndGepTypePairs
496
+ getOffsetVarAndGepTypePairVec() const
495
497
  {
496
498
  return getAccessPath().getOffsetVarAndGepTypePairVec();
497
499
  }
@@ -264,12 +264,13 @@ private:
264
264
  getPointerToTy; /// Return a pointer to the current type
265
265
  StInfo* typeinfo; ///< SVF's TypeInfo
266
266
  bool isSingleValTy; ///< The type represents a single value, not struct or
267
+ u32_t byteSize; ///< LLVM Byte Size
267
268
  ///< array
268
269
 
269
270
  protected:
270
- SVFType(bool svt, SVFTyKind k)
271
+ SVFType(bool svt, SVFTyKind k, u32_t Sz)
271
272
  : kind(k), getPointerToTy(nullptr), typeinfo(nullptr),
272
- isSingleValTy(svt)
273
+ isSingleValTy(svt), byteSize(Sz)
273
274
  {
274
275
  }
275
276
 
@@ -299,7 +300,6 @@ public:
299
300
  return getPointerToTy;
300
301
  }
301
302
 
302
- u32_t getLLVMByteSize() const;
303
303
 
304
304
  inline void setTypeInfo(StInfo* ti)
305
305
  {
@@ -318,6 +318,13 @@ public:
318
318
  return typeinfo;
319
319
  }
320
320
 
321
+ /// if Type is not sized, byteSize is 0
322
+ /// if Type is sized, byteSize is the LLVM Byte Size.
323
+ inline u32_t getByteSize() const
324
+ {
325
+ return byteSize;
326
+ }
327
+
321
328
  inline bool isPointerTy() const
322
329
  {
323
330
  return kind == SVFPointerTy;
@@ -350,8 +357,8 @@ private:
350
357
  const SVFType* ptrElementType;
351
358
 
352
359
  public:
353
- SVFPointerType()
354
- : SVFType(true, SVFPointerTy), ptrElementType(nullptr)
360
+ SVFPointerType(u32_t byteSize)
361
+ : SVFType(true, SVFPointerTy, byteSize), ptrElementType(nullptr)
355
362
  {
356
363
  }
357
364
 
@@ -382,7 +389,7 @@ private:
382
389
  short signAndWidth; ///< For printing
383
390
 
384
391
  public:
385
- SVFIntegerType() : SVFType(true, SVFIntegerTy) {}
392
+ SVFIntegerType(u32_t byteSize) : SVFType(true, SVFIntegerTy, byteSize) {}
386
393
  static inline bool classof(const SVFType* node)
387
394
  {
388
395
  return node->getKind() == SVFIntegerTy;
@@ -411,7 +418,7 @@ private:
411
418
 
412
419
  public:
413
420
  SVFFunctionType(const SVFType* rt)
414
- : SVFType(false, SVFFunctionTy), retTy(rt)
421
+ : SVFType(false, SVFFunctionTy, 0), retTy(rt)
415
422
  {
416
423
  }
417
424
  static inline bool classof(const SVFType* node)
@@ -436,7 +443,7 @@ private:
436
443
  std::string name;
437
444
 
438
445
  public:
439
- SVFStructType() : SVFType(false, SVFStructTy) {}
446
+ SVFStructType(u32_t byteSize) : SVFType(false, SVFStructTy, byteSize) {}
440
447
 
441
448
  static inline bool classof(const SVFType* node)
442
449
  {
@@ -469,8 +476,8 @@ private:
469
476
  const SVFType* typeOfElement; /// For printing & debugging
470
477
 
471
478
  public:
472
- SVFArrayType()
473
- : SVFType(false, SVFArrayTy), numOfElement(0), typeOfElement(nullptr)
479
+ SVFArrayType(u32_t byteSize)
480
+ : SVFType(false, SVFArrayTy, byteSize), numOfElement(0), typeOfElement(nullptr)
474
481
  {
475
482
  }
476
483
 
@@ -508,7 +515,7 @@ private:
508
515
  std::string repr; /// Field representation for printing
509
516
 
510
517
  public:
511
- SVFOtherType(bool isSingleValueTy) : SVFType(isSingleValueTy, SVFOtherTy) {}
518
+ SVFOtherType(u32_t byteSize, bool isSingleValueTy) : SVFType(isSingleValueTy, SVFOtherTy, byteSize) {}
512
519
 
513
520
  static inline bool classof(const SVFType* node)
514
521
  {
@@ -18,14 +18,20 @@ target triple = "x86_64-apple-macosx11.0.0"
18
18
 
19
19
  @.str = private unnamed_addr constant [10 x i8] c"ALLOC_RET\00", section "llvm.metadata"
20
20
  @.str.1 = private unnamed_addr constant [49 x i8] c"/Users/runner/work/SVF/SVF/svf-llvm/lib/extapi.c\00", section "llvm.metadata"
21
- @.str.2 = private unnamed_addr constant [12 x i8] c"REALLOC_RET\00", section "llvm.metadata"
22
- @.str.3 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG0\00", section "llvm.metadata"
23
- @.str.4 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG1\00", section "llvm.metadata"
24
- @.str.5 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG2\00", section "llvm.metadata"
25
- @.str.6 = private unnamed_addr constant [7 x i8] c"MEMCPY\00", section "llvm.metadata"
26
- @.str.7 = private unnamed_addr constant [7 x i8] c"MEMSET\00", section "llvm.metadata"
27
- @.str.8 = private unnamed_addr constant [10 x i8] c"OVERWRITE\00", section "llvm.metadata"
28
- @llvm.global.annotations = appending global [116 x { i8*, i8*, i8*, i32, i8* }] [{ i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @malloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 18, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 24, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 30, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @fdopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 36, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent64* (i8*)* @readdir64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 42, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 48, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @calloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 54, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @zmalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 60, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @gzdopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 66, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @iconv_open to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 72, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 78, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc_clear to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 84, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i64* (i32, i8*, i32)* @nhalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 90, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @oballoc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 96, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @popen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 102, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @pthread_getspecific to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 108, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent* (i8*)* @readdir to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 114, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safe_calloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 120, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @safe_malloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 126, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safecalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 132, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safemalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 138, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @setmntent to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 144, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*, i32)* @shmat to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 150, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @__sysv_signal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 156, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i32)* (i32, void (i32)*)* @signal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 162, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @tempnam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 168, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 174, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @xcalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 180, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @xmalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 186, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 192, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znaj to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 198, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwj to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 204, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @__cxa_allocate_exception to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 210, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @aligned_alloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 216, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @memalign to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 222, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @valloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 228, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 234, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @XSetLocaleModifiers to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 240, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @__strdup to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 246, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @crypt to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 252, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @ctime to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 258, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @dlerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 264, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32)* @dlopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 270, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gai_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 276, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gcry_cipher_algo_name to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 282, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @svfgcry_md_algo_name_ to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 288, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getenv to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 294, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @getlogin to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 300, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getpass to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 306, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gnutls_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 312, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gpg_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 318, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32*)* @gzerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 324, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @inet_ntoa to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 330, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @initscr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 336, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @llvm_stacksave to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 342, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 348, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32, i32, i32)* @newwin to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 354, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @nl_langinfo to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 360, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @opendir to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 366, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @sbrk to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 372, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @strdup to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 378, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 384, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strsignal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 390, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @textdomain to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 396, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8**)* @tgetstr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 402, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tigetstr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 408, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tmpnam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 414, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @ttyname to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 420, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @getcwd to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 426, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @mem_realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 432, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 438, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @safe_realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 444, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i64)* @saferealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 450, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @safexrealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 456, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strtok to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 462, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i8**)* @strtok_r to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 468, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @xrealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 474, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwm to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 480, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnwmRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 486, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnamRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 492, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, ...)* @asprintf to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 498, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i8*)* @vasprintf to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 504, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i32)* @db_create to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 510, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_bag_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 516, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 522, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_crt_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 528, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_privkey_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 534, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i64, i64)* @posix_memalign to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 540, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, %struct.dirent***, i32 (%struct.dirent*)*, i32 (%struct.dirent**, %struct.dirent**)*)* @scandir to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 546, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, i8*, i8***, i32*)* @XmbTextPropertyToTextList to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 552, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy_p0i8_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 558, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy_p0i8_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 561, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 564, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 567, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove_p0i8_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 570, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove_p0i8_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 573, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @__memcpy_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 576, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @memmove to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 579, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i64)* @bcopy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 585, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i32, i64)* @memccpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 588, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32)* @__memmove_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 594, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.7, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 597, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.7, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 600, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.7, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 603, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32, i64, i32)* @__memset_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.7, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 606, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @__strcpy_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 612, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @__strcat_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 618, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @stpcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 624, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strcat to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 630, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 636, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @strncat to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 642, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @strncpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 648, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i64 (i8*, i8**, i64*, i8**, i64*)* @iconv to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 654, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @_ZNSt5arrayIPK1ALm2EE4backEv to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 660, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @SyGetmem to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 669, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @SyGetmem to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 669, i8* null }], section "llvm.metadata"
21
+ @.str.2 = private unnamed_addr constant [15 x i8] c"AllocSize:Arg0\00", section "llvm.metadata"
22
+ @.str.3 = private unnamed_addr constant [18 x i8] c"AllocSize:UNKNOWN\00", section "llvm.metadata"
23
+ @.str.4 = private unnamed_addr constant [20 x i8] c"AllocSize:Arg0*Arg1\00", section "llvm.metadata"
24
+ @.str.5 = private unnamed_addr constant [15 x i8] c"AllocSize:Arg1\00", section "llvm.metadata"
25
+ @.str.6 = private unnamed_addr constant [12 x i8] c"REALLOC_RET\00", section "llvm.metadata"
26
+ @.str.7 = private unnamed_addr constant [20 x i8] c"AllocSize:Arg1*Arg2\00", section "llvm.metadata"
27
+ @.str.8 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG0\00", section "llvm.metadata"
28
+ @.str.9 = private unnamed_addr constant [15 x i8] c"AllocSize:Arg2\00", section "llvm.metadata"
29
+ @.str.10 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG1\00", section "llvm.metadata"
30
+ @.str.11 = private unnamed_addr constant [11 x i8] c"ALLOC_ARG2\00", section "llvm.metadata"
31
+ @.str.12 = private unnamed_addr constant [7 x i8] c"MEMCPY\00", section "llvm.metadata"
32
+ @.str.13 = private unnamed_addr constant [7 x i8] c"MEMSET\00", section "llvm.metadata"
33
+ @.str.14 = private unnamed_addr constant [10 x i8] c"OVERWRITE\00", section "llvm.metadata"
34
+ @llvm.global.annotations = appending global [207 x { i8*, i8*, i8*, i32, i8* }] [{ i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @malloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 18, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @malloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 18, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 24, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 24, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 30, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @fopen64 to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 30, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @fdopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 36, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @fdopen to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 36, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent64* (i8*)* @readdir64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 42, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent64* (i8*)* @readdir64 to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 42, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 48, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid64 to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 48, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @calloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 54, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @calloc to i8*), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.4, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 54, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @zmalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 60, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @zmalloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 60, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @gzdopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 66, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @gzdopen to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 66, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @iconv_open to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 72, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @iconv_open to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 72, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 78, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 78, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc_clear to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 84, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i32)* @lalloc_clear to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 84, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i64* (i32, i8*, i32)* @nhalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 90, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i64* (i32, i8*, i32)* @nhalloc to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 90, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @oballoc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 96, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @oballoc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 96, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @popen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 102, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @popen to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 102, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @pthread_getspecific to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 108, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @pthread_getspecific to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 108, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent* (i8*)* @readdir to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 114, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (%struct.dirent* (i8*)* @readdir to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 114, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safe_calloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 120, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safe_calloc to i8*), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.4, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 120, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @safe_malloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 126, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @safe_malloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 126, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safecalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 132, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safecalloc to i8*), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.4, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 132, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safemalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 138, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32)* @safemalloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 138, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @setmntent to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 144, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @setmntent to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 144, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*, i32)* @shmat to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 150, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*, i32)* @shmat to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 150, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @__sysv_signal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 156, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i8*)* @__sysv_signal to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 156, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i32)* (i32, void (i32)*)* @signal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 162, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i32)* (i32, void (i32)*)* @signal to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 162, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @tempnam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 168, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @tempnam to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 168, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 174, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @tmpvoid to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 174, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @xcalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 180, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @xcalloc to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 180, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @xmalloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 186, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @xmalloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 186, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 192, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znam to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 192, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znaj to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 198, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znaj to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 198, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwj to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 204, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwj to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 204, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @__cxa_allocate_exception to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 210, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @__cxa_allocate_exception to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 210, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @aligned_alloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 216, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @aligned_alloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 216, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @memalign to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 222, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i64)* @memalign to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 222, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @valloc to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 228, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @valloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 228, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap64 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 234, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap64 to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 234, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @XSetLocaleModifiers to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 240, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @XSetLocaleModifiers to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 240, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @__strdup to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 246, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @__strdup to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 246, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @crypt to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 252, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @crypt to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 252, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @ctime to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 258, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @ctime to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 258, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @dlerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 264, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @dlerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 264, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32)* @dlopen to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 270, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32)* @dlopen to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 270, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gai_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 276, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gai_strerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 276, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gcry_cipher_algo_name to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 282, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gcry_cipher_algo_name to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 282, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @svfgcry_md_algo_name_ to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 288, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @svfgcry_md_algo_name_ to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 288, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getenv to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 294, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getenv to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 294, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @getlogin to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 300, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @getlogin to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 300, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getpass to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 306, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @getpass to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 306, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gnutls_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 312, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gnutls_strerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 312, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gpg_strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 318, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @gpg_strerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 318, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32*)* @gzerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 324, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32*)* @gzerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 324, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @inet_ntoa to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 330, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @inet_ntoa to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 330, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @initscr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 336, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @initscr to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 336, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @llvm_stacksave to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 342, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @llvm_stacksave to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 342, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 348, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i32, i32, i32, i64)* @mmap to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 348, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32, i32, i32)* @newwin to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 354, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32, i32, i32, i32)* @newwin to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 354, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @nl_langinfo to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 360, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @nl_langinfo to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 360, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @opendir to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 366, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @opendir to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 366, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @sbrk to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 372, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @sbrk to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 372, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @strdup to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 378, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @strdup to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 378, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strerror to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 384, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strerror to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 384, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strsignal to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 390, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @strsignal to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 390, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @textdomain to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 396, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @textdomain to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 396, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8**)* @tgetstr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 402, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8**)* @tgetstr to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 402, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tigetstr to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 408, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tigetstr to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 408, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tmpnam to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 414, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @tmpnam to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 414, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @ttyname to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 420, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i32)* @ttyname to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 420, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @getcwd to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 426, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @getcwd to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 426, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @mem_realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 432, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @mem_realloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 432, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 438, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @realloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 438, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @safe_realloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 444, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @safe_realloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 444, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i64)* @saferealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 450, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64, i64)* @saferealloc to i8*), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.7, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 450, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @safexrealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 456, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* ()* @safexrealloc to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 456, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strtok to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 462, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strtok to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 462, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i8**)* @strtok_r to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 468, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i8**)* @strtok_r to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 468, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @xrealloc to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 474, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i64)* @xrealloc to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.5, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 474, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwm to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 480, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @_Znwm to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 480, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnwmRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 486, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnwmRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 486, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnamRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 492, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64, i8*)* @_ZnamRKSt9nothrow_t to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 492, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, ...)* @asprintf to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 498, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, ...)* @asprintf to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 498, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i8*)* @vasprintf to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 504, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i8*)* @vasprintf to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 504, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i32)* @db_create to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 510, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i8*, i32)* @db_create to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 510, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_bag_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 516, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_bag_init to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 516, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 522, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_pkcs12_init to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 522, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_crt_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 528, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_crt_init to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 528, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_privkey_init to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 534, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*)* @gnutls_x509_privkey_init to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 534, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i64, i64)* @posix_memalign to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.8, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 540, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8**, i64, i64)* @posix_memalign to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.9, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 540, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, %struct.dirent***, i32 (%struct.dirent*)*, i32 (%struct.dirent**, %struct.dirent**)*)* @scandir to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.10, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 546, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, %struct.dirent***, i32 (%struct.dirent*)*, i32 (%struct.dirent**, %struct.dirent**)*)* @scandir to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 546, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, i8*, i8***, i32*)* @XmbTextPropertyToTextList to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.11, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 552, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i32 (i8*, i8*, i8***, i32*)* @XmbTextPropertyToTextList to i8*), i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 552, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy_p0i8_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 558, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy_p0i8_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 561, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 564, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 567, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove_p0i8_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 570, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @llvm_memmove_p0i8_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 573, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32, i32)* @__memcpy_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 576, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @memmove to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 579, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i64)* @bcopy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 585, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i32, i64)* @memccpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 588, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8*, i32)* @__memmove_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 594, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.13, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 597, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset_p0i8_i32 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.13, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 600, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (void (i8*, i8, i32, i32)* @llvm_memset_p0i8_i64 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.13, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 603, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i32, i64, i32)* @__memset_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.13, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 606, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @__strcpy_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 612, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @__strcat_chk to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 618, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @stpcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 624, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strcat to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 630, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*)* @strcpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 636, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @strncat to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 642, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*, i8*, i64)* @strncpy to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 648, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i64 (i8*, i8**, i64*, i8**, i64*)* @iconv to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 654, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i8*)* @_ZNSt5arrayIPK1ALm2EE4backEv to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 660, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @SyGetmem to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 669, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @SyGetmem to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 669, i8* null }, { i8*, i8*, i8*, i32, i8* } { i8* bitcast (i8* (i64)* @SyGetmem to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i32 0, i32 0), i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.1, i32 0, i32 0), i32 669, i8* null }], section "llvm.metadata"
29
35
 
30
36
  ; Function Attrs: noinline nounwind ssp uwtable
31
37
  define i8* @malloc(i64 noundef %size) #0 {
@@ -435,6 +435,12 @@ public:
435
435
  /// Whether it is a black hole object
436
436
  bool isBlackHoleObj() const;
437
437
 
438
+ /// Get the byte size of this object
439
+ u32_t getByteSizeOfObj() const;
440
+
441
+ /// Check if byte size is a const value
442
+ bool isConstantByteSize() const;
443
+
438
444
  /// object attributes methods
439
445
  //@{
440
446
  bool isFunction() const;
@@ -502,6 +508,9 @@ private:
502
508
  /// Size of the object or number of elements
503
509
  u32_t elemNum;
504
510
 
511
+ /// Byte size of object
512
+ u32_t byteSize;
513
+
505
514
  void resetTypeForHeapStaticObj(const SVFType* type);
506
515
  public:
507
516
 
@@ -544,6 +553,25 @@ public:
544
553
  return elemNum;
545
554
  }
546
555
 
556
+ /// Get the byte size of this object
557
+ inline u32_t getByteSizeOfObj() const
558
+ {
559
+ assert(isConstantByteSize() && "This Obj's byte size is not constant.");
560
+ return byteSize;
561
+ }
562
+
563
+ /// Set the byte size of this object
564
+ inline void setByteSizeOfObj(u32_t size)
565
+ {
566
+ byteSize = size;
567
+ }
568
+
569
+ /// Check if byte size is a const value
570
+ inline bool isConstantByteSize() const
571
+ {
572
+ return byteSize != 0;
573
+ }
574
+
547
575
  /// Flag for this object type
548
576
  //@{
549
577
  inline void setFlag(MEMTYPE mask)
@@ -55,7 +55,7 @@ public:
55
55
  void buildMemModel(SVFModule* svfModule);
56
56
 
57
57
  /// Return size of this object based on LLVM value
58
- u32_t getObjSize(const Type* type);
58
+ u32_t getNumOfElements(const Type* ety);
59
59
 
60
60
  protected:
61
61
 
@@ -93,6 +93,9 @@ protected:
93
93
  /// Analyse types of heap and static objects
94
94
  void analyzeStaticObjType(ObjTypeInfo* typeinfo, const Value* val);
95
95
 
96
+ /// Analyze byte size of heap alloc function (e.g. malloc/calloc/...)
97
+ u32_t analyzeHeapAllocByteSize(const Value* val);
98
+
96
99
  ///Get a reference to the components of struct_info.
97
100
  /// Number of flattened elements of an array or struct
98
101
  u32_t getNumOfFlattenElements(const Type* T);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-lib",
3
- "version": "1.0.1720",
3
+ "version": "1.0.1722",
4
4
  "description": "SVF's npm support",
5
5
  "main": "index.js",
6
6
  "scripts": {