Changeset 223202 in webkit for trunk/Source/JavaScriptCore


Ignore:
Timestamp:
Oct 11, 2017, 12:33:48 PM (8 years ago)
Author:
[email protected]
Message:

Unreviewed, rolling out r223113 and r223121.
https://bugs.webkit.org/show_bug.cgi?id=178182

Reintroduced 20% regression on Kraken (Requested by rniwa on
#webkit).

Reverted changesets:

"Enable gigacage on iOS"
https://bugs.webkit.org/show_bug.cgi?id=177586
https://trac.webkit.org/changeset/223113

"Use one virtual allocation for all gigacages and their
runways"
https://bugs.webkit.org/show_bug.cgi?id=178050
https://trac.webkit.org/changeset/223121

Location:
trunk/Source/JavaScriptCore
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r223197 r223202  
     12017-10-11  Commit Queue  <[email protected]>
     2
     3        Unreviewed, rolling out r223113 and r223121.
     4        https://bugs.webkit.org/show_bug.cgi?id=178182
     5
     6        Reintroduced 20% regression on Kraken (Requested by rniwa on
     7        #webkit).
     8
     9        Reverted changesets:
     10
     11        "Enable gigacage on iOS"
     12        https://bugs.webkit.org/show_bug.cgi?id=177586
     13        https://trac.webkit.org/changeset/223113
     14
     15        "Use one virtual allocation for all gigacages and their
     16        runways"
     17        https://bugs.webkit.org/show_bug.cgi?id=178050
     18        https://trac.webkit.org/changeset/223121
     19
    1202017-10-11  Michael Saboff  <[email protected]>
    221
  • trunk/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp

    r223113 r223202  
    1199511995    LValue caged(Gigacage::Kind kind, LValue ptr)
    1199611996    {
    11997         if (!Gigacage::isEnabled(kind))
     11997        if (!Gigacage::shouldBeEnabled())
    1199811998            return ptr;
    1199911999       
  • trunk/Source/JavaScriptCore/jit/AssemblyHelpers.h

    r223113 r223202  
    13151315    {
    13161316#if GIGACAGE_ENABLED
    1317         if (!Gigacage::isEnabled(kind))
     1317        if (!Gigacage::shouldBeEnabled())
    13181318            return;
    13191319       
     
    13291329    {
    13301330#if GIGACAGE_ENABLED
    1331         if (!Gigacage::isEnabled(kind))
     1331        if (!Gigacage::shouldBeEnabled())
    13321332            return;
    13331333       
  • trunk/Source/JavaScriptCore/offlineasm/arm64.rb

    r223113 r223202  
    261261end
    262262
    263 def arm64LowerLabelReferences(list)
    264     newList = []
    265     list.each {
    266         | node |
    267         if node.is_a? Instruction
    268             case node.opcode
    269             when "loadi", "loadis", "loadp", "loadq", "loadb", "loadbs", "loadh", "loadhs"
    270                 labelRef = node.operands[0]
    271                 if labelRef.is_a? LabelReference
    272                     tmp = Tmp.new(node.codeOrigin, :gpr)
    273                     newList << Instruction.new(codeOrigin, "globaladdr", [LabelReference.new(node.codeOrigin, labelRef.label), tmp])
    274                     newList << Instruction.new(codeOrigin, node.opcode, [Address.new(node.codeOrigin, tmp, Immediate.new(node.codeOrigin, labelRef.offset)), node.operands[1]])
    275                 else
    276                     newList << node
    277                 end
    278             else
    279                 newList << node
    280             end
    281         else
    282             newList << node
    283         end
    284     }
    285     newList
    286 end
    287 
    288263# Workaround for Cortex-A53 erratum (835769)
    289264def arm64CortexA53Fix835769(list)
     
    322297        result = riscLowerShiftOps(result)
    323298        result = arm64LowerMalformedLoadStoreAddresses(result)
    324         result = arm64LowerLabelReferences(result)
    325299        result = riscLowerMalformedAddresses(result) {
    326300            | node, address |
     
    931905            $asm.puts "nop"
    932906            $asm.putStr("#endif")
    933         when "globaladdr"
    934             uid = $asm.newUID
    935             $asm.puts "L_offlineasm_loh_adrp_#{uid}:"
    936             $asm.puts "adrp #{operands[1].arm64Operand(:ptr)}, #{operands[0].asmLabel}@GOTPAGE"
    937             $asm.puts "L_offlineasm_loh_ldr_#{uid}:"
    938             $asm.puts "ldr #{operands[1].arm64Operand(:ptr)}, [#{operands[1].arm64Operand(:ptr)}, #{operands[0].asmLabel}@GOTPAGEOFF]"
    939             $asm.deferAction {
    940                 $asm.puts ".loh AdrpLdrGot L_offlineasm_loh_adrp_#{uid}, L_offlineasm_loh_ldr_#{uid}"
    941             }
    942907        else
    943908            lowerDefault
  • trunk/Source/JavaScriptCore/offlineasm/asm.rb

    r223113 r223202  
    4747        @numLocalLabels = 0
    4848        @numGlobalLabels = 0
    49         @deferredActions = []
    50         @count = 0
    5149
    5250        @newlineSpacerState = :none
     
    7674        end
    7775        putsLastComment
    78         @deferredActions.each {
    79             | action |
    80             action.call()
    81         }
    8276        @outp.puts "OFFLINE_ASM_END" if !$emitWinAsm
    8377        @state = :cpp
    84     end
    85    
    86     def deferAction(&proc)
    87         @deferredActions << proc
    88     end
    89    
    90     def newUID
    91         @count += 1
    92         @count
    9378    end
    9479   
  • trunk/Source/JavaScriptCore/offlineasm/instructions.rb

    r223113 r223202  
    268268    [
    269269     "pcrtoaddr",   # Address from PC relative offset - adr instruction
    270      "nopFixCortexA53Err835769", # nop on Cortex-A53 (nothing otherwise)
    271      "globaladdr"
     270     "nopFixCortexA53Err835769" # nop on Cortex-A53 (nothing otherwise)
    272271    ]
    273272
Note: See TracChangeset for help on using the changeset viewer.