svf-lib 1.0.2572 → 1.0.2574

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.
Binary file
@@ -172,8 +172,11 @@ public:
172
172
  IntervalValue getGepByteOffset(const GepStmt* gep);
173
173
  AddressValue getGepObjAddrs(const ValVar* pointer, IntervalValue offset);
174
174
 
175
- AbstractValue loadValue(const ValVar* pointer, const ICFGNode* node);
176
- void storeValue(const ValVar* pointer, const AbstractValue& val, const ICFGNode* node);
175
+ /// Virtual so full-sparse can layer the GepObj overlay on top.
176
+ virtual AbstractValue loadValue(const ValVar* pointer,
177
+ const ICFGNode* node);
178
+ virtual void storeValue(const ValVar* pointer, const AbstractValue& val,
179
+ const ICFGNode* node);
177
180
 
178
181
  const SVFType* getPointeeElement(const ObjVar* var, const ICFGNode* node);
179
182
  u32_t getAllocaInstByteSize(const AddrStmt* addr);
@@ -214,17 +217,38 @@ protected:
214
217
  virtual bool narrowCycleState(const AbstractState& prev, const AbstractState& cur,
215
218
  const ICFGCycleWTO* cycle);
216
219
 
217
- private:
218
- /// Initialize abstract state for the global ICFG node and process global statements
219
- virtual void handleGlobalNode();
220
-
220
+ protected:
221
221
  /// Pull-based state merge: read abstractTrace[pred] for each predecessor,
222
222
  /// apply branch refinement for conditional IntraCFGEdges, and join into
223
223
  /// abstractTrace[node]. Returns true if at least one predecessor had state.
224
- bool mergeStatesFromPredecessors(const ICFGNode* node);
224
+ /// Virtual so full-sparse can layer per-MRSVFGNode obj pulls on top of the
225
+ /// base ICFG-edge merge.
226
+ virtual bool mergeStatesFromPredecessors(const ICFGNode* node);
227
+
228
+ /// Returns true if the branch edge is reachable under the current state.
229
+ /// Pure query: does not update `as` or branch refinement traces.
230
+ bool isBranchEdgeFeasible(const IntraCFGEdge* edge, AbstractState& as);
231
+
232
+ /// Collect branch-induced interval refinement after a feasible edge has
233
+ /// been selected for normal CFG-state merging.
234
+ void collectBranchRefinement(const IntraCFGEdge* edge, AbstractState& as);
235
+
236
+ /// Hook called by collectBranchRefinement for each obj that the
237
+ /// branch narrows. Default (dense/semi): MEET `narrowed` onto
238
+ /// obj's value (read at `loadIcfg` where sparse keeps it) and
239
+ /// write the result into the local `as` (per-edge predState copy)
240
+ /// so joinStates carries it to `succ`. FullSparse overrides to
241
+ /// capture into refinementTrace[succ] instead.
242
+ virtual void recordBranchRefinement(NodeID objId,
243
+ const IntervalValue& narrowed,
244
+ AbstractState& as,
245
+ const ICFGNode* loadIcfg,
246
+ const ICFGNode* succ);
225
247
 
226
- /// Returns true if the branch is reachable; narrows as in-place.
227
- bool isBranchFeasible(const IntraCFGEdge* edge, AbstractState& as);
248
+ private:
249
+ /// Initialize abstract state for the global ICFG node and process global
250
+ /// statements
251
+ virtual void handleGlobalNode();
228
252
 
229
253
  /// Handle a call site node: dispatch to ext-call, direct-call, or indirect-call handling
230
254
  virtual void handleCallSite(const ICFGNode* node);
@@ -241,11 +265,12 @@ private:
241
265
  /// Dispatch an SVF statement (Addr/Binary/Cmp/Load/Store/Copy/Gep/Select/Phi/Call/Ret) to its handler
242
266
  virtual void handleSVFStatement(const SVFStmt* stmt);
243
267
 
244
- /// Returns true if the cmp-conditional branch is feasible; narrows as in-place.
245
- bool isCmpBranchFeasible(const IntraCFGEdge* edge, AbstractState& as);
268
+ /// Returns true if the cmp-conditional branch is feasible.
269
+ bool isCmpBranchEdgeFeasible(const IntraCFGEdge* edge, AbstractState& as);
246
270
 
247
- /// Returns true if the switch branch is feasible; narrows as in-place.
248
- bool isSwitchBranchFeasible(const IntraCFGEdge* edge, AbstractState& as);
271
+ /// Returns true if the switch branch is feasible.
272
+ bool isSwitchBranchEdgeFeasible(const IntraCFGEdge* edge,
273
+ AbstractState& as);
249
274
 
250
275
  void updateStateOnAddr(const AddrStmt *addr);
251
276
 
@@ -309,4 +334,4 @@ protected:
309
334
 
310
335
  bool shouldApplyNarrowing(const FunObjVar* fun);
311
336
  };
312
- }
337
+ } // namespace SVF
@@ -24,11 +24,15 @@
24
24
  #define INCLUDE_AE_SVFEXE_SPARSEABSTRACTINTERPRETATION_H_
25
25
 
26
26
  #include "AE/Svfexe/AbstractInterpretation.h"
27
+ #include <memory>
27
28
 
28
29
  namespace SVF
