05.11.2016 Views

Pegasus and Nation-State Level Attacks

eu-16-Bazaliy-Mobile-Espionage-in-the-Wild-Pegasus-and-Nation-State-Level-Attacks

eu-16-Bazaliy-Mobile-Espionage-in-the-Wild-Pegasus-and-Nation-State-Level-Attacks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MarkedArgumentBuffer internals<br />

class MarkedArgumentBuffer {<br />

static const size_t inlineCapacity = 8;<br />

public:<br />

MarkedArgumentBuffer()<br />

: m_size(0)<br />

, m_capacity(inlineCapacity)<br />

...<br />

int m_size;<br />

int m_capacity;<br />

...<br />

Size of inline stack<br />

buffer is 8<br />

void append(JSValue v) {<br />

if (m_size >= m_capacity)<br />

return slowAppend(v);<br />

}<br />

Move buffer to the heap<br />

on 9-th iteration<br />

slotFor(m_size) = JSValue::encode(v);<br />

++m_size;<br />

Source http://opensource.apple.com/source/JavaScriptCore/JavaScriptCore-7601.6.13/runtime/ArgList.h

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!