Summary: public
Bad typo in `RCTProfile.m`, was using `__x86__` instead of the right one `__i386__`.
Reviewed By: jspahrsummers
Differential Revision: D2690557
fb-gh-sync-id: 537eb0502f5df22cd93665cabfddeead12cad9db
Summary: public
`%xmm` registers weren't being preserved what would cause eventual weird issues
for methods using floats / doubles / etc.
Reviewed By: jspahrsummers
Differential Revision: D2581358
fb-gh-sync-id: 701498def0f05716c665f4749e5154b828bf41ec
Summary: public
I was using `dlsym` as a more elegant way of checking if the function was defined
to prevent crashes if running on an unsupported architecture, but Xcode might
strip the symbol, even with `.no_dead_strip`, if there's no references to the
compilation unit at all.
Replace it with an ugly `#if` that checks if it's any of the supported targets
and extern the function prototype.
Reviewed By: jspahrsummers
Differential Revision: D2581143
fb-gh-sync-id: b004ed351de97f96c04b4a6c914ce55cfcbbbcbb
Summary: public
The profiler overrides all the methods of all the BridgeModules, and in order to
`start` and `end` the profiler at the function invocation time it used `NSInvocation`,
which is slow.
Replace it with a simple assembly method based on `objc_msgSend`.
Reviewed By: jspahrsummers
Differential Revision: D2550807
fb-gh-sync-id: 88ca08f9d6bfcd3035bda9304c93566c8818b46f