29
30
  {
30
31
 
31
32
  class SVFG;
33
+ class SVFGBuilder;
34
+ class IndirectSVFGEdge;
35
+ class VFGNode;
32
36
 
33
37
  /// Abstract Interpretation for `Options::AESparsity::SemiSparse`.
34
38
  ///
@@ -76,10 +80,8 @@ protected:
76
80
  ///
77
81
  /// In full-sparse mode both ValVars and ObjVars live at their SVFG
78
82
  /// def-sites; reads query the SVFG for the reaching-def site, writes
79
- /// happen at def-sites. ValVar reads currently assert(false) until the
80
- /// SVFG-backed resolution lands (see `doc/plan-full-sparse.md`); cycle
81
- /// helpers are inherited from the semi-sparse parent and will also need
82
- /// extension for ObjVars.
83
+ /// happen at def-sites. See `doc/plan-full-sparse.md` for the
84
+ /// phase plan; Phase 1 routes ValVar and ObjVar reads through the SVFG.
83
85
  class FullSparseAbstractInterpretation : public SemiSparseAbstractInterpretation
84
86
  {
85
87
  public:
@@ -89,28 +91,83 @@ public:
89
91
  }
90
92
  ~FullSparseAbstractInterpretation() override;
91
93
 
92
- // Full-sparse ValVar resolution will route through the SVFG once
93
- // implemented; fail loudly until then rather than silently inherit
94
- // semi-sparse semantics.
95
- const AbstractValue& getAbsValue(const ValVar* var, const ICFGNode* node) override;
96
- using SemiSparseAbstractInterpretation::getAbsValue;
97
-
98
- bool hasAbsValue(const ValVar* var, const ICFGNode* node) const override;
99
- using SemiSparseAbstractInterpretation::hasAbsValue;
94
+ protected:
95
+ /// Full-sparse does not merge normal value-flow state along ICFG
96
+ /// edges. The ICFG join carries only side-channel state that is not
97
+ /// represented as MemorySSA def-use flow: GepObjVar field snapshots
98
+ /// and `_freedAddrs`. Base/Dummy ObjVars are populated later by
99
+ /// pullObjValueFlows from SVFG indirect in-edges; ValVars stay at their
100
+ /// def-sites.
101
+ void joinStates(AbstractState& dst, const AbstractState& src) override;
100
102
 
101
- const Set<const ICFGNode*> getUseSitesOfValVar(const ValVar* var) const;
102
- const ICFGNode* getDefSiteOfValVar(const ValVar* var) const;
103
- /// Given an ObjVar and its def-site ICFGNode, find all use-site ICFGNodes
104
- /// by following outgoing IndirectSVFGEdges whose pts contains the ObjVar
105
- const Set<const ICFGNode*> getDefSiteOfObjVar(const ObjVar* obj, const ICFGNode* node) const;
106
- /// Given an ObjVar and its def-site ICFGNode, find all use-site ICFGNodes
107
- /// by following outgoing IndirectSVFGEdges whose pts contains the ObjVar
108
- const Set<const ICFGNode*> getUseSitesOfObjVar(const ObjVar* obj, const ICFGNode* node) const;
103
+ /// After a store overwrites an ObjVar, clear any branch refinement
104
+ /// for that ObjVar at the store's node so stale branch constraints
105
+ /// don't propagate past the redefinition.
106
+ void storeValue(const ValVar* pointer, const AbstractValue& val,
107
+ const ICFGNode* node) override;
108
+
109
+ /// Thin wrapper: defer to base for ICFG-edge bookkeeping
110
+ /// (predecessor iteration, branch feasibility, joinStates,
111
+ /// updateAbsState, reachability return). For reachable nodes,
112
+ /// additionally run pullObjValueFlows to populate trace[node] with obj
113
+ /// values from SVFG def-sites.
114
+ bool mergeStatesFromPredecessors(const ICFGNode* node) override;
115
+
116
+ /// Capture branch narrowings into refinementTrace[succ] instead of
117
+ /// writing them into the local `as`: in FullSparse `as` would be
118
+ /// discarded by joinStates (no-op for ObjVar), so we route the
119
+ /// narrowing to refinementTrace and let propagateAndApplyRefinement
120
+ /// bake it into trace at the end of mergeStatesFromPredecessors.
121
+ void recordBranchRefinement(NodeID objId, const IntervalValue& narrowed,
122
+ AbstractState& as, const ICFGNode* loadIcfg,
123
+ const ICFGNode* succ) override;
124
+
125
+ private:
126
+ /// SVFG-pull helper: walk each VFG node's indirect SVFG in-edges
127
+ /// and pull obj values from upstream def-site traces into
128
+ /// trace[node]. Multiple sources (e.g. mphi operands) JOIN.
129
+ void pullObjValueFlows(const ICFGNode* node);
130
+
131
+ /// Return whether an indirect SVFG edge should be pulled into dst.
132
+ /// Besides branch-feasible ICFG reachability, this rejects paths where
133
+ /// another store to the same points-to object kills the edge's value.
134
+ bool isIndirectSVFGEdgeFeasible(const IndirectSVFGEdge* edge,
135
+ const VFGNode* dst);
136
+
137
+ /// Return whether a branch-feasible ICFG path exists from src to dst.
138
+ /// Conditional edges are checked with a pure branch-feasibility query,
139
+ /// so path probing does not create branch-refinement side effects.
140
+ bool isICFGPathFeasible(const ICFGNode* src, const ICFGNode* dst);
141
+
142
+ /// Return whether this intra edge is allowed by the current branch state.
143
+ bool isIntraEdgeBranchFeasible(const IntraCFGEdge* edge,
144
+ const ICFGNode* src);
145
+
146
+ /// Compose pred-inherited refinement into refinementTrace[node]
147
+ /// (single-pred linear copy / multi-pred intersect-JOIN; any pred
148
+ /// without refinement drops the inheritance), then MEET the final
149
+ /// refinementTrace[node] into trace[node]._addrToAbsVal so the
150
+ /// inherited base getAbsValue(ObjVar*, node) returns the narrowed
151
+ /// value directly — no read-time override or cache. Called once
152
+ /// per merge as the last step.
153
+ void propagateAndApplyRefinement(const ICFGNode* node);
154
+
155
+ /// Path-refined obj values produced by branch narrowing. Each
156
+ /// entry is the *interval constraint* (not effective value) so
157
+ /// base trace can widen/narrow independently. Cached at branch
158
+ /// successors by recordBranchRefinement; propagated and applied by
159
+ /// propagateAndApplyRefinement at the end of
160
+ /// mergeStatesFromPredecessors.
161
+ Map<const ICFGNode*, Map<NodeID, IntervalValue>> refinementTrace;
109
162
 
110
- protected:
111
163
  /// Build the SVFG on top of the semi-sparse precompute.
112
164
  void buildSVFG();
113
165
 
166
+ /// Owns the SVFG (via SVFGBuilder's internal unique_ptr). Without
167
+ /// this, SVFGBuilder would be a local in buildSVFG() and free the
168
+ /// graph at scope exit, leaving `svfg` dangling.
169
+ std::unique_ptr<SVFGBuilder> svfgBuilder;
170
+ /// View pointer into svfgBuilder's graph; non-null after buildSVFG().
114
171
  SVFG* svfg{nullptr};
115
172
  };
116
173
 
@@ -260,7 +260,6 @@ public:
260
260
  {
261
261
  return nullPtrSymID();
262
262
  }
