Tags: fbmal7/hermes-v0.13.0
Tags
Recycle block local registers in fast pass (facebook#1448) Summary: Original Author: [email protected] Original Git: 6b69a06 Original Reviewed By: avp Original Revision: D59072005 The register allocator has the ability to honour a memory limit that is proportional to the product of the number of instructions and basic blocks in the function being allocated. Unfortunately, functions that hit this limit by definition have a lot of instructions Even in the most degenerate case where every block has one instruction, you need 4000 instructions to hit the 10M limit. This diff tries to improve the quality of generated code in cases where most values are used within the basic block they are defined in. In such cases, we currently make the register available after the end of the block. With this diff, the registers become available after their last use in the block. This is useful for functions with extremely large basic blocks, where the current approach would end up allocating a huge number of registers since the registers cannot be used within the same block. Closes facebook#1448 Reviewed By: avp Differential Revision: D60241766 fbshipit-source-id: 5196333862517cd546d675cf8fe005eb1ed5a790
Add missing `WithRuntimeDecorator` methods Summary: This PR adds missing `WithRuntimeDecorator` methods related to `NativeState`. This pattern is used by reanimated to ensure no concurrent access to the runtime. Without this `override` the `RuntimeDecorator` implementation was used, bypassing our mutex. Changelog: [GENERAL] [FIXED] - Add missing `NativeState` methods to the `WithRuntimeDecorator` class. X-link: facebook/react-native#45042 Reviewed By: fbmal7 Differential Revision: D58744051 Pulled By: neildhar fbshipit-source-id: 3f5c85d0bf7cd6445d0c434ac4ae7ed54df203ba
Make queueMicrotask pure virtual (facebook#1337) Summary: X-link: facebook/react-native#43311 Pull Request resolved: facebook#1337 Changelog: [internal] We've done this in a separate diff because the changes in Hermes don't propagate immediately to the React Native repository. We need to land the changes in JSI and Hermes first (in a backwards-compatible way) and then land this in a separate commit to make the method mandatory. Reviewed By: neildhar Differential Revision: D54413830 fbshipit-source-id: 3b89fe0e6697b0019544b73daa89d932db97b63a
Revert "Disable DateTimeFormat::formatToParts for Apple platform (fac… …ebook#1155)" This reverts commit c5a633f.
Revert "Disable DateTimeFormat::formatToParts for Apple platform (fac… …ebook#1155)" This reverts commit c5a633f.
Removing API usage not applicable on iOS (stat and fstat) in libhermes Summary: This diff just removes references to functions that use (either directly or transitively) those functions, and relies on linker DCE to clean up the rest. Trying to extricate all uses of these functions would otherwise result in very significant changes. This diff makes two changes: 1. In raw_fd_ostream, fall back to a default buffer size when building for iOS. 2. Update a function in LLVM that was marked as "used" to suppress warnings, to instead use the new `[[maybe_unused]]` attribute. This allows the function, and the calls to stat it retains, to be stripped. Reviewed By: tmikov, TheSavior Differential Revision: D53133166 fbshipit-source-id: f425762bc6b7072cbd8235c65e9cf652cecb981c
Removing API usage not applicable on iOS (stat and fstat) in libhermes Summary: This diff just removes references to functions that use (either directly or transitively) those functions, and relies on linker DCE to clean up the rest. Trying to extricate all uses of these functions would otherwise result in very significant changes. This diff makes two changes: 1. In raw_fd_ostream, fall back to a default buffer size when building for iOS. 2. Update a function in LLVM that was marked as "used" to suppress warnings, to instead use the new `[[maybe_unused]]` attribute. This allows the function, and the calls to stat it retains, to be stripped. Reviewed By: tmikov, TheSavior Differential Revision: D53133166 fbshipit-source-id: f425762bc6b7072cbd8235c65e9cf652cecb981c
Removing API usage not applicable on iOS (stat and fstat) in libhermes Summary: This diff just removes references to functions that use (either directly or transitively) those functions, and relies on linker DCE to clean up the rest. Trying to extricate all uses of these functions would otherwise result in very significant changes. This diff makes two changes: 1. In raw_fd_ostream, fall back to a default buffer size when building for iOS. 2. Update a function in LLVM that was marked as "used" to suppress warnings, to instead use the new `[[maybe_unused]]` attribute. This allows the function, and the calls to stat it retains, to be stripped. Reviewed By: tmikov, TheSavior Differential Revision: D53133166 fbshipit-source-id: f425762bc6b7072cbd8235c65e9cf652cecb981c
JSON encode remote object strings Summary: Backports D56031659 from `CDPAgent` to `CDPHandler` in order to fix a visible regression from RN 0.72 --> 0.73 (which introduced the breakage in `CDPHandler`). Reviewed By: mattbfb Differential Revision: D56417968 fbshipit-source-id: 04e9ae17c83b1acf1960767efb81aa8b1ac34345
JSON encode remote object strings Summary: Backports D56031659 from `CDPAgent` to `CDPHandler` in order to fix a visible regression from RN 0.72 --> 0.73 (which introduced the breakage in `CDPHandler`). Reviewed By: mattbfb Differential Revision: D56417968 fbshipit-source-id: 04e9ae17c83b1acf1960767efb81aa8b1ac34345
PreviousNext