Skip to content

Tags: facebook/hermes

Tags

hermes-2025-03-03-RNv0.79.0-bc17d964d03743424823d7dd1a9f37633459c5c5

Deploy 0.262.0 to xplat

Summary:
X-link: facebook/react-native#49708

Changelog: [Internal]

Reviewed By: SamChou19815

Differential Revision: D70277654

fbshipit-source-id: e215e392aa6e06181f2df03ce8b9b873807f3b86

hermes-2025-02-06-RNv0.75.5-53ff6df3af18e250c29a74f34273f50dbfa410dc

Unverified

This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
Implement more missing methods on WithRuntimeDecorator

Summary:
X-link: facebook/react-native#45049

WithRuntimeDecorator is missing many methods that were added after it.
Add implementations for them.

The underlying issue here is that because this inherits from
RuntimeDecorator, which implements all methods, there is no compilation
error for this runtime when we add new methods.

Changelog:
[GENERAL] [FIXED] - Add missing methods to the WithRuntimeDecorator class.

Reviewed By: avp

Differential Revision: D58752127

fbshipit-source-id: d80b4ed1c38698ed3850d0cd961bf7ddde2449a0

hermes-2025-01-13-RNv0.78.0-a942ef374897d85da38e9c8904574f8376555388

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

hermes-2024-11-25-RNv0.77.0-d4f25d534ab744866448b36ca3bf3d97c08e638c

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

hermes-2024-11-12-RNv0.76.2-5b4aa20c719830dcf5684832b89a6edb95ac3d64

Revert "Disable DateTimeFormat::formatToParts for Apple platform (#1155…

…)"

This reverts commit c5a633f.

hermes-2024-09-30-RNv0.74.6-6f503f52cbf98b2b37c4d3900e7f1193d6512548

Recycle block local registers in fast pass (#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 #1448

Reviewed By: avp

Differential Revision: D60241766

fbshipit-source-id: 5196333862517cd546d675cf8fe005eb1ed5a790

hermes-2024-09-09-RNv0.76.0-db6d12e202e15f7a446d8848d6ca8f7abb3cfb32

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 #1496

Reviewed By: fbmal7

Differential Revision: D62357838

fbshipit-source-id: 3873bfd8bcb5c16998dbec67f44ad4c098179758

hermes-2024-08-19-RNv0.72.17-8db50ff842863990bff1f2ec6e982ccbffbc0e14

Unverified

This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
[LOCAL] Migrate to M1 machines

v0.13.0

Unverified

The email in this signature doesn’t match the committer email.
Recycle block local registers in fast pass (#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 #1448

Reviewed By: avp

Differential Revision: D60241766

fbshipit-source-id: 5196333862517cd546d675cf8fe005eb1ed5a790

hermes-2024-08-15-RNv0.75.1-4b3bf912cc0f705b51b71ce1a5b8bd79b93a451b

Unverified

The email in this signature doesn’t match the committer email.
Recycle block local registers in fast pass (#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 #1448

Reviewed By: avp

Differential Revision: D60241766

fbshipit-source-id: 5196333862517cd546d675cf8fe005eb1ed5a790