263
-
264
263
  u32_t getValueNodeNum();
265
264
 
266
265
  u32_t getObjectNodeNum();
@@ -243,6 +243,7 @@ protected:
243
243
  //@{
244
244
  virtual const Type *getBaseTypeAndFlattenedFields(const Value *V, std::vector<AccessPath> &fields, const Value* szValue);
245
245
  virtual void addComplexConsForExt(Value *D, Value *S, const Value* sz);
246
+ virtual void handleNondetArgStoreAtExtCall(const CallBase* cs, const CallICFGNode* callICFGNode);
246
247
  virtual void handleExtCall(const CallBase* cs, const Function* callee);
247
248
  //@}
248
249
 
@@ -48,8 +48,10 @@ target triple = "arm64-apple-macosx14.0.0"
48
48
  @.str.13 = private unnamed_addr constant [7 x i8] c"MEMSET\00", section "llvm.metadata"
49
49
  @.str.14 = private unnamed_addr constant [7 x i8] c"STRCPY\00", section "llvm.metadata"
50
50
  @.str.15 = private unnamed_addr constant [7 x i8] c"STRCAT\00", section "llvm.metadata"
51
- @.str.16 = private unnamed_addr constant [10 x i8] c"OVERWRITE\00", section "llvm.metadata"
52
- @llvm.global.annotations = appending global [237 x { ptr, ptr, ptr, i32, ptr }] [{ ptr, ptr, ptr, i32, ptr } { ptr @malloc, ptr @.str, ptr @.str.1, i32 23, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @malloc, ptr @.str.2, ptr @.str.1, i32 23, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen, ptr @.str, ptr @.str.1, i32 29, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen, ptr @.str.3, ptr @.str.1, i32 29, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen64, ptr @.str, ptr @.str.1, i32 35, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen64, ptr @.str.3, ptr @.str.1, i32 35, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fdopen, ptr @.str, ptr @.str.1, i32 41, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fdopen, ptr @.str.3, ptr @.str.1, i32 41, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir64, ptr @.str, ptr @.str.1, i32 47, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir64, ptr @.str.3, ptr @.str.1, i32 47, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid64, ptr @.str, ptr @.str.1, i32 53, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid64, ptr @.str.3, ptr @.str.1, i32 53, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @calloc, ptr @.str, ptr @.str.1, i32 59, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @calloc, ptr @.str.4, ptr @.str.1, i32 59, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @zmalloc, ptr @.str, ptr @.str.1, i32 65, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @zmalloc, ptr @.str.2, ptr @.str.1, i32 65, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzdopen, ptr @.str, ptr @.str.1, i32 71, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzdopen, ptr @.str.3, ptr @.str.1, i32 71, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv_open, ptr @.str, ptr @.str.1, i32 77, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv_open, ptr @.str.3, ptr @.str.1, i32 77, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc, ptr @.str, ptr @.str.1, i32 83, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc, ptr @.str.2, ptr @.str.1, i32 83, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc_clear, ptr @.str, ptr @.str.1, i32 89, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc_clear, ptr @.str.2, ptr @.str.1, i32 89, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nhalloc, ptr @.str, ptr @.str.1, i32 95, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nhalloc, ptr @.str.3, ptr @.str.1, i32 95, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @oballoc, ptr @.str, ptr @.str.1, i32 101, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @oballoc, ptr @.str.2, ptr @.str.1, i32 101, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @popen, ptr @.str, ptr @.str.1, i32 107, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @popen, ptr @.str.3, ptr @.str.1, i32 107, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pthread_getspecific, ptr @.str, ptr @.str.1, i32 113, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pthread_getspecific, ptr @.str.3, ptr @.str.1, i32 113, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir, ptr @.str, ptr @.str.1, i32 119, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir, ptr @.str.3, ptr @.str.1, i32 119, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_calloc, ptr @.str, ptr @.str.1, i32 125, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_calloc, ptr @.str.4, ptr @.str.1, i32 125, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_malloc, ptr @.str, ptr @.str.1, i32 131, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_malloc, ptr @.str.2, ptr @.str.1, i32 131, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safecalloc, ptr @.str, ptr @.str.1, i32 137, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safecalloc, ptr @.str.4, ptr @.str.1, i32 137, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safemalloc, ptr @.str, ptr @.str.1, i32 143, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safemalloc, ptr @.str.2, ptr @.str.1, i32 143, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @setmntent, ptr @.str, ptr @.str.1, i32 149, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @setmntent, ptr @.str.3, ptr @.str.1, i32 149, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @shmat, ptr @.str, ptr @.str.1, i32 155, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @shmat, ptr @.str.3, ptr @.str.1, i32 155, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__sysv_signal, ptr @.str, ptr @.str.1, i32 161, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__sysv_signal, ptr @.str.3, ptr @.str.1, i32 161, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @signal, ptr @.str, ptr @.str.1, i32 167, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @signal, ptr @.str.3, ptr @.str.1, i32 167, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tempnam, ptr @.str, ptr @.str.1, i32 173, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tempnam, ptr @.str.3, ptr @.str.1, i32 173, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid, ptr @.str, ptr @.str.1, i32 179, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid, ptr @.str.3, ptr @.str.1, i32 179, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xcalloc, ptr @.str, ptr @.str.1, i32 185, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xcalloc, ptr @.str.3, ptr @.str.1, i32 185, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xmalloc, ptr @.str, ptr @.str.1, i32 191, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xmalloc, ptr @.str.2, ptr @.str.1, i32 191, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__cxa_allocate_exception, ptr @.str, ptr @.str.1, i32 197, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__cxa_allocate_exception, ptr @.str.2, ptr @.str.1, i32 197, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @aligned_alloc, ptr @.str, ptr @.str.1, i32 203, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @aligned_alloc, ptr @.str.5, ptr @.str.1, i32 203, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memalign, ptr @.str, ptr @.str.1, i32 209, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memalign, ptr @.str.5, ptr @.str.1, i32 209, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @valloc, ptr @.str, ptr @.str.1, i32 215, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @valloc, ptr @.str.2, ptr @.str.1, i32 215, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pvalloc, ptr @.str, ptr @.str.1, i32 221, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pvalloc, ptr @.str.2, ptr @.str.1, i32 221, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap64, ptr @.str, ptr @.str.1, i32 227, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap64, ptr @.str.5, ptr @.str.1, i32 227, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XSetLocaleModifiers, ptr @.str, ptr @.str.1, i32 233, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XSetLocaleModifiers, ptr @.str.3, ptr @.str.1, i32 233, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strdup, ptr @.str, ptr @.str.1, i32 239, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strdup, ptr @.str.3, ptr @.str.1, i32 239, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @crypt, ptr @.str, ptr @.str.1, i32 245, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @crypt, ptr @.str.3, ptr @.str.1, i32 245, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlerror, ptr @.str, ptr @.str.1, i32 251, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlerror, ptr @.str.3, ptr @.str.1, i32 251, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlopen, ptr @.str, ptr @.str.1, i32 257, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlopen, ptr @.str.3, ptr @.str.1, i32 257, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gai_strerror, ptr @.str, ptr @.str.1, i32 263, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gai_strerror, ptr @.str.3, ptr @.str.1, i32 263, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gcry_cipher_algo_name, ptr @.str, ptr @.str.1, i32 269, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gcry_cipher_algo_name, ptr @.str.3, ptr @.str.1, i32 269, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @svfgcry_md_algo_name_, ptr @.str, ptr @.str.1, i32 275, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @svfgcry_md_algo_name_, ptr @.str.3, ptr @.str.1, i32 275, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getlogin, ptr @.str, ptr @.str.1, i32 281, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getlogin, ptr @.str.3, ptr @.str.1, i32 281, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getpass, ptr @.str, ptr @.str.1, i32 287, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getpass, ptr @.str.3, ptr @.str.1, i32 287, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_strerror, ptr @.str, ptr @.str.1, i32 293, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_strerror, ptr @.str.3, ptr @.str.1, i32 293, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gpg_strerror, ptr @.str, ptr @.str.1, i32 299, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gpg_strerror, ptr @.str.3, ptr @.str.1, i32 299, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzerror, ptr @.str, ptr @.str.1, i32 305, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzerror, ptr @.str.3, ptr @.str.1, i32 305, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @inet_ntoa, ptr @.str, ptr @.str.1, i32 311, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @inet_ntoa, ptr @.str.3, ptr @.str.1, i32 311, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @initscr, ptr @.str, ptr @.str.1, i32 317, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @initscr, ptr @.str.3, ptr @.str.1, i32 317, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_stacksave, ptr @.str, ptr @.str.1, i32 323, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_stacksave, ptr @.str.3, ptr @.str.1, i32 323, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap, ptr @.str, ptr @.str.1, i32 329, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap, ptr @.str.5, ptr @.str.1, i32 329, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @newwin, ptr @.str, ptr @.str.1, i32 335, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @newwin, ptr @.str.3, ptr @.str.1, i32 335, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nl_langinfo, ptr @.str, ptr @.str.1, i32 341, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nl_langinfo, ptr @.str.3, ptr @.str.1, i32 341, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @opendir, ptr @.str, ptr @.str.1, i32 347, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @opendir, ptr @.str.3, ptr @.str.1, i32 347, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @sbrk, ptr @.str, ptr @.str.1, i32 353, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @sbrk, ptr @.str.3, ptr @.str.1, i32 353, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strdup, ptr @.str, ptr @.str.1, i32 359, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strdup, ptr @.str.3, ptr @.str.1, i32 359, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strndup, ptr @.str, ptr @.str.1, i32 365, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strndup, ptr @.str.3, ptr @.str.1, i32 365, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strerror, ptr @.str, ptr @.str.1, i32 371, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strerror, ptr @.str.3, ptr @.str.1, i32 371, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strsignal, ptr @.str, ptr @.str.1, i32 377, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strsignal, ptr @.str.3, ptr @.str.1, i32 377, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @textdomain, ptr @.str, ptr @.str.1, i32 383, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @textdomain, ptr @.str.3, ptr @.str.1, i32 383, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tgetstr, ptr @.str, ptr @.str.1, i32 389, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tgetstr, ptr @.str.3, ptr @.str.1, i32 389, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tigetstr, ptr @.str, ptr @.str.1, i32 395, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tigetstr, ptr @.str.3, ptr @.str.1, i32 395, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpnam, ptr @.str, ptr @.str.1, i32 401, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpnam, ptr @.str.3, ptr @.str.1, i32 401, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @ttyname, ptr @.str, ptr @.str.1, i32 407, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @ttyname, ptr @.str.3, ptr @.str.1, i32 407, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getcwd, ptr @.str.6, ptr @.str.1, i32 413, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getcwd, ptr @.str.3, ptr @.str.1, i32 413, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mem_realloc, ptr @.str.6, ptr @.str.1, i32 419, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mem_realloc, ptr @.str.5, ptr @.str.1, i32 419, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @realloc, ptr @.str.6, ptr @.str.1, i32 425, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @realloc, ptr @.str.5, ptr @.str.1, i32 425, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @reallocarray, ptr @.str.6, ptr @.str.1, i32 431, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @reallocarray, ptr @.str.7, ptr @.str.1, i32 431, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_realloc, ptr @.str.6, ptr @.str.1, i32 437, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_realloc, ptr @.str.5, ptr @.str.1, i32 437, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @saferealloc, ptr @.str.6, ptr @.str.1, i32 443, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @saferealloc, ptr @.str.7, ptr @.str.1, i32 443, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safexrealloc, ptr @.str.6, ptr @.str.1, i32 449, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safexrealloc, ptr @.str.3, ptr @.str.1, i32 449, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xrealloc, ptr @.str.6, ptr @.str.1, i32 471, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xrealloc, ptr @.str.5, ptr @.str.1, i32 471, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwj, ptr @.str, ptr @.str.1, i32 478, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwj, ptr @.str.2, ptr @.str.1, i32 478, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 485, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 485, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_t, ptr @.str, ptr @.str.1, i32 492, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 492, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 499, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 499, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znaj, ptr @.str, ptr @.str.1, i32 506, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znaj, ptr @.str.2, ptr @.str.1, i32 506, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 513, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 513, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_t, ptr @.str, ptr @.str.1, i32 520, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 520, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 527, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 527, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwm, ptr @.str, ptr @.str.1, i32 534, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwm, ptr @.str.2, ptr @.str.1, i32 534, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 541, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 541, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_t, ptr @.str, ptr @.str.1, i32 548, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 548, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 555, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 555, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znam, ptr @.str, ptr @.str.1, i32 562, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znam, ptr @.str.2, ptr @.str.1, i32 562, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 569, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 569, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_t, ptr @.str, ptr @.str.1, i32 576, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 576, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 583, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 583, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @asprintf, ptr @.str.8, ptr @.str.1, i32 589, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @asprintf, ptr @.str.3, ptr @.str.1, i32 589, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @vasprintf, ptr @.str.8, ptr @.str.1, i32 595, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @vasprintf, ptr @.str.3, ptr @.str.1, i32 595, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @db_create, ptr @.str.8, ptr @.str.1, i32 601, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @db_create, ptr @.str.3, ptr @.str.1, i32 601, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_bag_init, ptr @.str.8, ptr @.str.1, i32 607, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_bag_init, ptr @.str.3, ptr @.str.1, i32 607, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_init, ptr @.str.8, ptr @.str.1, i32 613, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_init, ptr @.str.3, ptr @.str.1, i32 613, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_crt_init, ptr @.str.8, ptr @.str.1, i32 619, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_crt_init, ptr @.str.3, ptr @.str.1, i32 619, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_privkey_init, ptr @.str.8, ptr @.str.1, i32 625, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_privkey_init, ptr @.str.3, ptr @.str.1, i32 625, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @posix_memalign, ptr @.str.8, ptr @.str.1, i32 631, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @posix_memalign, ptr @.str.9, ptr @.str.1, i32 631, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @scandir, ptr @.str.10, ptr @.str.1, i32 637, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @scandir, ptr @.str.3, ptr @.str.1, i32 637, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XmbTextPropertyToTextList, ptr @.str.11, ptr @.str.1, i32 643, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XmbTextPropertyToTextList, ptr @.str.3, ptr @.str.1, i32 643, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0i8_p0i8_i64, ptr @.str.12, ptr @.str.1, i32 649, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0_p0_i64, ptr @.str.12, ptr @.str.1, i32 652, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0i8_p0i8_i32, ptr @.str.12, ptr @.str.1, i32 655, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0_p0_i32, ptr @.str.12, ptr @.str.1, i32 658, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy, ptr @.str.12, ptr @.str.1, i32 661, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove, ptr @.str.12, ptr @.str.1, i32 664, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0i8_p0i8_i64, ptr @.str.12, ptr @.str.1, i32 667, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0_p0_i64, ptr @.str.12, ptr @.str.1, i32 670, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0i8_p0i8_i32, ptr @.str.12, ptr @.str.1, i32 673, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0_p0_i32, ptr @.str.12, ptr @.str.1, i32 676, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memcpy_chk, ptr @.str.12, ptr @.str.1, i32 679, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memmove, ptr @.str.12, ptr @.str.1, i32 682, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @bcopy, ptr @.str.12, ptr @.str.1, i32 688, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memccpy, ptr @.str.12, ptr @.str.1, i32 691, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memmove_chk, ptr @.str.12, ptr @.str.1, i32 697, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset, ptr @.str.13, ptr @.str.1, i32 700, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0i8_i32, ptr @.str.13, ptr @.str.1, i32 703, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0_i32, ptr @.str.13, ptr @.str.1, i32 706, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0i8_i64, ptr @.str.13, ptr @.str.1, i32 709, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0_i64, ptr @.str.13, ptr @.str.1, i32 712, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memset_chk, ptr @.str.13, ptr @.str.1, i32 715, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wmemset, ptr @.str.13, ptr @.str.1, i32 721, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strcpy_chk, ptr @.str.14, ptr @.str.1, i32 727, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strcat_chk, ptr @.str.15, ptr @.str.1, i32 733, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__wcscat_chk, ptr @.str.15, ptr @.str.1, i32 739, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @stpcpy, ptr @.str.14, ptr @.str.1, i32 745, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strcat, ptr @.str.15, ptr @.str.1, i32 751, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcscat, ptr @.str.15, ptr @.str.1, i32 757, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strcpy, ptr @.str.14, ptr @.str.1, i32 764, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strncat, ptr @.str.15, ptr @.str.1, i32 770, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcsncat, ptr @.str.15, ptr @.str.1, i32 776, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strncat_chk, ptr @.str.15, ptr @.str.1, i32 781, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__wcsncat_chk, ptr @.str.15, ptr @.str.1, i32 787, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strncpy, ptr @.str.12, ptr @.str.1, i32 792, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcscpy, ptr @.str.14, ptr @.str.1, i32 798, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv, ptr @.str.12, ptr @.str.1, i32 803, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZNSt5arrayIPK1ALm2EE4backEv, ptr @.str.16, ptr @.str.1, i32 809, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @SyGetmem, ptr @.str, ptr @.str.1, i32 817, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @SyGetmem, ptr @.str.2, ptr @.str.1, i32 817, ptr null }], section "llvm.metadata"
51
+ @.str.16 = private unnamed_addr constant [16 x i8] c"STORE_TOP:Arg1+\00", section "llvm.metadata"
52
+ @.str.17 = private unnamed_addr constant [16 x i8] c"STORE_TOP:Arg2+\00", section "llvm.metadata"
53
+ @.str.18 = private unnamed_addr constant [10 x i8] c"OVERWRITE\00", section "llvm.metadata"
54
+ @llvm.global.annotations = appending global [243 x { ptr, ptr, ptr, i32, ptr }] [{ ptr, ptr, ptr, i32, ptr } { ptr @malloc, ptr @.str, ptr @.str.1, i32 24, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @malloc, ptr @.str.2, ptr @.str.1, i32 24, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen, ptr @.str, ptr @.str.1, i32 30, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen, ptr @.str.3, ptr @.str.1, i32 30, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen64, ptr @.str, ptr @.str.1, i32 36, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fopen64, ptr @.str.3, ptr @.str.1, i32 36, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fdopen, ptr @.str, ptr @.str.1, i32 42, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fdopen, ptr @.str.3, ptr @.str.1, i32 42, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir64, ptr @.str, ptr @.str.1, i32 48, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir64, ptr @.str.3, ptr @.str.1, i32 48, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid64, ptr @.str, ptr @.str.1, i32 54, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid64, ptr @.str.3, ptr @.str.1, i32 54, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @calloc, ptr @.str, ptr @.str.1, i32 60, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @calloc, ptr @.str.4, ptr @.str.1, i32 60, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @zmalloc, ptr @.str, ptr @.str.1, i32 66, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @zmalloc, ptr @.str.2, ptr @.str.1, i32 66, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzdopen, ptr @.str, ptr @.str.1, i32 72, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzdopen, ptr @.str.3, ptr @.str.1, i32 72, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv_open, ptr @.str, ptr @.str.1, i32 78, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv_open, ptr @.str.3, ptr @.str.1, i32 78, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc, ptr @.str, ptr @.str.1, i32 84, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc, ptr @.str.2, ptr @.str.1, i32 84, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc_clear, ptr @.str, ptr @.str.1, i32 90, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @lalloc_clear, ptr @.str.2, ptr @.str.1, i32 90, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nhalloc, ptr @.str, ptr @.str.1, i32 96, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nhalloc, ptr @.str.3, ptr @.str.1, i32 96, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @oballoc, ptr @.str, ptr @.str.1, i32 102, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @oballoc, ptr @.str.2, ptr @.str.1, i32 102, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @popen, ptr @.str, ptr @.str.1, i32 108, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @popen, ptr @.str.3, ptr @.str.1, i32 108, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pthread_getspecific, ptr @.str, ptr @.str.1, i32 114, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pthread_getspecific, ptr @.str.3, ptr @.str.1, i32 114, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir, ptr @.str, ptr @.str.1, i32 120, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @readdir, ptr @.str.3, ptr @.str.1, i32 120, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_calloc, ptr @.str, ptr @.str.1, i32 126, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_calloc, ptr @.str.4, ptr @.str.1, i32 126, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_malloc, ptr @.str, ptr @.str.1, i32 132, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_malloc, ptr @.str.2, ptr @.str.1, i32 132, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safecalloc, ptr @.str, ptr @.str.1, i32 138, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safecalloc, ptr @.str.4, ptr @.str.1, i32 138, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safemalloc, ptr @.str, ptr @.str.1, i32 144, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safemalloc, ptr @.str.2, ptr @.str.1, i32 144, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @setmntent, ptr @.str, ptr @.str.1, i32 150, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @setmntent, ptr @.str.3, ptr @.str.1, i32 150, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @shmat, ptr @.str, ptr @.str.1, i32 156, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @shmat, ptr @.str.3, ptr @.str.1, i32 156, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__sysv_signal, ptr @.str, ptr @.str.1, i32 162, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__sysv_signal, ptr @.str.3, ptr @.str.1, i32 162, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @signal, ptr @.str, ptr @.str.1, i32 168, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @signal, ptr @.str.3, ptr @.str.1, i32 168, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tempnam, ptr @.str, ptr @.str.1, i32 174, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tempnam, ptr @.str.3, ptr @.str.1, i32 174, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid, ptr @.str, ptr @.str.1, i32 180, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpvoid, ptr @.str.3, ptr @.str.1, i32 180, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xcalloc, ptr @.str, ptr @.str.1, i32 186, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xcalloc, ptr @.str.3, ptr @.str.1, i32 186, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xmalloc, ptr @.str, ptr @.str.1, i32 192, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xmalloc, ptr @.str.2, ptr @.str.1, i32 192, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__cxa_allocate_exception, ptr @.str, ptr @.str.1, i32 198, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__cxa_allocate_exception, ptr @.str.2, ptr @.str.1, i32 198, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @aligned_alloc, ptr @.str, ptr @.str.1, i32 204, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @aligned_alloc, ptr @.str.5, ptr @.str.1, i32 204, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memalign, ptr @.str, ptr @.str.1, i32 210, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memalign, ptr @.str.5, ptr @.str.1, i32 210, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @valloc, ptr @.str, ptr @.str.1, i32 216, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @valloc, ptr @.str.2, ptr @.str.1, i32 216, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pvalloc, ptr @.str, ptr @.str.1, i32 222, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @pvalloc, ptr @.str.2, ptr @.str.1, i32 222, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap64, ptr @.str, ptr @.str.1, i32 228, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap64, ptr @.str.5, ptr @.str.1, i32 228, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XSetLocaleModifiers, ptr @.str, ptr @.str.1, i32 234, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XSetLocaleModifiers, ptr @.str.3, ptr @.str.1, i32 234, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strdup, ptr @.str, ptr @.str.1, i32 240, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strdup, ptr @.str.3, ptr @.str.1, i32 240, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @crypt, ptr @.str, ptr @.str.1, i32 246, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @crypt, ptr @.str.3, ptr @.str.1, i32 246, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlerror, ptr @.str, ptr @.str.1, i32 252, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlerror, ptr @.str.3, ptr @.str.1, i32 252, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlopen, ptr @.str, ptr @.str.1, i32 258, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @dlopen, ptr @.str.3, ptr @.str.1, i32 258, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gai_strerror, ptr @.str, ptr @.str.1, i32 264, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gai_strerror, ptr @.str.3, ptr @.str.1, i32 264, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gcry_cipher_algo_name, ptr @.str, ptr @.str.1, i32 270, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gcry_cipher_algo_name, ptr @.str.3, ptr @.str.1, i32 270, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @svfgcry_md_algo_name_, ptr @.str, ptr @.str.1, i32 276, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @svfgcry_md_algo_name_, ptr @.str.3, ptr @.str.1, i32 276, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getlogin, ptr @.str, ptr @.str.1, i32 282, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getlogin, ptr @.str.3, ptr @.str.1, i32 282, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getpass, ptr @.str, ptr @.str.1, i32 288, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getpass, ptr @.str.3, ptr @.str.1, i32 288, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_strerror, ptr @.str, ptr @.str.1, i32 294, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_strerror, ptr @.str.3, ptr @.str.1, i32 294, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gpg_strerror, ptr @.str, ptr @.str.1, i32 300, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gpg_strerror, ptr @.str.3, ptr @.str.1, i32 300, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzerror, ptr @.str, ptr @.str.1, i32 306, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gzerror, ptr @.str.3, ptr @.str.1, i32 306, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @inet_ntoa, ptr @.str, ptr @.str.1, i32 312, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @inet_ntoa, ptr @.str.3, ptr @.str.1, i32 312, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @initscr, ptr @.str, ptr @.str.1, i32 318, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @initscr, ptr @.str.3, ptr @.str.1, i32 318, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_stacksave, ptr @.str, ptr @.str.1, i32 324, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_stacksave, ptr @.str.3, ptr @.str.1, i32 324, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap, ptr @.str, ptr @.str.1, i32 330, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mmap, ptr @.str.5, ptr @.str.1, i32 330, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @newwin, ptr @.str, ptr @.str.1, i32 336, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @newwin, ptr @.str.3, ptr @.str.1, i32 336, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nl_langinfo, ptr @.str, ptr @.str.1, i32 342, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @nl_langinfo, ptr @.str.3, ptr @.str.1, i32 342, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @opendir, ptr @.str, ptr @.str.1, i32 348, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @opendir, ptr @.str.3, ptr @.str.1, i32 348, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @sbrk, ptr @.str, ptr @.str.1, i32 354, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @sbrk, ptr @.str.3, ptr @.str.1, i32 354, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strdup, ptr @.str, ptr @.str.1, i32 360, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strdup, ptr @.str.3, ptr @.str.1, i32 360, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strndup, ptr @.str, ptr @.str.1, i32 366, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strndup, ptr @.str.3, ptr @.str.1, i32 366, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strerror, ptr @.str, ptr @.str.1, i32 372, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strerror, ptr @.str.3, ptr @.str.1, i32 372, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strsignal, ptr @.str, ptr @.str.1, i32 378, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strsignal, ptr @.str.3, ptr @.str.1, i32 378, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @textdomain, ptr @.str, ptr @.str.1, i32 384, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @textdomain, ptr @.str.3, ptr @.str.1, i32 384, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tgetstr, ptr @.str, ptr @.str.1, i32 390, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tgetstr, ptr @.str.3, ptr @.str.1, i32 390, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tigetstr, ptr @.str, ptr @.str.1, i32 396, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tigetstr, ptr @.str.3, ptr @.str.1, i32 396, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpnam, ptr @.str, ptr @.str.1, i32 402, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @tmpnam, ptr @.str.3, ptr @.str.1, i32 402, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @ttyname, ptr @.str, ptr @.str.1, i32 408, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @ttyname, ptr @.str.3, ptr @.str.1, i32 408, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getcwd, ptr @.str.6, ptr @.str.1, i32 414, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @getcwd, ptr @.str.3, ptr @.str.1, i32 414, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mem_realloc, ptr @.str.6, ptr @.str.1, i32 420, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @mem_realloc, ptr @.str.5, ptr @.str.1, i32 420, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @realloc, ptr @.str.6, ptr @.str.1, i32 426, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @realloc, ptr @.str.5, ptr @.str.1, i32 426, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @reallocarray, ptr @.str.6, ptr @.str.1, i32 432, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @reallocarray, ptr @.str.7, ptr @.str.1, i32 432, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_realloc, ptr @.str.6, ptr @.str.1, i32 438, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safe_realloc, ptr @.str.5, ptr @.str.1, i32 438, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @saferealloc, ptr @.str.6, ptr @.str.1, i32 444, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @saferealloc, ptr @.str.7, ptr @.str.1, i32 444, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safexrealloc, ptr @.str.6, ptr @.str.1, i32 450, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @safexrealloc, ptr @.str.3, ptr @.str.1, i32 450, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xrealloc, ptr @.str.6, ptr @.str.1, i32 472, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @xrealloc, ptr @.str.5, ptr @.str.1, i32 472, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwj, ptr @.str, ptr @.str.1, i32 479, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwj, ptr @.str.2, ptr @.str.1, i32 479, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 486, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 486, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_t, ptr @.str, ptr @.str.1, i32 493, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 493, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 500, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwjSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 500, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znaj, ptr @.str, ptr @.str.1, i32 507, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znaj, ptr @.str.2, ptr @.str.1, i32 507, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 514, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 514, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_t, ptr @.str, ptr @.str.1, i32 521, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 521, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 528, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnajSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 528, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwm, ptr @.str, ptr @.str.1, i32 535, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znwm, ptr @.str.2, ptr @.str.1, i32 535, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 542, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 542, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_t, ptr @.str, ptr @.str.1, i32 549, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 549, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 556, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnwmSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 556, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znam, ptr @.str, ptr @.str.1, i32 563, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_Znam, ptr @.str.2, ptr @.str.1, i32 563, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 570, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 570, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_t, ptr @.str, ptr @.str.1, i32 577, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_t, ptr @.str.2, ptr @.str.1, i32 577, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_tRKSt9nothrow_t, ptr @.str, ptr @.str.1, i32 584, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZnamSt11align_val_tRKSt9nothrow_t, ptr @.str.2, ptr @.str.1, i32 584, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @asprintf, ptr @.str.8, ptr @.str.1, i32 590, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @asprintf, ptr @.str.3, ptr @.str.1, i32 590, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @vasprintf, ptr @.str.8, ptr @.str.1, i32 596, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @vasprintf, ptr @.str.3, ptr @.str.1, i32 596, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @db_create, ptr @.str.8, ptr @.str.1, i32 602, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @db_create, ptr @.str.3, ptr @.str.1, i32 602, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_bag_init, ptr @.str.8, ptr @.str.1, i32 608, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_bag_init, ptr @.str.3, ptr @.str.1, i32 608, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_init, ptr @.str.8, ptr @.str.1, i32 614, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_pkcs12_init, ptr @.str.3, ptr @.str.1, i32 614, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_crt_init, ptr @.str.8, ptr @.str.1, i32 620, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_crt_init, ptr @.str.3, ptr @.str.1, i32 620, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_privkey_init, ptr @.str.8, ptr @.str.1, i32 626, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @gnutls_x509_privkey_init, ptr @.str.3, ptr @.str.1, i32 626, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @posix_memalign, ptr @.str.8, ptr @.str.1, i32 632, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @posix_memalign, ptr @.str.9, ptr @.str.1, i32 632, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @scandir, ptr @.str.10, ptr @.str.1, i32 638, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @scandir, ptr @.str.3, ptr @.str.1, i32 638, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XmbTextPropertyToTextList, ptr @.str.11, ptr @.str.1, i32 644, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @XmbTextPropertyToTextList, ptr @.str.3, ptr @.str.1, i32 644, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0i8_p0i8_i64, ptr @.str.12, ptr @.str.1, i32 650, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0_p0_i64, ptr @.str.12, ptr @.str.1, i32 653, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0i8_p0i8_i32, ptr @.str.12, ptr @.str.1, i32 656, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy_p0_p0_i32, ptr @.str.12, ptr @.str.1, i32 659, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memcpy, ptr @.str.12, ptr @.str.1, i32 662, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove, ptr @.str.12, ptr @.str.1, i32 665, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0i8_p0i8_i64, ptr @.str.12, ptr @.str.1, i32 668, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0_p0_i64, ptr @.str.12, ptr @.str.1, i32 671, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0i8_p0i8_i32, ptr @.str.12, ptr @.str.1, i32 674, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memmove_p0_p0_i32, ptr @.str.12, ptr @.str.1, i32 677, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memcpy_chk, ptr @.str.12, ptr @.str.1, i32 680, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memmove, ptr @.str.12, ptr @.str.1, i32 683, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @bcopy, ptr @.str.12, ptr @.str.1, i32 689, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @memccpy, ptr @.str.12, ptr @.str.1, i32 692, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memmove_chk, ptr @.str.12, ptr @.str.1, i32 698, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset, ptr @.str.13, ptr @.str.1, i32 701, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0i8_i32, ptr @.str.13, ptr @.str.1, i32 704, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0_i32, ptr @.str.13, ptr @.str.1, i32 707, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0i8_i64, ptr @.str.13, ptr @.str.1, i32 710, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @llvm_memset_p0_i64, ptr @.str.13, ptr @.str.1, i32 713, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__memset_chk, ptr @.str.13, ptr @.str.1, i32 716, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wmemset, ptr @.str.13, ptr @.str.1, i32 722, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strcpy_chk, ptr @.str.14, ptr @.str.1, i32 728, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strcat_chk, ptr @.str.15, ptr @.str.1, i32 734, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__wcscat_chk, ptr @.str.15, ptr @.str.1, i32 740, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @stpcpy, ptr @.str.14, ptr @.str.1, i32 746, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strcat, ptr @.str.15, ptr @.str.1, i32 752, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcscat, ptr @.str.15, ptr @.str.1, i32 758, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strcpy, ptr @.str.14, ptr @.str.1, i32 765, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strncat, ptr @.str.15, ptr @.str.1, i32 771, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcsncat, ptr @.str.15, ptr @.str.1, i32 777, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__strncat_chk, ptr @.str.15, ptr @.str.1, i32 782, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__wcsncat_chk, ptr @.str.15, ptr @.str.1, i32 788, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @strncpy, ptr @.str.12, ptr @.str.1, i32 793, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @wcscpy, ptr @.str.14, ptr @.str.1, i32 799, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @iconv, ptr @.str.12, ptr @.str.1, i32 804, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @scanf, ptr @.str.16, ptr @.str.1, i32 810, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__isoc99_scanf, ptr @.str.16, ptr @.str.1, i32 816, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @fscanf, ptr @.str.17, ptr @.str.1, i32 822, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__isoc99_fscanf, ptr @.str.17, ptr @.str.1, i32 828, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @sscanf, ptr @.str.17, ptr @.str.1, i32 834, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @__isoc99_sscanf, ptr @.str.17, ptr @.str.1, i32 840, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @_ZNSt5arrayIPK1ALm2EE4backEv, ptr @.str.18, ptr @.str.1, i32 846, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @SyGetmem, ptr @.str, ptr @.str.1, i32 854, ptr null }, { ptr, ptr, ptr, i32, ptr } { ptr @SyGetmem, ptr @.str.2, ptr @.str.1, i32 854, ptr null }], section "llvm.metadata"
53
55
 
