Bug 885112 - MFunctionEnvironment should be movable and alias nothing. r=h4writer
authorKannan Vijayan <kvijayan@mozilla.com>
Thu, 20 Jun 2013 11:18:39 -0400
changeset 135824 3d389787101e13ae30f381be56cb8f687b27e4f6
parent 135823 cb01c197c682010a48addcc322569124ba5f53d0
child 135825 23bcbbbfd5a04674782c940b99563c530d45e531
push id24852
push userryanvm@gmail.com
push dateThu, 20 Jun 2013 23:22:28 +0000
treeherdermozilla-central@b3cbafd5eb99 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersh4writer
bugs885112
milestone24.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 885112 - MFunctionEnvironment should be movable and alias nothing. r=h4writer
js/src/ion/MIR.h
--- a/js/src/ion/MIR.h
+++ b/js/src/ion/MIR.h
@@ -6184,31 +6184,37 @@ class MFunctionEnvironment
   : public MUnaryInstruction,
     public SingleObjectPolicy
 {
   public:
     MFunctionEnvironment(MDefinition *function)
         : MUnaryInstruction(function)
     {
         setResultType(MIRType_Object);
+        setMovable();
     }
 
     INSTRUCTION_HEADER(FunctionEnvironment)
 
     static MFunctionEnvironment *New(MDefinition *function) {
         return new MFunctionEnvironment(function);
     }
 
     MDefinition *function() const {
         return getOperand(0);
     }
 
     TypePolicy *typePolicy() {
         return this;
     }
+
+    // A function's environment is fixed.
+    AliasSet getAliasSet() const {
+        return AliasSet::None();
+    }
 };
 
 // Loads the current js::ForkJoinSlice*.
 // Only applicable in ParallelExecution.
 class MParSlice
   : public MNullaryInstruction
 {
   public: