Displaying 2 results from an estimated 2 matches for "isderived".
Did you mean:
derived
2016 Jan 28
8
Proposal: virtual constant propagation
...was
a large number of virtual calls, each requiring the overhead of a control
flow integrity check.
We took a closer look at the hottest virtual call sites, and found that they
were mostly type checking functions of the following form:
struct Base {
enum Type { kBase, kDerived };
virtual bool isDerived() const { return false; } // or:
virtual bool isOfType(Type t) const { return t == kBase; }
};
struct Derived : Base {
virtual bool isDerived() const { return true; }
virtual bool isOfType(Type t) const { return t == kDerived; }
};
bool f(Base *b) {
return b->isDerived();
}
bool g(Base...
2016 Jan 28
2
Proposal: virtual constant propagation
...a control
>> flow integrity check.
>>
>> We took a closer look at the hottest virtual call sites, and found that they
>> were mostly type checking functions of the following form:
>>
>> struct Base {
>> enum Type { kBase, kDerived };
>> virtual bool isDerived() const { return false; } // or:
>> virtual bool isOfType(Type t) const { return t == kBase; }
>> };
>> struct Derived : Base {
>> virtual bool isDerived() const { return true; }
>> virtual bool isOfType(Type t) const { return t == kDerived; }
>> };
>>
>...