WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED DUPLICATE of
bug 145853
145153
GCSE asserts re-running itself is useless, while it apparently may not be the case
https://bugs.webkit.org/show_bug.cgi?id=145153
Summary
GCSE asserts re-running itself is useless, while it apparently may not be the...
Basile Clement
Reported
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
Attachments
Add attachment
proposed patch, testcase, etc.
Filip Pizlo
Comment 1
2015-07-02 15:47:24 PDT
We removed this assert. I don't remember when we did that.
Basile Clement
Comment 2
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
)
Filip Pizlo
Comment 3
2015-07-02 15:54:23 PDT
*** This bug has been marked as a duplicate of
bug 145853
***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug