Tags: hoxyq/hermes
Tags
Add Hermes implementation for Object.create with prototype Summary: Adds the implementation `createObjectWithPrototype` JSI method for Hermes runtime. Grafted from 1053185886992b918021c4d2578a0807f797dd00 (D66487948) - Grafted path xplat/static_h to xplat/hermes Reviewed By: tmikov Differential Revision: D67412929 fbshipit-source-id: a283ffc775494f7df2bdcf9a91ada188b673c071
Deploy 0.254.2 to xplat Summary: X-link: facebook/react-native#47912 Changelog: [Internal] Reviewed By: SamChou19815 Differential Revision: D66379853 fbshipit-source-id: 3a7677c5a71ef74e509ed43be87e455aed0cbaa7
Revert "Disable DateTimeFormat::formatToParts for Apple platform (fac… …ebook#1155)" This reverts commit c5a633f.
Recycle block local registers in fast pass (facebook#1448) Summary: Original Author: neildhar@meta.com 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
JSError: look for stack data in the prototype chain Summary: Imported from static_h Original Author: tmikov@meta.com Original Git: 8b7a9f8 Original Reviewed By: avp Original Revision: D61870728 Look for stack data in the entire prototype chain in order to accommodate usage like the one in the test. See facebook#1496 Reviewed By: fbmal7 Differential Revision: D62357838 fbshipit-source-id: 3873bfd8bcb5c16998dbec67f44ad4c098179758
[LOCAL] Migrate to M1 machines
Recycle block local registers in fast pass (facebook#1448) Summary: Original Author: neildhar@meta.com 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
Recycle block local registers in fast pass (facebook#1448) Summary: Original Author: neildhar@meta.com 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
PreviousNext