Ignore:
Timestamp:
May 11, 2017, 11:05:54 PM (8 years ago)
Author:
[email protected]
Message:

Computing optionalDefArgWidth in CheckSpecial should not consider Scratch roles
https://bugs.webkit.org/show_bug.cgi?id=171962

Reviewed by Filip Pizlo.

The purpose of getting the result width is to get the width of
the result of the arithmetic. It does not care about that the
Check happens to define scratches.

  • b3/B3CheckSpecial.cpp:

(JSC::B3::CheckSpecial::forEachArg):

  • b3/testb3.cpp:

(JSC::B3::testCheckMul):
(JSC::B3::testCheckMulMemory):
(JSC::B3::testCheckMul64):
(JSC::B3::testCheckMulFold):
(JSC::B3::testCheckMulFoldFail):
(JSC::B3::testCheckMulArgumentAliasing64):
(JSC::B3::testCheckMulArgumentAliasing32):
(JSC::B3::testCheckMul64SShr):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/b3/testb3.cpp

    r216733 r216734  
    95839583void testCheckMul()
    95849584{
    9585 #ifndef NDEBUG
    9586     if (isARM64()) {
    9587         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9588         return;
    9589     }
    9590 #endif
    95919585    Procedure proc;
    95929586    BasicBlock* root = proc.addBlock();
     
    96269620void testCheckMulMemory()
    96279621{
    9628 #ifndef NDEBUG
    9629     if (isARM64()) {
    9630         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9631         return;
    9632     }
    9633 #endif
    96349622    Procedure proc;
    96359623    BasicBlock* root = proc.addBlock();
     
    97209708void testCheckMul64()
    97219709{
    9722 #ifndef NDEBUG
    9723     if (isARM64()) {
    9724         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9725         return;
    9726     }
    9727 #endif
    97289710    Procedure proc;
    97299711    BasicBlock* root = proc.addBlock();
     
    97599741void testCheckMulFold(int a, int b)
    97609742{
    9761 #ifndef NDEBUG
    9762     if (isARM64()) {
    9763         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9764         return;
    9765     }
    9766 #endif
    97679743    Procedure proc;
    97689744    BasicBlock* root = proc.addBlock();
     
    97839759void testCheckMulFoldFail(int a, int b)
    97849760{
    9785 #ifndef NDEBUG
    9786     if (isARM64()) {
    9787         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9788         return;
    9789     }
    9790 #endif
    97919761    Procedure proc;
    97929762    BasicBlock* root = proc.addBlock();
     
    98109780void testCheckMulArgumentAliasing64()
    98119781{
    9812 #ifndef NDEBUG
    9813     if (isARM64()) {
    9814         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9815         return;
    9816     }
    9817 #endif
    98189782    Procedure proc;
    98199783    BasicBlock* root = proc.addBlock();
     
    98539817void testCheckMulArgumentAliasing32()
    98549818{
    9855 #ifndef NDEBUG
    9856     if (isARM64()) {
    9857         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9858         return;
    9859     }
    9860 #endif
    98619819    Procedure proc;
    98629820    BasicBlock* root = proc.addBlock();
     
    99029860void testCheckMul64SShr()
    99039861{
    9904 #ifndef NDEBUG
    9905     if (isARM64()) {
    9906         // FIXME: https://bugs.webkit.org/show_bug.cgi?id=171826
    9907         return;
    9908     }
    9909 #endif
    99109862    Procedure proc;
    99119863    BasicBlock* root = proc.addBlock();
Note: See TracChangeset for help on using the changeset viewer.