Ignore:
Timestamp:
May 29, 2008, 10:45:16 PM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

2008-05-29 Maciej Stachowiak <[email protected]>

Reviewed by Oliver.

  • fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com


Finally blocks could clobber registers that had to remain live
until they returned. This patch takes a conservative approach and
makes sure that finally blocks do not reuse any registers that
were previously allocated for the function. In the future this
could probably be tightened up to be less profligate with the
register allocation.


  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::highestUsedRegister):
  • VM/CodeGenerator.h:
  • kjs/nodes.cpp: (KJS::TryNode::emitCode):

LayoutTests:

2008-05-29 Maciej Stachowiak <[email protected]>

Reviewed by Oliver. Test by Geoff Garen.


  • fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com
  • fast/js/finally-codegen-failure-expected.txt: Added.
  • fast/js/finally-codegen-failure.html: Added.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/VM/CodeGenerator.h

    r34032 r34250  
    117117        RegisterID* newTemporary();
    118118
     119        RegisterID* highestUsedRegister();
     120
    119121        // The same as newTemporary(), but this function returns "suggestion" if
    120122        // "suggestion" is a temporary. This function is helpful in situations
Note: See TracChangeset for help on using the changeset viewer.