CARVIEW |
Select Language
HTTP/2 200
date: Wed, 23 Jul 2025 23:38:29 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/chakra-core/ChakraCore.git
etag: W/"1b541333c57aec08e0cc72ab2d944cc3"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=qFRTtwvAN19QFHETGR1Zr4HMt8KYecLLAs%2FTbzbfJ9gfpxIValdYCdlVAvBD9q83uCIJ6V9TF96w7e7QSb21QmxxidBKwFvnZRnAQC6qnB1tl2%2FbgrBPMf8VcDTiY5V4sMHUX5RfF40jcywrc6P%2FT6kqO3Y02RIfLYsUdH6%2FdrD9nFRtBejQmj%2FB0e90Qg71kT16M4DxbE20vmtjyybHKEl7P%2BrBVBZ7MB76m90XNYmEqIaqrizkWDLa6zFAeiiaR3QdcrhX%2BVITdEO6hW29PA%3D%3D--PdtXIUlSRqxZM0FG--jmFL6N7%2BccWkc43rPECeqQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1011637998.1753313908; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:38:28 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:38:28 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 8DFC:36F97A:1175413:14F83B6:68817274
Enable globopt for functions with try finally · chakra-core/ChakraCore@82ff317 · GitHub
committedDismiss banner
Copy file name to clipboardExpand all lines: lib/Backend/BackwardPass.cpp
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit 82ff317

Meghana Gupta
Enable globopt for functions with try finally
This change enables globopt on functions with try finally.
We transform the flowgraph such that we have 2 flow edges -
try to a excepting finally region and try to non excepting finally region.
This enables us to optimize the function on the non exception path.
We bailout on the exception path.
Special handling is needed when there are early exits (break, continue, return) within the tryfinally.
We need to execute the finally block on early exit, currently we bailout on early exit.
We transform the flow graph from (eh region -> early exit) to have an edge from (eh region -> finally) and (finally -> early exit)
This transformation can be done only after the regions are assigned in FlowGraph.
So the flowgraph builder now has the following order of phase:
- build flow graph -> add the excepting and non excepting finallys alongside
- remove unreachable blocks
- assign regions
- identify early exits and add edges (does region info update when required)
- break blocks removal (does region info update when required)1 parent 2a51180 commit 82ff317Copy full SHA for 82ff317
File tree
Expand file treeCollapse file tree
41 files changed
+2480
-276
lines changedFilter options
- lib
- Backend
- amd64
- arm
- i386
- Common
- Runtime
- Base
- ByteCode
- Language
- Library/InJavascript
- test/EH
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Expand file treeCollapse file tree
41 files changed
+2480
-276
lines changedlib/Backend/BackwardPass.cpp
Copy file name to clipboardExpand all lines: lib/Backend/BackwardPass.cpp+16-15Lines changed: 16 additions & 15 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
48 | 48 |
| |
49 | 49 |
| |
50 | 50 |
| |
51 |
| - | |
| 51 | + | |
52 | 52 |
| |
53 | 53 |
| |
54 | 54 |
| |
| |||
114 | 114 |
| |
115 | 115 |
| |
116 | 116 |
| |
117 |
| - | |
| 117 | + | |
118 | 118 |
| |
119 | 119 |
| |
120 | 120 |
| |
| |||
1111 | 1111 |
| |
1112 | 1112 |
| |
1113 | 1113 |
| |
1114 |
| - | |
| 1114 | + | |
1115 | 1115 |
| |
1116 | 1116 |
| |
1117 | 1117 |
| |
| |||
1847 | 1847 |
| |
1848 | 1848 |
| |
1849 | 1849 |
| |
1850 |
| - | |
| 1850 | + | |
1851 | 1851 |
| |
1852 | 1852 |
| |
1853 | 1853 |
| |
| |||
2298 | 2298 |
| |
2299 | 2299 |
| |
2300 | 2300 |
| |
2301 |
| - | |
| 2301 | + | |
2302 | 2302 |
| |
2303 | 2303 |
| |
2304 | 2304 |
| |
| |||
2765 | 2765 |
| |
2766 | 2766 |
| |
2767 | 2767 |
| |
2768 |
| - | |
| 2768 | + | |
2769 | 2769 |
| |
2770 | 2770 |
| |
2771 | 2771 |
| |
| |||
2792 | 2792 |
| |
2793 | 2793 |
| |
2794 | 2794 |
| |
2795 |
| - | |
| 2795 | + | |
2796 | 2796 |
| |
2797 | 2797 |
| |
2798 | 2798 |
| |
2799 |
| - | |
| 2799 | + | |
2800 | 2800 |
| |
2801 | 2801 |
| |
2802 | 2802 |
| |
2803 |
| - | |
| 2803 | + | |
2804 | 2804 |
| |
2805 | 2805 |
| |
2806 | 2806 |
| |
| |||
2827 | 2827 |
| |
2828 | 2828 |
| |
2829 | 2829 |
| |
2830 |
| - | |
| 2830 | + | |
2831 | 2831 |
| |
2832 | 2832 |
| |
2833 | 2833 |
| |
| 2834 | + | |
2834 | 2835 |
| |
2835 | 2836 |
| |
2836 | 2837 |
| |
| |||
7496 | 7497 |
| |
7497 | 7498 |
| |
7498 | 7499 |
| |
7499 |
| - | |
| 7500 | + | |
7500 | 7501 |
| |
7501 | 7502 |
| |
7502 | 7503 |
| |
7503 | 7504 |
| |
7504 | 7505 |
| |
7505 |
| - | |
7506 |
| - | |
| 7506 | + | |
| 7507 | + | |
7507 | 7508 |
| |
7508 |
| - | |
| 7509 | + | |
7509 | 7510 |
| |
7510 | 7511 |
| |
7511 | 7512 |
| |
| |||
7550 | 7551 |
| |
7551 | 7552 |
| |
7552 | 7553 |
| |
7553 |
| - | |
| 7554 | + | |
7554 | 7555 |
| |
7555 | 7556 |
| |
7556 | 7557 |
| |
|
+2-2Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1050 | 1050 |
| |
1051 | 1051 |
| |
1052 | 1052 |
| |
1053 |
| - | |
| 1053 | + | |
1054 | 1054 |
| |
1055 | 1055 |
| |
1056 | 1056 |
| |
| |||
2708 | 2708 |
| |
2709 | 2709 |
| |
2710 | 2710 |
| |
2711 |
| - | |
| 2711 | + | |
2712 | 2712 |
| |
2713 | 2713 |
| |
2714 | 2714 |
| |
|
+1Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
46 | 46 |
| |
47 | 47 |
| |
48 | 48 |
| |
| 49 | + | |
49 | 50 |
| |
50 | 51 |
| |
51 | 52 |
| |
|
You can’t perform that action at this time.
0 commit comments