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

[compiler] Refactor traverseFunction in Entrypoint #30084

Closed
wants to merge 2 commits into from

Conversation

gsathya
Copy link
Member

@gsathya gsathya commented Jun 25, 2024

Stack from ghstack (oldest at bottom):

Previously, we would traverse and compile a function and add the
compiled function to an array of compiled functions captured by context.

With this PR, rather than modifying the captured array, the compiled
result is returned. A small helper function is used to wrap this call
and update the array instead.

This change will let us reuse this traversal and compilation pipeline
for newly created functions (like when we outline jsx).

Previously, we would traverse and compile a function and add the
compiled function to an array of compiled functions captured by context.

With this PR, rather than modifying the captured array, the compiled
result is returned. A small helper function is used to wrap this call
and update the array instead.

This change will let us reuse this traversal and compilation pipeline
for newly created functions (like when we outline jsx).

[ghstack-poisoned]
Copy link

vercel bot commented Jun 25, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
react-compiler-playground ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 25, 2024 4:19pm

@react-sizebot
Copy link

react-sizebot commented Jun 25, 2024

Comparing: f5d2feb...79a5f1e

Critical size changes

Includes critical production bundles, as well as any change greater than 2%:

Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable/react-dom/cjs/react-dom.production.js = 6.68 kB 6.68 kB +0.11% 1.83 kB 1.83 kB
oss-stable/react-dom/cjs/react-dom-client.production.js = 497.93 kB 497.93 kB = 89.26 kB 89.26 kB
oss-experimental/react-dom/cjs/react-dom.production.js = 6.69 kB 6.69 kB +0.05% 1.83 kB 1.83 kB
oss-experimental/react-dom/cjs/react-dom-client.production.js = 502.75 kB 502.75 kB = 89.96 kB 89.96 kB
facebook-www/ReactDOM-prod.classic.js = 597.10 kB 597.10 kB = 105.31 kB 105.31 kB
facebook-www/ReactDOM-prod.modern.js = 571.44 kB 571.44 kB = 101.24 kB 101.24 kB
test_utils/ReactAllWarnings.js Deleted 62.88 kB 0.00 kB Deleted 15.69 kB 0.00 kB

Significant size changes

Includes any change greater than 0.2%:

Expand to show
Name +/- Base Current +/- gzip Base gzip Current gzip
test_utils/ReactAllWarnings.js Deleted 62.88 kB 0.00 kB Deleted 15.69 kB 0.00 kB

Generated by 🚫 dangerJS against 79a5f1e

Previously, we would traverse and compile a function and add the
compiled function to an array of compiled functions captured by context.

With this PR, rather than modifying the captured array, the compiled
result is returned. A small helper function is used to wrap this call
and update the array instead.

This change will let us reuse this traversal and compilation pipeline
for newly created functions (like when we outline jsx).

[ghstack-poisoned]
@gsathya gsathya closed this Jul 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants