]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - dfg/DFGVariableAccessData.cpp
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / dfg / DFGVariableAccessData.cpp
index 82784c8704174b9689f026fed7561693293cf09e..bd1ba87eeb2e526d8b4c05eb736d3efeaed2be85 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
+ * Copyright (C) 2014, 2015 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -35,9 +35,7 @@ VariableAccessData::VariableAccessData()
     , m_prediction(SpecNone)
     , m_argumentAwarePrediction(SpecNone)
     , m_flags(0)
-    , m_isCaptured(false)
     , m_shouldNeverUnbox(false)
-    , m_isArgumentsAlias(false)
     , m_structureCheckHoistingFailed(false)
     , m_checkArrayHoistingFailed(false)
     , m_isProfitableToUnbox(false)
@@ -47,14 +45,12 @@ VariableAccessData::VariableAccessData()
     clearVotes();
 }
 
-VariableAccessData::VariableAccessData(VirtualRegister local, bool isCaptured)
+VariableAccessData::VariableAccessData(VirtualRegister local)
     : m_local(local)
     , m_prediction(SpecNone)
     , m_argumentAwarePrediction(SpecNone)
     , m_flags(0)
-    , m_isCaptured(isCaptured)
-    , m_shouldNeverUnbox(isCaptured)
-    , m_isArgumentsAlias(false)
+    , m_shouldNeverUnbox(false)
     , m_structureCheckHoistingFailed(false)
     , m_checkArrayHoistingFailed(false)
     , m_isProfitableToUnbox(false)
@@ -64,12 +60,6 @@ VariableAccessData::VariableAccessData(VirtualRegister local, bool isCaptured)
     clearVotes();
 }
 
-bool VariableAccessData::mergeIsCaptured(bool isCaptured)
-{
-    return checkAndSet(m_shouldNeverUnbox, m_shouldNeverUnbox | isCaptured)
-        | checkAndSet(m_isCaptured, m_isCaptured | isCaptured);
-}
-
 bool VariableAccessData::mergeShouldNeverUnbox(bool shouldNeverUnbox)
 {
     bool newShouldNeverUnbox = m_shouldNeverUnbox | shouldNeverUnbox;
@@ -198,9 +188,6 @@ FlushFormat VariableAccessData::flushFormat()
 {
     ASSERT(find() == this);
     
-    if (isArgumentsAlias())
-        return FlushedArguments;
-    
     if (!shouldUnboxIfPossible())
         return FlushedJSValue;