mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
74a6dda7b8
When compiling with gcc 4.2 these functions get inlined, but then again, gcc 4.2 inlines almost anything. With clang, newer versions of gcc and msvc marking these functions with MOZ_ALWAYS_INLINE is a win. I assume part of the perf win gcc 4.5 and msvc get with pgo is from noticing these are hot and inlining them. Without PGO it is hard for the compiler to know that this is a win. With clang this does increase the codesize by about 6%. The wins from inlining are * Stack variables (rv in particular) which have their address taken and are passed as outparams to these functions can go in registers. * We find that nothing set mCcxToDestroy and ~XPCLazyCallContext (which is already inlined) can be simplified. |
||
---|---|---|
.. | ||
ductwork/debugger | ||
examples | ||
ipc | ||
jsd | ||
public | ||
src | ||
xpconnect |