Title: Interpreter generator should emit code closer to pure C · Issue #102305 · python/cpython · GitHub
Open Graph Title: Interpreter generator should emit code closer to pure C · Issue #102305 · python/cpython
X Title: Interpreter generator should emit code closer to pure C · Issue #102305 · python/cpython
Description: Rather than emitting macros such as DISPATCH, POKE, TARGET etc, it would be useful if the code generator emitted something closer to plain C. Some macros will still be needed for portability. Doing so would make the overhead in dispatch ...
Open Graph Description: Rather than emitting macros such as DISPATCH, POKE, TARGET etc, it would be useful if the code generator emitted something closer to plain C. Some macros will still be needed for portability. Doing...
X Description: Rather than emitting macros such as DISPATCH, POKE, TARGET etc, it would be useful if the code generator emitted something closer to plain C. Some macros will still be needed for portability. Doing...
Opengraph URL: https://github.com/python/cpython/issues/102305
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Interpreter generator should emit code closer to pure C","articleBody":"Rather than emitting macros such as `DISPATCH`, `POKE`, `TARGET` etc, it would be useful if the code generator emitted something closer to plain C. Some macros will still be needed for portability.\r\n\r\nDoing so would make the overhead in dispatch explicit and expose redundancies that can be eliminated.\r\nFor example, not all instructions need to save `frame-\u003eprev_instr`, but all do because the assignment is hidden in a macro.\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-102309\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/markshannon","@type":"Person","name":"markshannon"},"datePublished":"2023-02-27T18:24:07.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":5},"url":"https://github.com/102305/cpython/issues/102305"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:fcfff519-1057-e51e-de05-daece6ff68bb |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | CDFE:36C7A:7906EA:A1F29E:6969794E |
| html-safe-nonce | caa1c486f47bc6abff83324ce1f9b42bdc40874bb0de1ef79e80489d021dbb6f |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDREZFOjM2QzdBOjc5MDZFQTpBMUYyOUU6Njk2OTc5NEUiLCJ2aXNpdG9yX2lkIjoiMjU5Mjk5NzE3OTk5ODY5NzgwNiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 936cbd5b469ede309dfdd64803789494ab9a0bfe617dc986968cc42966fa4142 |
| hovercard-subject-tag | issue:1601725750 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/102305/issue_layout |
| twitter:image | https://opengraph.githubassets.com/45d9bc1817013e26edbaed9b298e823d48d68b8cc717a5e259fe77313ca6f5fe/python/cpython/issues/102305 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/45d9bc1817013e26edbaed9b298e823d48d68b8cc717a5e259fe77313ca6f5fe/python/cpython/issues/102305 |
| og:image:alt | Rather than emitting macros such as DISPATCH, POKE, TARGET etc, it would be useful if the code generator emitted something closer to plain C. Some macros will still be needed for portability. Doing... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | markshannon |
| hostname | github.com |
| expected-hostname | github.com |
| None | c6f193beb8ff08443adc07685d75302ab8aaf0a135f6e251c3ff3112c8deb881 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 212e3e3d3298bf5b313830edfd2399e869f7ea76 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width