You probably want to take a look at this CL that I will (re)land today. You may have to do a bit of refactoring (you want the code dependency machinery of the
PropertyCell, but you don't actually want a PropertyCell class, maybe an
intermediate class "CodeDependentCell"?) but then you can completely eliminate the HCheckFunction checks. But perhaps you might want to do that in a follow-on
CL.

https://codereview.chromium.org/16925008/



https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc
File src/hydrogen.cc (right):

https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc#newcode8334
src/hydrogen.cc:8334: HInstruction* cell_instruction =
AddInstruction(new(zone()) HConstant(
Use Add<HConstant>

https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc#newcode8339
src/hydrogen.cc:8339: Representation::Smi()));
Any reason to not use Add<HLoadNamedField>(cell_instruction,
HObjectAccess::ForPropertyCellValue())

https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc#newcode8346
src/hydrogen.cc:8346: cell_check.IfCompare(feedback_instruction,
cell_value, Token::EQ);
If<CompareObjectEqAndBranch>(....

https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc#newcode8353
src/hydrogen.cc:8353: Add<HCheckFunction>(constructor, array_function);
I think you can use the magical mystery CodeDependencies that I am going
to introduce here to eliminate this function check here.

https://codereview.chromium.org/18689004/diff/2001/src/hydrogen.cc#newcode8430
src/hydrogen.cc:8430: Add<HCheckFunction>(constructor, array_function);
I think you can use the magical mystery CodeDependencies that I am going
to introduce here to eliminate this function check here.

https://codereview.chromium.org/18689004/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to