Bug 880539 - Fix CodeGenerator::guardTypeSet to handle MagicArgs type. r=bhackett
authorKannan Vijayan <kvijayan@mozilla.com>
Fri, 07 Jun 2013 15:06:53 -0400
changeset 145899 59fc33c899c4c0341c7b7e6e1896633779f66b55
parent 145898 b70991f0853edb947687adcdce9a3106f65def71
child 145900 2882222d290a67609749780819b560cf3e67c536
push id2697
push userbbajaj@mozilla.com
push dateMon, 05 Aug 2013 18:49:53 +0000
treeherdermozilla-beta@dfec938c7b63 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbhackett
bugs880539
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 880539 - Fix CodeGenerator::guardTypeSet to handle MagicArgs type. r=bhackett
js/src/ion/IonMacroAssembler.cpp
--- a/js/src/ion/IonMacroAssembler.cpp
+++ b/js/src/ion/IonMacroAssembler.cpp
@@ -72,16 +72,18 @@ MacroAssembler::guardTypeSet(const Sourc
     if (types->hasType(types::Type::UndefinedType()))
         branchTestUndefined(Equal, tag, matched);
     if (types->hasType(types::Type::BooleanType()))
         branchTestBoolean(Equal, tag, matched);
     if (types->hasType(types::Type::StringType()))
         branchTestString(Equal, tag, matched);
     if (types->hasType(types::Type::NullType()))
         branchTestNull(Equal, tag, matched);
+    if (types->hasType(types::Type::MagicArgType()))
+        branchTestMagic(Equal, tag, matched);
 
     if (types->hasType(types::Type::AnyObjectType())) {
         branchTestObject(Equal, tag, matched);
     } else if (types->getObjectCount()) {
         branchTestObject(NotEqual, tag, miss);
         Register obj = extractObject(address, scratch);
 
         unsigned count = types->getObjectCount();