Dumping FTL ExitValue should expand materializations only once
Created attachment 252600 [details] Patch
Before: Exit values: arg2:InJSStack:arg2 arg1:InJSStack:arg1 arg0:InJSStack:this loc0:Constant(Cell: 0x11204f880 (%A0:global), ID: 377) loc1:Dead loc2:Materialize(0x113fe3ea0:PhantomNewObject(NamedPropertyPLoc(0) => Materialize(0x113fe3ed0:PhantomNewObject(StructurePLoc(0) => Constant(Structure: 0x11208f910:[Object, {}, NonArray, Proto:0x112077ff0], ID: 1))), StructurePLoc(0) => Constant(Structure: 0x11208d4c0:[Object, {a:0}, NonArray, Proto:0x112077ff0], ID: 1))) loc3:Dead loc4:Dead loc5:Dead loc6:Dead loc7:Dead loc8:Dead loc9:Dead After: Exit values: arg2:InJSStack:arg2 arg1:InJSStack:arg1 arg0:InJSStack:this loc0:Constant(Cell: 0x10804f880 (%B6:global), ID: 377) loc1:Dead loc2:Materialize(0x109fe3ea0:..) loc3:Dead loc4:Dead loc5:Dead loc6:Dead loc7:Dead loc8:Dead loc9:Dead Materializations: Materialize(0x109fe3ed0:PhantomNewObject(StructurePLoc(0) => Constant(Structure: 0x10808f910:[Object, {}, NonArray, Proto:0x108077ff0], ID: 1))) Materialize(0x109fe3ea0:PhantomNewObject(NamedPropertyPLoc(0) => Materialize(0x109fe3ed0:..), StructurePLoc(0) => Constant(Structure: 0x10808d4c0:[Object, {a:0}, NonArray, Proto:0x108077ff0], ID: 1)))
Comment on attachment 252600 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=252600&action=review > Source/JavaScriptCore/ftl/FTLCompile.cpp:399 > + dataLog(" Materializations: \n"); Maybe change this to not print the "Materializations:" line if exit.m_materializations.isEmpty() > Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp:7990 > + dataLog(" Materializations: \n"); Ditto.
(In reply to comment #3) > Comment on attachment 252600 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=252600&action=review > > > Source/JavaScriptCore/ftl/FTLCompile.cpp:399 > > + dataLog(" Materializations: \n"); > > Maybe change this to not print the "Materializations:" line if > exit.m_materializations.isEmpty() > > > Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp:7990 > > + dataLog(" Materializations: \n"); > > Ditto. Makes sense, adding that before landing.
Committed r183939: <http://trac.webkit.org/changeset/183939>
Missing braces fixed in r183944 <http://trac.webkit.org/changeset/183944>