Devirtualize nvGetCell()
ArrayData::nvGetCell was only called from one place in vectortranslator.cpp so hand-inline it there using nvGet(), which is already virtual.
Esse commit está contido em:
@@ -241,15 +241,6 @@ void PolicyArray::nvGetKey(TypedValue* out, ssize_t pos) const {
|
||||
new(out) Variant(key(toPos(pos)));
|
||||
}
|
||||
|
||||
template <class K>
|
||||
TypedValue* PolicyArray::nvGetCellImpl(K k) const {
|
||||
APILOG << "(" << keystr(k) << ")";
|
||||
auto const pos = find(k, m_size);
|
||||
return LIKELY(pos != PosType::invalid)
|
||||
? tvToCell(reinterpret_cast<TypedValue*>(&lval(pos)))
|
||||
: nvGetNotFound(k);
|
||||
}
|
||||
|
||||
// template <class K>
|
||||
// ssize_t PolicyArray::getIndexImpl(K k) const {
|
||||
// APILOG << "(" << keystr(k) << ")";
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário