Keep only captured symbols in CodeBlock symbol tables.
[WebKit-https.git] / Source / JavaScriptCore / bytecompiler / StaticPropertyAnalyzer.h
index 5afe035371d8ffd92179c33febae633925c8f7b3..e63fef86a107c8e4808fbb0000fd3ed57a838a8e 100644 (file)
@@ -36,7 +36,7 @@ namespace JSC {
 // is understood to be lossy, and it's OK if it turns out to be wrong sometimes.
 class StaticPropertyAnalyzer {
 public:
-    StaticPropertyAnalyzer(Vector<UnlinkedInstruction>*);
+    StaticPropertyAnalyzer(Vector<UnlinkedInstruction, 0, UnsafeVectorOverflow>*);
 
     void createThis(int dst, unsigned offsetOfInlineCapacityOperand);
     void newObject(int dst, unsigned offsetOfInlineCapacityOperand);
@@ -49,12 +49,12 @@ public:
 private:
     void kill(StaticPropertyAnalysis*);
 
-    Vector<UnlinkedInstruction>* m_instructions;
-    typedef HashMap<int, RefPtr<StaticPropertyAnalysis>, WTF::IntHash<int>, WTF::UnsignedWithZeroKeyHashTraits<int> > AnalysisMap;
+    Vector<UnlinkedInstruction, 0, UnsafeVectorOverflow>* m_instructions;
+    typedef HashMap<int, RefPtr<StaticPropertyAnalysis>, WTF::IntHash<int>, WTF::UnsignedWithZeroKeyHashTraits<int>> AnalysisMap;
     AnalysisMap m_analyses;
 };
 
-inline StaticPropertyAnalyzer::StaticPropertyAnalyzer(Vector<UnlinkedInstruction>* instructions)
+inline StaticPropertyAnalyzer::StaticPropertyAnalyzer(Vector<UnlinkedInstruction, 0, UnsafeVectorOverflow>* instructions)
     : m_instructions(instructions)
 {
 }
@@ -78,7 +78,7 @@ inline void StaticPropertyAnalyzer::newObject(int dst, unsigned offsetOfInlineCa
 
 inline void StaticPropertyAnalyzer::putById(int dst, unsigned propertyIndex)
 {
-    StaticPropertyAnalysis* analysis = m_analyses.get(dst).get();
+    StaticPropertyAnalysis* analysis = m_analyses.get(dst);
     if (!analysis)
         return;
     analysis->addPropertyIndex(propertyIndex);