Eliminate ArrayData::lvalSilent
commit88d1fb3e547f79410adb0161e4fb76837dbc170a
authorShaunak Kishore <kshaunak@fb.com>
Fri, 3 Apr 2020 05:31:38 +0000 (2 22:31 -0700)
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>
Fri, 3 Apr 2020 05:44:50 +0000 (2 22:44 -0700)
tree74f987636c67f71e710847ba47eda467603468f4
parentc723c30e5135ffaa1f3ac29967e6dd93ffb77e8b
Eliminate ArrayData::lvalSilent

Summary: This method is only used to implement lvalForce, which is cold (only for dynamic props and in a few extensions). Re-implement lvalForce in terms of other ops and eliminate LvalSilent from the interface. If we care to optimize, we can implement lvalForce for MixedArrays, specifically.

Reviewed By: ricklavoie

Differential Revision: D20824936

fbshipit-source-id: fb5803718cefe02355fb0016e9e3c9fb815c5181
19 files changed:
hphp/runtime/base/apc-local-array.cpp
hphp/runtime/base/apc-local-array.h
hphp/runtime/base/array-data-defs.h
hphp/runtime/base/array-data.cpp
hphp/runtime/base/array-data.h
hphp/runtime/base/empty-array.cpp
hphp/runtime/base/empty-array.h
hphp/runtime/base/mixed-array.cpp
hphp/runtime/base/mixed-array.h
hphp/runtime/base/packed-array.cpp
hphp/runtime/base/packed-array.h
hphp/runtime/base/record-array.cpp
hphp/runtime/base/record-array.h
hphp/runtime/base/set-array.h
hphp/runtime/base/type-array.cpp
hphp/runtime/base/type-array.h
hphp/runtime/vm/globals-array.cpp
hphp/runtime/vm/globals-array.h
hphp/runtime/vm/member-operations.h