Bug 145153 - GCSE asserts re-running itself is useless, while it apparently may not be the case
Summary: GCSE asserts re-running itself is useless, while it apparently may not be the...
Status: RESOLVED DUPLICATE of bug 145853
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-18 17:07 PDT by Basile Clement
Modified: 2015-07-02 15:54 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Basile Clement 2015-05-18 17:07:12 PDT
This happens infrequently in stress/singleton-scope-then-overwrite.js ; it takes me 20-30 iterations of running 

  while true; do /usr/bin/env ruby Tools/Scripts/run-jsc-stress-tests -j /Volumes/Data/primary/OpenSource/WebKitBuild/Debug/jsc -o /Volumes/Data/primary/OpenSource/WebKitBuild/Debug/jsc-stress-results Source/JavaScriptCore/tests/stress   --ftl-jit --filter '(arguments-custom-properties-gc|singleton-scope-then-overwrite)' --; done

to observe it on singleton-scope-then-overwrite (arguments-custom-properties-gc has another heisenbug in a local branch that I suspect is also present on ToT but haven't successfully reproduced yet).

stress/singleton-scope-then-overwrite.js.ftl-eager: DFG ASSERTION FAILED: !iterate()
stress/singleton-scope-then-overwrite.js.ftl-eager: /Volumes/Data/primary/OpenSource/Source/JavaScriptCore/dfg/DFGCSEPhase.cpp(399) : bool JSC::DFG::<anonymous namespace>::GlobalCSEPhase::run()
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Graph at time of failure:
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: DFG for foo#<no-hash>:[0x10d7bd260->0x10d7dc260->0x10c04b080, DFGFunctionCall, 152 (NeverInline) (DidTryToEnterInLoop)]:
stress/singleton-scope-then-overwrite.js.ftl-eager:   Fixpoint state: FixpointNotConverged; Form: SSA; Unification state: GloballyUnified; Ref count state: EverythingIsLive
stress/singleton-scope-then-overwrite.js.ftl-eager:   Argument formats: FlushedJSValue, FlushedInt32
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #0 (bc#0): (OSR target)
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 1.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors:
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #0 #1 #2 #3 #4 #5 #6 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:  208:< 1:->	GetStack(JS|PureInt, Otherobj, this, FlushedJSValue, R:Stack(5), bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    0:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  209:< 1:->	GetStack(JS|PureInt, Int32, arg1, FlushedInt32, R:Stack(6), bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    1:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    2:< 1:->	JSConstant(JS|PureInt, Other, Undefined, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  211:<!0:->	KillStack(MustGen, loc0, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    3:<!0:->	MovHint(@2, MustGen, loc0, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    4:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  212:<!0:->	KillStack(MustGen, loc1, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    5:<!0:->	MovHint(@2, MustGen, loc1, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    6:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  213:<!0:->	KillStack(MustGen, loc2, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    7:<!0:->	MovHint(@2, MustGen, loc2, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    8:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  214:<!0:->	KillStack(MustGen, loc3, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:    9:<!0:->	MovHint(@2, MustGen, loc3, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:   10:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:  215:<!0:->	KillStack(MustGen, loc4, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:   11:<!0:->	MovHint(@2, MustGen, loc4, W:SideState, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:   12:<!0:->	Check(MustGen, bc#0)
stress/singleton-scope-then-overwrite.js.ftl-eager:   13:< 1:->	JSConstant(JS|PureInt, Function, Weak:Cell: 0x10c064ea0 (%EQ:Function), ID: 39, bc#1)
stress/singleton-scope-then-overwrite.js.ftl-eager:   14:< 1:->	JSConstant(JS|UseAsOther, Otherobj, Weak:Cell: 0x10c04f880 (%ET:global), ID: 405, bc#1)
stress/singleton-scope-then-overwrite.js.ftl-eager:  216:<!0:->	KillStack(MustGen, loc0, W:SideState, bc#1)
stress/singleton-scope-then-overwrite.js.ftl-eager:   15:<!0:->	MovHint(@14, MustGen, loc0, W:SideState, bc#1)
stress/singleton-scope-then-overwrite.js.ftl-eager:   16:<!0:->	Check(MustGen, bc#1, exit: bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:   17:< 1:->	CreateActivation(Cell:@14, JS|UseAsOther, Otherobj, R:HeapObjectCount, W:HeapObjectCount, bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:  217:<!0:->	KillStack(MustGen, loc1, W:SideState, bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:   18:<!0:->	MovHint(@17, MustGen, loc1, W:SideState, bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:  218:<!0:->	KillStack(MustGen, loc0, W:SideState, bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:   19:<!0:->	MovHint(@17, MustGen, loc0, W:SideState, bc#3)
stress/singleton-scope-then-overwrite.js.ftl-eager:  163:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#3, exit: bc#6)
stress/singleton-scope-then-overwrite.js.ftl-eager:   20:<!0:->	Check(MustGen, bc#3, exit: bc#6)
stress/singleton-scope-then-overwrite.js.ftl-eager:   21:<!0:->	Check(MustGen, bc#3, exit: bc#6)
stress/singleton-scope-then-overwrite.js.ftl-eager:  219:<!0:->	KillStack(MustGen, loc0, W:SideState, bc#6)
stress/singleton-scope-then-overwrite.js.ftl-eager:   22:<!0:->	MovHint(@17, MustGen, loc0, W:SideState, bc#6)
stress/singleton-scope-then-overwrite.js.ftl-eager:   23:<!0:->	Check(MustGen, bc#6, exit: bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:   24:<!0:->	Check(MustGen, Int32, bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:   25:< 1:->	JSConstant(JS|PureNum|UseAsOther, Int32, Int32: 1, bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:   26:<!0:->	ArithAdd(Int32:@209, Int32:@25, JS|MustGen|UseAsOther, Int32, CheckOverflow, bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:  220:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:   27:<!0:->	MovHint(@26, MustGen, loc5, W:SideState, bc#9)
stress/singleton-scope-then-overwrite.js.ftl-eager:   28:<!0:->	Check(MustGen, bc#9, exit: bc#14)
stress/singleton-scope-then-overwrite.js.ftl-eager:   29:<!0:->	PutClosureVar(KnownCell:@17, @26, MustGen, scope0, W:ScopeProperties(0), bc#14)
stress/singleton-scope-then-overwrite.js.ftl-eager:   30:<!0:->	NotifyWrite(MustGen, 0x10dffed20, W:Watchpoint_fire,SideState, bc#14)
stress/singleton-scope-then-overwrite.js.ftl-eager:  164:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#21)
stress/singleton-scope-then-overwrite.js.ftl-eager:   31:< 1:->	NewFunction(Cell:@17, JS|UseAsOther, Function, <0x10c04af80, FunctionExecutable>, f#<no-hash>/<nogen>:[0x10c04af80], R:HeapObjectCount, W:HeapObjectCount, bc#21)
stress/singleton-scope-then-overwrite.js.ftl-eager:  221:<!0:->	KillStack(MustGen, loc2, W:SideState, bc#21)
stress/singleton-scope-then-overwrite.js.ftl-eager:   32:<!0:->	MovHint(@31, MustGen, loc2, W:SideState, bc#21)
stress/singleton-scope-then-overwrite.js.ftl-eager:  165:<!0:->	Check(MustGen, bc#21, exit: bc#25)
stress/singleton-scope-then-overwrite.js.ftl-eager:   33:<!0:->	Check(MustGen, bc#21, exit: bc#25)
stress/singleton-scope-then-overwrite.js.ftl-eager:  222:<!0:->	KillStack(MustGen, loc8, W:SideState, bc#25)
stress/singleton-scope-then-overwrite.js.ftl-eager:   35:<!0:->	MovHint(@14, MustGen, loc8, W:SideState, bc#25)
stress/singleton-scope-then-overwrite.js.ftl-eager:   36:<!0:->	Check(MustGen, bc#25, exit: bc#32)
stress/singleton-scope-then-overwrite.js.ftl-eager:   41:< 1:->	JSConstant(JS|UseAsOther, Function, Weak:Cell: 0x10c0653e0 (%Ao:Function), ID: 43, bc#32)
stress/singleton-scope-then-overwrite.js.ftl-eager:  223:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#32)
stress/singleton-scope-then-overwrite.js.ftl-eager:   42:<!0:->	MovHint(@41, MustGen, loc5, W:SideState, bc#32)
stress/singleton-scope-then-overwrite.js.ftl-eager:   43:<!0:->	Check(MustGen, bc#32, exit: bc#40)
stress/singleton-scope-then-overwrite.js.ftl-eager:  224:<!0:->	KillStack(MustGen, loc7, W:SideState, bc#40)
stress/singleton-scope-then-overwrite.js.ftl-eager:   44:<!0:->	MovHint(@31, MustGen, loc7, W:SideState, bc#40)
stress/singleton-scope-then-overwrite.js.ftl-eager:   45:<!0:->	Check(MustGen, bc#40, exit: bc#43)
stress/singleton-scope-then-overwrite.js.ftl-eager:   46:<!0:->	Call(@41, @14, @31, JS|MustGen|VarArgs|PureInt, Other, R:World, W:Heap, bc#43)  predicting Other
stress/singleton-scope-then-overwrite.js.ftl-eager:  225:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#43)
stress/singleton-scope-then-overwrite.js.ftl-eager:   47:<!0:->	MovHint(@46, MustGen, loc5, W:SideState, bc#43)
stress/singleton-scope-then-overwrite.js.ftl-eager:  166:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#43, exit: bc#52)
stress/singleton-scope-then-overwrite.js.ftl-eager:   48:<!0:->	Check(MustGen, bc#43, exit: bc#52)
stress/singleton-scope-then-overwrite.js.ftl-eager:   49:< 1:->	JSConstant(JS|UseAsOther, Int32, Int32: 0, bc#52)
stress/singleton-scope-then-overwrite.js.ftl-eager:  226:<!0:->	KillStack(MustGen, loc3, W:SideState, bc#52)
stress/singleton-scope-then-overwrite.js.ftl-eager:   50:<!0:->	MovHint(@49, MustGen, loc3, W:SideState, bc#52)
stress/singleton-scope-then-overwrite.js.ftl-eager:   51:<!0:->	Check(MustGen, bc#52, exit: bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:   52:< 1:->	JSConstant(JS|UseAsOther, Int32, Int32: 10000, bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:   53:< 1:->	JSConstant(Boolean|UseAsOther, Bool, True, bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:  227:< 1:->	Upsilon(Check:Int32:@49, ^210, W:SideState, bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:  170:<!0:->	Jump(MustGen, T:#2, W:SideState, bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:  167:<!0:->	Check(MustGen, bc#55)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #1 (bc#59):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #1 #2 #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #1
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Containing loop headers: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched, CurrentlyCFAUnreachable
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:  239:< 1:->	Upsilon(Check:Int32:@93, ^210, W:SideState, bc#59)
stress/singleton-scope-then-overwrite.js.ftl-eager:  187:<!0:->	Jump(MustGen, T:#2, W:SideState, bc#59)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #2 (<none>): (OSR target)
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 10.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #0 #1
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors: #3 #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #1 #2 #3 #4 #5 #6 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Loop header, contains: #1 #2 #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Containing loop headers: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:  210:< 1:->	Phi(Int32|PureInt, Int32, W:SideState)
stress/singleton-scope-then-overwrite.js.ftl-eager:  228:<!0:->	MovHint(@210, MustGen, loc3, W:SideState)
stress/singleton-scope-then-overwrite.js.ftl-eager:   55:<!0:->	LoopHint(MustGen, W:SideState, bc#59)
stress/singleton-scope-then-overwrite.js.ftl-eager:   56:<!0:->	Check(MustGen, Function, bc#60)
stress/singleton-scope-then-overwrite.js.ftl-eager:  229:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#60)
stress/singleton-scope-then-overwrite.js.ftl-eager:   57:<!0:->	MovHint(@31, MustGen, loc5, W:SideState, bc#60)
stress/singleton-scope-then-overwrite.js.ftl-eager:   58:<!0:->	Check(MustGen, bc#60, exit: bc#63)
stress/singleton-scope-then-overwrite.js.ftl-eager:   59:<!0:->	Check(MustGen, Other, bc#63)
stress/singleton-scope-then-overwrite.js.ftl-eager:  230:<!0:->	KillStack(MustGen, loc8, W:SideState, bc#63)
stress/singleton-scope-then-overwrite.js.ftl-eager:   60:<!0:->	MovHint(@2, MustGen, loc8, W:SideState, bc#63)
stress/singleton-scope-then-overwrite.js.ftl-eager:   61:<!0:->	Check(MustGen, bc#63, exit: bc#66)
stress/singleton-scope-then-overwrite.js.ftl-eager:   62:<!0:->	Check(MustGen, Int32, bc#66)
stress/singleton-scope-then-overwrite.js.ftl-eager:  231:<!0:->	KillStack(MustGen, loc7, W:SideState, bc#66)
stress/singleton-scope-then-overwrite.js.ftl-eager:   63:<!0:->	MovHint(@210, MustGen, loc7, W:SideState, bc#66)
stress/singleton-scope-then-overwrite.js.ftl-eager:   64:<!0:->	Check(MustGen, bc#66, exit: bc#69)
stress/singleton-scope-then-overwrite.js.ftl-eager:   65:<!0:->	Call(@31, @2, @210, JS|MustGen|VarArgs|UseAsOther, Int32, R:World, W:Heap, bc#69)  predicting Int32
stress/singleton-scope-then-overwrite.js.ftl-eager:  232:<!0:->	KillStack(MustGen, loc4, W:SideState, bc#69)
stress/singleton-scope-then-overwrite.js.ftl-eager:   66:<!0:->	MovHint(@65, MustGen, loc4, W:SideState, bc#69)
stress/singleton-scope-then-overwrite.js.ftl-eager:  162:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#69, exit: bc#78)
stress/singleton-scope-then-overwrite.js.ftl-eager:   67:<!0:->	Check(Check:Int32:@65, MustGen, bc#69, exit: bc#78)
stress/singleton-scope-then-overwrite.js.ftl-eager:  233:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#78)
stress/singleton-scope-then-overwrite.js.ftl-eager:   68:<!0:->	MovHint(@65, MustGen, loc5, W:SideState, bc#78)
stress/singleton-scope-then-overwrite.js.ftl-eager:   69:<!0:->	Check(MustGen, bc#78, exit: bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:   70:<!0:->	Check(MustGen, Int32, bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:   71:<!0:->	Check(MustGen, Int32, bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:   72:<!0:->	Check(MustGen, Int32, bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:  234:<!0:->	KillStack(MustGen, loc6, W:SideState, bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:   73:<!0:->	MovHint(@26, MustGen, loc6, W:SideState, bc#81)
stress/singleton-scope-then-overwrite.js.ftl-eager:   74:<!0:->	Check(MustGen, bc#81, exit: bc#86)
stress/singleton-scope-then-overwrite.js.ftl-eager:   75:<!0:->	ArithAdd(Int32:@210, Int32:@26, JS|MustGen|UseAsOther, Int32, CheckOverflow, bc#86)
stress/singleton-scope-then-overwrite.js.ftl-eager:  235:<!0:->	KillStack(MustGen, loc6, W:SideState, bc#86)
stress/singleton-scope-then-overwrite.js.ftl-eager:   76:<!0:->	MovHint(@75, MustGen, loc6, W:SideState, bc#86)
stress/singleton-scope-then-overwrite.js.ftl-eager:   77:<!0:->	Check(MustGen, bc#86, exit: bc#91)
stress/singleton-scope-then-overwrite.js.ftl-eager:   78:< 1:->	CompareEq(Int32:@65, Int32:@75, Boolean|UseAsOther, Bool, bc#91)
stress/singleton-scope-then-overwrite.js.ftl-eager:   79:< 1:->	LogicalNot(Boolean:@78, Boolean|UseAsOther, Bool, bc#91)
stress/singleton-scope-then-overwrite.js.ftl-eager:  236:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#91)
stress/singleton-scope-then-overwrite.js.ftl-eager:   80:<!0:->	MovHint(@79, MustGen, loc5, W:SideState, bc#91)
stress/singleton-scope-then-overwrite.js.ftl-eager:   81:<!0:->	Check(MustGen, bc#91, exit: bc#95)
stress/singleton-scope-then-overwrite.js.ftl-eager:   82:<!0:->	Branch(Boolean:@79, MustGen, T:#3/w:1.000000, F:#4/w:10.000000, W:SideState, bc#95)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: TakeBoth, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #3 (bc#98):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 1.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors:
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2 #3
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #3
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   83:< 1:->	JSConstant(JS|UseAsOther, Stringident, Strong:String (atomic) (identifier): Error: bad result: , ID: 4, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:   84:<!0:->	Check(MustGen, Int32, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:  152:<!0:->	ToString(@65, JS|MustGen|PureInt, String, R:World, W:Heap, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:   85:< 1:->	MakeRope(KnownString:@83, KnownString:@152, JS|PureInt, String, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:  237:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:   86:<!0:->	MovHint(@85, MustGen, loc5, W:SideState, bc#98)
stress/singleton-scope-then-overwrite.js.ftl-eager:  161:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#98, exit: bc#103)
stress/singleton-scope-then-overwrite.js.ftl-eager:   87:<!0:->	Check(MustGen, bc#98, exit: bc#103)
stress/singleton-scope-then-overwrite.js.ftl-eager:   88:<!0:->	Throw(@85, MustGen, W:SideState, bc#103)
stress/singleton-scope-then-overwrite.js.ftl-eager:   89:<!0:->	Check(MustGen, bc#103)
stress/singleton-scope-then-overwrite.js.ftl-eager:   90:<!0:->	Unreachable(MustGen, W:SideState, bc#103)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched, CFAInvalidated
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #4 (bc#105):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 10.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors: #1 #5
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2 #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #1 #4 #5 #6 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   Containing loop headers: #2
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   91:<!0:->	Check(MustGen, Int32, bc#105)
stress/singleton-scope-then-overwrite.js.ftl-eager:   92:<!0:->	Check(MustGen, Int32, bc#105)
stress/singleton-scope-then-overwrite.js.ftl-eager:   93:<!0:->	ArithAdd(Int32:@210, Int32:@25, Number|MustGen|UseAsOther, Int32, CheckOverflow, bc#105)
stress/singleton-scope-then-overwrite.js.ftl-eager:  238:<!0:->	KillStack(MustGen, loc3, W:SideState, bc#105)
stress/singleton-scope-then-overwrite.js.ftl-eager:   94:<!0:->	MovHint(@93, MustGen, loc3, W:SideState, bc#105)
stress/singleton-scope-then-overwrite.js.ftl-eager:   95:<!0:->	Check(MustGen, bc#105, exit: bc#107)
stress/singleton-scope-then-overwrite.js.ftl-eager:   96:<!0:->	Check(MustGen, Int32, bc#107)
stress/singleton-scope-then-overwrite.js.ftl-eager:   97:< 1:->	CompareLess(Int32:@93, Int32:@52, Boolean|UseAsOther, Bool, bc#107)
stress/singleton-scope-then-overwrite.js.ftl-eager:   98:<!0:->	Branch(Boolean:@97, MustGen, T:#1/w:10.000000, F:#5/w:1.000000, W:SideState, bc#107)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: TakeBoth, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #5 (bc#111):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 1.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #4
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors: #6 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2 #4 #5
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #5 #6 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   99:<!0:->	Check(MustGen, Otherobj, bc#111)
stress/singleton-scope-then-overwrite.js.ftl-eager:  100:< 1:->	JSConstant(JS|UseAsOther, Int32, Int32: 999, bc#111)
stress/singleton-scope-then-overwrite.js.ftl-eager:  101:<!0:->	PutClosureVar(KnownCell:@17, @100, MustGen, scope0, W:ScopeProperties(0), bc#111)
stress/singleton-scope-then-overwrite.js.ftl-eager:  102:<!0:->	NotifyWrite(MustGen, 0x10dffed20, W:Watchpoint_fire,SideState, bc#111)
stress/singleton-scope-then-overwrite.js.ftl-eager:  158:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#118)
stress/singleton-scope-then-overwrite.js.ftl-eager:  103:<!0:->	Check(MustGen, Function, bc#118)
stress/singleton-scope-then-overwrite.js.ftl-eager:  240:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#118)
stress/singleton-scope-then-overwrite.js.ftl-eager:  104:<!0:->	MovHint(@31, MustGen, loc5, W:SideState, bc#118)
stress/singleton-scope-then-overwrite.js.ftl-eager:  105:<!0:->	Check(MustGen, bc#118, exit: bc#121)
stress/singleton-scope-then-overwrite.js.ftl-eager:  106:<!0:->	Check(MustGen, Other, bc#121)
stress/singleton-scope-then-overwrite.js.ftl-eager:  241:<!0:->	KillStack(MustGen, loc8, W:SideState, bc#121)
stress/singleton-scope-then-overwrite.js.ftl-eager:  107:<!0:->	MovHint(@2, MustGen, loc8, W:SideState, bc#121)
stress/singleton-scope-then-overwrite.js.ftl-eager:  108:<!0:->	Check(MustGen, bc#121, exit: bc#124)
stress/singleton-scope-then-overwrite.js.ftl-eager:  109:<!0:->	Check(MustGen, Int32, bc#124)
stress/singleton-scope-then-overwrite.js.ftl-eager:  242:<!0:->	KillStack(MustGen, loc7, W:SideState, bc#124)
stress/singleton-scope-then-overwrite.js.ftl-eager:  110:<!0:->	MovHint(@25, MustGen, loc7, W:SideState, bc#124)
stress/singleton-scope-then-overwrite.js.ftl-eager:  111:<!0:->	Check(MustGen, bc#124, exit: bc#127)
stress/singleton-scope-then-overwrite.js.ftl-eager:  112:<!0:->	ForceOSRExit(MustGen, W:SideState, bc#127)
stress/singleton-scope-then-overwrite.js.ftl-eager:  113:<!0:->	Call(@31, @2, @25, JS|MustGen|VarArgs|UseAsOther, R:World, W:Heap, bc#127)  predicting None
stress/singleton-scope-then-overwrite.js.ftl-eager:  243:<!0:->	KillStack(MustGen, loc4, W:SideState, bc#127)
stress/singleton-scope-then-overwrite.js.ftl-eager:  114:<!0:->	MovHint(@113, MustGen, loc4, W:SideState, bc#127)
stress/singleton-scope-then-overwrite.js.ftl-eager:  159:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#127, exit: bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  115:<!0:->	Check(MustGen, bc#127, exit: bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  116:< 1:->	JSConstant(JS|UseAsOther, Int32, Int32: 1000, bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  117:<!0:->	CompareEq(@113, @116, Boolean|MustGen|UseAsOther, Bool, R:World, W:Heap, bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  118:< 1:->	LogicalNot(Check:Boolean:@117, Boolean|UseAsOther, Bool, bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  244:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  119:<!0:->	MovHint(@118, MustGen, loc5, W:SideState, bc#136)
stress/singleton-scope-then-overwrite.js.ftl-eager:  160:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#136, exit: bc#140)
stress/singleton-scope-then-overwrite.js.ftl-eager:  120:<!0:->	Check(MustGen, bc#136, exit: bc#140)
stress/singleton-scope-then-overwrite.js.ftl-eager:  121:<!0:->	Branch(Check:Boolean:@118, MustGen, T:#6/w:1.000000, F:#7/w:1.000000, W:SideState, bc#140)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched, CFAInvalidated
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #6 (bc#143):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 1.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #5
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors:
stress/singletonPASS: stress/singleton-scope-then-overwrite.js.no-cjit-validate-phases
-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2 #4 #5 #6
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #6
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched, CurrentlyCFAUnreachable, CFAUnreachable
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:  122:< 1:->	JSConstant(JS|UseAsOther, Stringident, Strong:String (atomic) (identifier): Error: bad result: , ID: 4, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  123:<!0:->	Check(MustGen, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  154:<!0:->	Check(Check:String:@122, MustGen, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  155:<!0:->	ToPrimitive(@113, JS|MustGen|PureInt, R:World, W:Heap, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  156:<!0:->	ToString(@155, JS|MustGen|PureInt, String, R:World, W:Heap, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  124:< 1:->	MakeRope(Check:KnownString:@122, Check:KnownString:@156, JS|PureInt, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  245:<!0:->	KillStack(MustGen, loc5, W:SideState, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  125:<!0:->	MovHint(@124, MustGen, loc5, W:SideState, bc#143)
stress/singleton-scope-then-overwrite.js.ftl-eager:  157:<!0:->	InvalidationPoint(MustGen, W:SideState, bc#143, exit: bc#148)
stress/singleton-scope-then-overwrite.js.ftl-eager:  126:<!0:->	Check(MustGen, bc#143, exit: bc#148)
stress/singleton-scope-then-overwrite.js.ftl-eager:  127:<!0:->	Throw(@124, MustGen, W:SideState, bc#148)
stress/singleton-scope-then-overwrite.js.ftl-eager:  128:<!0:->	Check(MustGen, bc#148)
stress/singleton-scope-then-overwrite.js.ftl-eager:  129:<!0:->	Unreachable(MustGen, W:SideState, bc#148)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Block #7 (bc#150):
stress/singleton-scope-then-overwrite.js.ftl-eager:   Execution count: 1.000000
stress/singleton-scope-then-overwrite.js.ftl-eager:   Predecessors: #5
stress/singleton-scope-then-overwrite.js.ftl-eager:   Successors:
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominated by: #0 #2 #4 #5 #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominates: #7
stress/singleton-scope-then-overwrite.js.ftl-eager:   Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Iterated Dominance Frontier: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: StructuresAreWatched, CurrentlyCFAUnreachable, CFAUnreachable
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager:  130:<!0:->	Check(MustGen, Other, bc#150)
stress/singleton-scope-then-overwrite.js.ftl-eager:  131:<!0:->	Return(@2, MustGen, W:SideState, bc#150)
stress/singleton-scope-then-overwrite.js.ftl-eager:  132:<!0:->	Check(MustGen, bc#150)
stress/singleton-scope-then-overwrite.js.ftl-eager:   States: InvalidBranchDirection, StructuresAreWatched
stress/singleton-scope-then-overwrite.js.ftl-eager:   Availability: {locals = arg1:DeadFlush/Undecided arg0:DeadFlush/Undecided loc0:DeadFlush/Undecided loc1:DeadFlush/Undecided loc2:DeadFlush/Undecided loc3:DeadFlush/Undecided loc4:DeadFlush/Undecided loc5:DeadFlush/Undecided loc6:DeadFlush/Undecided loc7:DeadFlush/Undecided loc8:DeadFlush/Undecided loc9:DeadFlush/Undecided loc10:DeadFlush/Undecided loc11:DeadFlush/Undecided loc12:DeadFlush/Undecided loc13:DeadFlush/Undecided; heap = }
stress/singleton-scope-then-overwrite.js.ftl-eager:   Live: 
stress/singleton-scope-then-overwrite.js.ftl-eager:   Values: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: Structures:
stress/singleton-scope-then-overwrite.js.ftl-eager:     %Ao:Function = 0x10c036c60:[Function, {name:100, length:101}, NonArray, Proto:0x10c045e20]
stress/singleton-scope-then-overwrite.js.ftl-eager:     %EQ:Function = 0x10c036e20:[Function, {}, NonArray, Proto:0x10c045e20]
stress/singleton-scope-then-overwrite.js.ftl-eager:     %ET:global   = 0x10c050a40:[global, {parseInt:100, Object:101, Function:102, Array:103, RegExp:104, EvalError:105, RangeError:106, ReferenceError:107, SyntaxError:108, TypeError:109, URIError:110, Promise:111, Set:112, Map:113, Date:114, String:115, Boolean:116, Number:117, Error:118, ArrayBuffer:119, WeakMap:120, WeakSet:121, Symbol:122, eval:123, JSON:124, Math:125, DataView:126, Float64Array:127, Float32Array:128, Uint32Array:129, Int32Array:130, Uint16Array:131, Int16Array:132, Uint8ClampedArray:133, Uint8Array:134, Int8Array:135, console:136, debug:137, describe:138, describeArray:139, print:140, quit:141, gc:142, fullGC:143, edenGC:144, gcHeapSize:145, deleteAllCompiledCode:146, dumpCallFrame:147, releaseExecutableMemory:148, version:149, run:150, load:151, readFile:152, checkSyntax:153, jscStack:154, readline:155, preciseTime:156, neverInlineFunction:157, noInline:158, numberOfDFGCompiles:159, optimizeNextInvocation:160, reoptimizationRetryCount:161, transferArrayBuffer:162, Root:163, Element:164, getElement:165, setElementRoot:166, DFGTrue:167, OSRExit:168, isFinalTier:169, predictInt32:170, isInt32:171, fiatInt52:172, effectful42:173, makeMasquerader:174, hasCustomProperties:175, createProxy:176, createRuntimeArray:177, createImpureGetter:178, setImpureGetterDelegate:179, dumpTypesForAllVariables:180, findTypeForExpression:181, returnTypeFor:182, dumpBasicBlockExecutionRanges:183, hasBasicBlockExecuted:184, enableExceptionFuzz:185, arguments:186}, NonArray, Proto:0x10c077ff0]
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: 
stress/singleton-scope-then-overwrite.js.ftl-eager: DFG ASSERTION FAILED: !iterate()
stress/singleton-scope-then-overwrite.js.ftl-eager: /Volumes/Data/primary/OpenSource/Source/JavaScriptCore/dfg/DFGCSEPhase.cpp(399) : bool JSC::DFG::<anonymous namespace>::GlobalCSEPhase::run()
stress/singleton-scope-then-overwrite.js.ftl-eager: 1   0x108ae5c50 WTFCrashWithSecurityImplication
stress/singleton-scope-then-overwrite.js.ftl-eager: 2   0x1083725b3 JSC::DFG::crash(JSC::DFG::Graph&, WTF::CString const&, char const*, int, char const*, char const*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 3   0x1083724b9 JSC::DFG::Graph::handleAssertionFailure(std::nullptr_t, char const*, int, char const*, char const*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 4   0x1082f51f6 JSC::DFG::(anonymous namespace)::GlobalCSEPhase::run()
stress/singleton-scope-then-overwrite.js.ftl-eager: 5   0x1082f4b15 bool JSC::DFG::runAndLog<JSC::DFG::(anonymous namespace)::GlobalCSEPhase>(JSC::DFG::(anonymous namespace)::GlobalCSEPhase&)
stress/singleton-scope-then-overwrite.js.ftl-eager: 6   0x1082f4a9e bool JSC::DFG::runPhase<JSC::DFG::(anonymous namespace)::GlobalCSEPhase>(JSC::DFG::Graph&)
stress/singleton-scope-then-overwrite.js.ftl-eager: 7   0x1082f4a58 JSC::DFG::performGlobalCSE(JSC::DFG::Graph&)
stress/singleton-scope-then-overwrite.js.ftl-eager: 8   0x10840f8c9 JSC::DFG::Plan::compileInThreadImpl(JSC::DFG::LongLivedState&)
stress/singleton-scope-then-overwrite.js.ftl-eager: 9   0x10840e401 JSC::DFG::Plan::compileInThread(JSC::DFG::LongLivedState&, JSC::DFG::ThreadData*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 10  0x1084e1160 JSC::DFG::Worklist::runThread(JSC::DFG::ThreadData*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 11  0x1084df744 JSC::DFG::Worklist::threadFunction(void*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 12  0x108b3e109 WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const
stress/singleton-scope-then-overwrite.js.ftl-eager: 13  0x108b3e0dc std::__1::__function::__func<WTF::createThread(void (*)(void*), void*, char const*)::$_0, std::__1::allocator<WTF::createThread(void (*)(void*), void*, char const*)::$_0>, void ()>::operator()()
stress/singleton-scope-then-overwrite.js.ftl-eager: 14  0x10860675a std::__1::function<void ()>::operator()() const
stress/singleton-scope-then-overwrite.js.ftl-eager: 15  0x108b3d05e WTF::threadEntryPoint(void*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 16  0x108b3ea38 WTF::wtfThreadEntryPoint(void*)
stress/singleton-scope-then-overwrite.js.ftl-eager: 17  0x7fff871bb268 _pthread_body
stress/singleton-scope-then-overwrite.js.ftl-eager: 18  0x7fff871bb1e5 _pthread_body
stress/singleton-scope-then-overwrite.js.ftl-eager: 19  0x7fff871b941d thread_start
stress/singleton-scope-then-overwrite.js.ftl-eager: test_script_20: line 2: 41915 Segmentation fault: 11  "$@" ../../.vm/JavaScriptCore.framework/Resources/jsc --useFTLJIT\=false --enableFunctionDotArguments\=true --useFTLJIT\=true --ftlCrashesIfCantInitializeLLVM\=true --thresholdForJITAfterWarmUp\=10 --thresholdForJITSoon\=10 --thresholdForOptimizeAfterWarmUp\=20 --thresholdForOptimizeAfterLongWarmUp\=20 --thresholdForOptimizeSoon\=20 --thresholdForFTLOptimizeAfterWarmUp\=20 --thresholdForFTLOptimizeSoon\=20 --maximumEvalCacheableSourceLength\=150000 singleton-scope-then-overwrite.js
stress/singleton-scope-then-overwrite.js.ftl-eager: ERROR: Unexpected exit code: 139
Comment 1 Filip Pizlo 2015-07-02 15:47:24 PDT
We removed this assert.  I don't remember when we did that.
Comment 2 Basile Clement 2015-07-02 15:51:16 PDT
(In reply to comment #1)
> We removed this assert.  I don't remember when we did that.

For the record, this was removed in http://trac.webkit.org/changeset/185427 (tracked by https://bugs.webkit.org/show_bug.cgi?id=145853 )
Comment 3 Filip Pizlo 2015-07-02 15:54:23 PDT

*** This bug has been marked as a duplicate of bug 145853 ***