54
56
  ; Function Attrs: noinline nounwind optnone ssp allocsize(0) uwtable(sync)
55
57
  define ptr @malloc(i64 noundef %0) #0 {
@@ -1349,6 +1351,56 @@ define i64 @iconv(ptr noundef %0, ptr noalias noundef %1, ptr noalias noundef %2
1349
1351
  ret i64 0
1350
1352
  }
1351
1353
 
1354
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1355
+ define i32 @scanf(ptr noundef %0, ...) #1 {
1356
+ %2 = alloca ptr, align 8
1357
+ store ptr %0, ptr %2, align 8
1358
+ ret i32 0
1359
+ }
1360
+
1361
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1362
+ define i32 @__isoc99_scanf(ptr noundef %0, ...) #1 {
1363
+ %2 = alloca ptr, align 8
1364
+ store ptr %0, ptr %2, align 8
1365
+ ret i32 0
1366
+ }
1367
+
1368
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1369
+ define i32 @fscanf(ptr noundef %0, ptr noundef %1, ...) #1 {
1370
+ %3 = alloca ptr, align 8
1371
+ %4 = alloca ptr, align 8
1372
+ store ptr %0, ptr %3, align 8
1373
+ store ptr %1, ptr %4, align 8
1374
+ ret i32 0
1375
+ }
1376
+
1377
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1378
+ define i32 @__isoc99_fscanf(ptr noundef %0, ptr noundef %1, ...) #1 {
1379
+ %3 = alloca ptr, align 8
1380
+ %4 = alloca ptr, align 8
1381
+ store ptr %0, ptr %3, align 8
1382
+ store ptr %1, ptr %4, align 8
1383
+ ret i32 0
1384
+ }
1385
+
1386
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1387
+ define i32 @sscanf(ptr noundef %0, ptr noundef %1, ...) #1 {
1388
+ %3 = alloca ptr, align 8
1389
+ %4 = alloca ptr, align 8
1390
+ store ptr %0, ptr %3, align 8
1391
+ store ptr %1, ptr %4, align 8
1392
+ ret i32 0
1393
+ }
1394
+
1395
+ ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1396
+ define i32 @__isoc99_sscanf(ptr noundef %0, ptr noundef %1, ...) #1 {
1397
+ %3 = alloca ptr, align 8
1398
+ %4 = alloca ptr, align 8
1399
+ store ptr %0, ptr %3, align 8
1400
+ store ptr %1, ptr %4, align 8
1401
+ ret i32 0
1402
+ }
1403
+
1352
1404
  ; Function Attrs: noinline nounwind optnone ssp uwtable(sync)
1353
1405
  define ptr @_ZNSt5arrayIPK1ALm2EE4backEv(ptr noundef %0) #1 {
1354
1406
  %2 = alloca ptr, align 8
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-lib",
3
- "version": "1.0.2572",
3
+ "version": "1.0.2574",
4
4
  "description": "SVF's npm support",
5
5
  "main": "index.js",
6
6
  "scripts": {