Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pass the pointer of owning object in GCHermesValueBase::set() #1512

Open
wants to merge 14 commits into
base: static_h
Choose a base branch
from

Conversation

lavenzg
Copy link
Contributor

@lavenzg lavenzg commented Sep 6, 2024

Summary:
Add this parameter so that it could be passed to write barrier function
in following diffs. For not it's unused.

We don't create a overload or make a default parameter value because
it's error prone: new code may call wrong functions (unless reasoning
whether the object lives in normal segment or large segment), or forget
to update existing calls. It's actually easier to just always pass in
the owning object pointer, which in most cases is obvious to get.

Differential Revision: D62196480

@facebook-github-bot facebook-github-bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Sep 6, 2024
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

lavenzg added a commit to lavenzg/hermes that referenced this pull request Nov 8, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from e9b3ca5 to a64eb4b Compare November 8, 2024 01:19
lavenzg added a commit to lavenzg/hermes that referenced this pull request Nov 14, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from a64eb4b to 8e20882 Compare November 14, 2024 21:13
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

1 similar comment
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

lavenzg added a commit to lavenzg/hermes that referenced this pull request Nov 21, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from 8e20882 to 2940a2c Compare November 21, 2024 19:16
lavenzg added a commit to lavenzg/hermes that referenced this pull request Nov 23, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from 2940a2c to 9795500 Compare November 23, 2024 00:00
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

1 similar comment
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

lavenzg added a commit to lavenzg/hermes that referenced this pull request Nov 28, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from 9795500 to c2647ef Compare November 28, 2024 01:27
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from c2647ef to 5e185a1 Compare December 2, 2024 18:21
lavenzg added a commit to lavenzg/hermes that referenced this pull request Dec 2, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
lavenzg added a commit to lavenzg/hermes that referenced this pull request Dec 10, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from 5e185a1 to d18b763 Compare December 10, 2024 23:58
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

1 similar comment
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

lavenzg added a commit to lavenzg/hermes that referenced this pull request Dec 22, 2024
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from d18b763 to 03b0589 Compare December 22, 2024 07:20
Differential Revision: D61675022
…er (facebook#1504)

Summary:
Pull Request resolved: facebook#1504

Large segment needs to be backed by a large storage size.
StorageProvider currently always allocate fixed size of storage
determined by HERMESVM_LOG_HEAP_SEGMENT_SIZE.

This diffs adds support of allocating larger storage with below
changes:
1. `newStorage()` and `deleteStorage()` takes additional `sz` parameter.
2. For `MallocStorageProvider` and `VMAllocateStorageProvider`, simply
change the previous fixed storage size to passed in `sz`.
3. For `ContiguousVAStorageProvider`, use a BitVector to manage
allocations and deallocations. This can be improved later if we observe
fragmentations.

The support of enabling different sizes of heap segment will be added
later.

Differential Revision: D61676721
Differential Revision: D61807366
…ize in base calss

Differential Revision: D65828323
…s to AlignedHeapSegmentBase

Differential Revision: D64713261
Differential Revision: D65638502
Differential Revision: D62171114
…ers (facebook#1513)

Summary: Pull Request resolved: facebook#1513

Differential Revision: D62169632
… start address

Differential Revision: D67481895
…ok#1512)

Summary:
Pull Request resolved: facebook#1512

This variant will be used by write barriers that support large
allocation in following diffs.

Differential Revision: D62196480
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D62196480

@lavenzg lavenzg force-pushed the export-D62196480-to-static_h branch from 03b0589 to 67dd50c Compare December 26, 2024 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed Do not delete this pull request or issue due to inactivity. fb-exported
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants