Changeset 154095 in webkit


Ignore:
Timestamp:
Aug 15, 2013 4:28:55 AM (11 years ago)
Author:
allan.jensen@digia.com
Message:

REGRESSION(r148790) Made 7 tests fail on x86 32bit
https://bugs.webkit.org/show_bug.cgi?id=114913

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

The X87 register was not freed before some calls. Instead
of inserting resetX87Registers to the last call sites,
the two X87 registers are now freed in every call.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/instructions.rb:
  • offlineasm/x86.rb:

LayoutTests:

Unskip the five tests now passsing again.

  • platform/qt/TestExpectations:
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r154094 r154095  
     12013-08-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>
     2
     3        REGRESSION(r148790) Made 7 tests fail on x86 32bit
     4        https://bugs.webkit.org/show_bug.cgi?id=114913
     5
     6        Reviewed by Filip Pizlo.
     7
     8        Unskip the five tests now passsing again.
     9
     10        * platform/qt/TestExpectations:
     11
    1122013-08-15  Simon Pena  <simon.pena@samsung.com>
    213
  • trunk/LayoutTests/platform/qt/TestExpectations

    r154053 r154095  
    13861386
    13871387# REGRESSION(r148790) Made 7 tests fail on x86 32bit
    1388 webkit.org/b/114913 fast/canvas/canvas-arc-360-winding.html [ Skip ]
    1389 webkit.org/b/114913 fast/canvas/canvas-fillPath-alpha-shadow.html [ Skip ]
    1390 webkit.org/b/114913 fast/canvas/canvas-fillPath-gradient-shadow.html [ Skip ]
    1391 webkit.org/b/114913 fast/canvas/canvas-fillPath-pattern-shadow.html [ Skip ]
    1392 webkit.org/b/114913 fast/canvas/canvas-strokePath-alpha-shadow.html [ Skip ]
    13931388webkit.org/b/114913 sputnik/Conformance/15_Native_Objects/15.8_Math/15.8.2/15.8.2.13_pow/S15.8.2.13_A24.html [ Skip ]
    13941389webkit.org/b/114913 sputnik/Conformance/15_Native_Objects/15.8_Math/15.8.2/15.8.2.8_exp/S15.8.2.8_A6.html [ Skip ]
  • trunk/Source/JavaScriptCore/ChangeLog

    r154075 r154095  
     12013-08-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>
     2
     3        REGRESSION(r148790) Made 7 tests fail on x86 32bit
     4        https://bugs.webkit.org/show_bug.cgi?id=114913
     5
     6        Reviewed by Filip Pizlo.
     7
     8        The X87 register was not freed before some calls. Instead
     9        of inserting resetX87Registers to the last call sites,
     10        the two X87 registers are now freed in every call.
     11
     12        * llint/LowLevelInterpreter32_64.asm:
     13        * llint/LowLevelInterpreter64.asm:
     14        * offlineasm/instructions.rb:
     15        * offlineasm/x86.rb:
     16
    1172013-08-14  Michael Saboff  <msaboff@apple.com>
    218
  • trunk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm

    r153371 r154095  
    103103        call function
    104104    elsif X86
    105         resetX87Stack
    106105        poke arg1, 0
    107106        poke arg2, 1
     
    127126        call function
    128127    elsif X86
    129         resetX87Stack
    130128        poke arg1, 0
    131129        poke arg2, 1
  • trunk/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm

    r153237 r154095  
    8282    leap [PB, PC, 8], PC
    8383    move PB, t3
    84     if X86_64
    85         resetX87Stack
    86     end
    8784end
    8885
  • trunk/Source/JavaScriptCore/offlineasm/instructions.rb

    r148790 r154095  
    255255    [
    256256     "cdqi",
    257      "idivi",
    258      "resetX87Stack"
     257     "idivi"
    259258    ]
    260259
  • trunk/Source/JavaScriptCore/offlineasm/x86.rb

    r153221 r154095  
    11501150            $asm.puts "int $3"
    11511151        when "call"
     1152            if useX87
     1153                2.times {
     1154                    | offset |
     1155                    $asm.puts "ffree %st(#{offset})"
     1156                }
     1157            end
    11521158            $asm.puts "call #{operands[0].x86CallOperand(:ptr)}"
    11531159        when "ret"
     
    13371343        when "leap"
    13381344            $asm.puts "lea#{x86Suffix(:ptr)} #{operands[0].x86AddressOperand(:ptr)}, #{operands[1].x86Operand(:ptr)}"
    1339         when "resetX87Stack"
    1340             if useX87
    1341                 2.times {
    1342                     | offset |
    1343                     $asm.puts "ffree %st(#{offset})"
    1344                 }
    1345             end
    13461345        else
    13471346            lowerDefault
Note: See TracChangeset for help on using the changeset viewer.