René's URL Explorer Experiment


Title: GH-98831: "Generate" the interpreter by gvanrossum · Pull Request #98830 · python/cpython · GitHub

Open Graph Title: GH-98831: "Generate" the interpreter by gvanrossum · Pull Request #98830 · python/cpython

X Title: GH-98831: "Generate" the interpreter by gvanrossum · Pull Request #98830 · python/cpython

Description: Overview This is the first stage of a project to generate the interpreter, in particular the cases of the main switch. The references below explain the why. This PR introduces the following: Two new files in the Python subdirectory, bytecodes.c and generated_cases.c.h. (UPDATE: cases.h -> generated_cases.c.h.) bytecodes.c contains instruction definitions. These almost look like the old switch cases, but instead of TARGET(INAME) { ... } they have inst(INAME, stack_effect) { ... }, and the DISPATCH() macro call at the end of the block can be omitted. (The stack effect is not yet used by the generator, and it is not always correct.) At the top and bottom of bytecodes.c is some dummy C code that makes look like valid C code to editors like VS Code. generated_cases.c.h is a generated file containing the switch cases. It is currently identical to the switch cases in ceval.c. A new bunch of tooling, in Tools/cases_generator. This includes: A temporary script, extract_cases.py, that extracts the cases from ceval.c and writes them, in the form of instruction definitions, to bytecodes.c. A script, generate_cases.py, that reads the instruction definitions from bytecodes.c and regenerates the cases, writing them to generated_cases.c.h. A parser for a subset of C that turns blocks of C code into an AST, so we can do transformations at the AST level. (There is currently one example of this -- the function always_exits() determines recursively whether a block is guaranteed to exit, using a custom definition of "exit" that includes macro calls like DISPATCH() and GO_TO_INSTRUCTION().) Changes to ceval.c so that it uses #include "generated_cases.c.h". For now I've left the original switch cases in ceval.c, inside #else ... #endif, so that we can compare the original switch cases to the generated switch cases to validate the toolchain. However, I plan to rip these out either once the PR is (nearly) approved, or perhaps in a quick follow-up PR. A new target in Makefile.pre.in to auto-generate generated_cases.c.h from bytecodes.c, using make regen-cases. Currently missing is similar tooling on Windows. For now, you can only regenerate the cases on UNIX. They are checked into the repo, so Windows should still compile. References faster-cpython/ideas#5 faster-cpython/ideas#16 faster-cpython/ideas#454 faster-cpython/ideas#477 faster-cpython/ideas#479 faster-cpython/ideas#481 Metadata Issue: gh-98831

Open Graph Description: Overview This is the first stage of a project to generate the interpreter, in particular the cases of the main switch. The references below explain the why. This PR introduces the following: Two ...

X Description: Overview This is the first stage of a project to generate the interpreter, in particular the cases of the main switch. The references below explain the why. This PR introduces the following: Two ...

Opengraph URL: https://github.com/python/cpython/pull/98830

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:2849f4e9-85f5-43f4-5bfd-a47da202098e
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD454:2839F:4642F8:5DE40F:69697FB1
html-safe-noncea5d369ff5049c1b9d05f3bc1c3239ec2434d9c44ed4939fe88c790c703e72e76
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJENDU0OjI4MzlGOjQ2NDJGODo1REU0MEY6Njk2OTdGQjEiLCJ2aXNpdG9yX2lkIjoiMjUzNjc2MTc5ODgwMjYzNjcyMSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmacb4de03091de3e32dcd9d4bf494b0fdc5ab209a1a365b0589ce5134e082fd1f75
hovercard-subject-tagpull_request:1103658436
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/98830/files
twitter:imagehttps://avatars.githubusercontent.com/u/2894642?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/2894642?s=400&v=4
og:image:altOverview This is the first stage of a project to generate the interpreter, in particular the cases of the main switch. The references below explain the why. This PR introduces the following: Two ...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonef33e4b94c8824ab2b434d82a94139432fb5ebee9df4b75304140ad22508c4a77
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release48f380098b30acbb700b04f1724481ca10d574fc
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/98830/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F98830%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F98830%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/98830/files
Reloadhttps://github.com/python/cpython/pull/98830/files
Reloadhttps://github.com/python/cpython/pull/98830/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 33.9k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 71.1k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.1k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects 31 https://github.com/python/cpython/projects
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/python/cpython/security
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
gvanrossumhttps://github.com/gvanrossum
python:mainhttps://github.com/python/cpython/tree/main
gvanrossum:generate-ceval-switchhttps://github.com/gvanrossum/cpython/tree/generate-ceval-switch
Conversation 69 https://github.com/python/cpython/pull/98830
Commits 89 https://github.com/python/cpython/pull/98830/commits
Checks 0 https://github.com/python/cpython/pull/98830/checks
Files changed https://github.com/python/cpython/pull/98830/files
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
GH-98831: "Generate" the interpreter https://github.com/python/cpython/pull/98830/files#top
Show all changes 89 commits https://github.com/python/cpython/pull/98830/files
089ab0c New script to generate the ceval switch gvanrossum Sep 20, 2022 https://github.com/python/cpython/pull/98830/commits/089ab0c79b06a2ce97a10d6a9110b7872d44eba7
bba5b94 Add 'End regular instructions' marker gvanrossum Oct 12, 2022 https://github.com/python/cpython/pull/98830/commits/bba5b941510f4097a49e5af0329dc87914c09378
99b0058 Extract to a format closer to interpreter_definition.md gvanrossum Oct 12, 2022 https://github.com/python/cpython/pull/98830/commits/99b0058b4f37a45dcfb1e77d793b24c96d25bdc1
2939830 Switch to generating new DSL syntax gvanrossum Oct 12, 2022 https://github.com/python/cpython/pull/98830/commits/2939830777aff239618371eb48eb3e3071997f84
65abfc4 Indent output; Always generate stack effect syntax; use argparse gvanrossum Oct 12, 2022 https://github.com/python/cpython/pull/98830/commits/65abfc458813cda39779937a308854adb0d500ab
51dbe28 Check jump flag; tweak begin and end of the script a bit gvanrossum Oct 12, 2022 https://github.com/python/cpython/pull/98830/commits/51dbe280eabc5c513d0fa99dc2e57b1d9b80712e
a238f69 Fix incorrect output for ??--?? gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/a238f69ab596a25b90b0ac43bda246dc57f7ca9c
2d5b1b5 Script to generate cases.h from bytecodes.inst gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/2d5b1b5794001504aed05eaeba7dc2e85b767ba5
ae042be Write bytecodes.inst into Python directory by default gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/ae042bead320b304297117f317d3071008899aef
4315621 Initial bytecodes.inst gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/43156216783222fd5af66c6d1470c6530927eb0a
8c80bfd Initial cases.h gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/8c80bfd8767c7d755013c828eb8803ba5028769c
7301203 Changes to ceval.c to use cases.h gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/7301203fc23a31142ecaa92e5b45016e96e8e264
d9ac40b Changes to Makefile.pre.in to generate cases.h gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/d9ac40beae8c625dc39e6cef52670588beb62081
a5bff0c Move #endif around gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/a5bff0c648272bc79247e8d625a2cf3dc28568a4
8c13c55 Write families to .inst file gvanrossum Oct 13, 2022 https://github.com/python/cpython/pull/98830/commits/8c13c55c7023e6e3c7ebb2dbc90c533a2df5efef
34c84bf Derive stack effect for super-instructions and specializations gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/34c84bfe1a2db4331a9d82b76e2c0a39a6ef3fcf
ff70895 Regenerated bytecodes.inst with fewer errors gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/ff70895e07a0baa59215baaeec28c0889a93f4a6
78f8591 Support array stack effects gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/78f85911d0ef54a9b07fed33bfeaffbcbe0dbb7d
a29b815 Array stack effects are now in bytecodes.inst gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/a29b815edeb12c620128c9f61d0ed77294589ab8
688bb5d Add Mark's C lexer gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/688bb5de1b3fd079982de1bb41d11f03bc2cffa7
7def42b Start writing a real parser gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/7def42b5866d0d50aa168d7c2d419c62751b3034
8fae259 Move cases infrastructure to its own directory gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/8fae259b356b18746700004cb710e4e87d1b2f17
b998a97 Pristine copy of lexer from Mark's gist gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/b998a97caa735703890d3160a4653a08713a6463
c44adad Fix tiny bits in lexer.py gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/c44adad4a27400839801301b1b8515aab884eb7a
d0c4398 Move c_lexer.c to lexer.c gvanrossum Oct 14, 2022 https://github.com/python/cpython/pull/98830/commits/d0c4398217fc56828607674f3633e5b513198098
06a3afa Complete parser (not using it yet): gvanrossum Oct 15, 2022 https://github.com/python/cpython/pull/98830/commits/06a3afa35283dbfd703497aa860b23bdab5a50e0
33540af Complete the parser and use it gvanrossum Oct 15, 2022 https://github.com/python/cpython/pull/98830/commits/33540af7b4f3ed52e7b8f7e8301a2f6b4a1f5a87
1990b61 Use a dataclass for Token; move stuff around to fix tokens gvanrossum Oct 16, 2022 https://github.com/python/cpython/pull/98830/commits/1990b610550c32c34f67362e46495fce0f91875b
690d4c5 Make a nice syntax error in lexer.py gvanrossum Oct 16, 2022 https://github.com/python/cpython/pull/98830/commits/690d4c5ce341755c768ca439e0b97411914ea615
b3cd440 More handy stuff for raising syntax errors gvanrossum Oct 16, 2022 https://github.com/python/cpython/pull/98830/commits/b3cd44047f3d9c6ae6c7e97cd7a7a841d7356d00
2ed0e15 Fix family definitions per spec gvanrossum Oct 19, 2022 https://github.com/python/cpython/pull/98830/commits/2ed0e1598d44da8c1b57eb8dd9e675c24539813f
371050e Rename bytecodes.{inst,c} in prep for better tooling support gvanrossum Oct 19, 2022 https://github.com/python/cpython/pull/98830/commits/371050e5138f810b2014a8fa27cc5aa8a7a68253
ee59b7d Use a template to generate top/bottom of bytecodes.c gvanrossum Oct 19, 2022 https://github.com/python/cpython/pull/98830/commits/ee59b7dbaaaa9965534ef9099f7bed7ca6fa9622
a782bb1 Add more to bytecodes_template.c gvanrossum Oct 20, 2022 https://github.com/python/cpython/pull/98830/commits/a782bb1dc29eae06bbad716023e79d13e943cd28
0ff055a Let generate_cases.py add the DISPATCH() calls gvanrossum Oct 20, 2022 https://github.com/python/cpython/pull/98830/commits/0ff055a42c94e811020f4769a88dda71034eab0b
8e9b3dc Refactor the parser in preparation of actually parsing C gvanrossum Oct 24, 2022 https://github.com/python/cpython/pull/98830/commits/8e9b3dcd3062c7082deadfb342adce3a73e670f1
a38e52b Handle PERIOD properly gvanrossum Oct 26, 2022 https://github.com/python/cpython/pull/98830/commits/a38e52bd45757881645fa3026532b8f6c15699fd
5279fe2 CHECKPOINT -- the start of a better C parser gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/5279fe25b0d44f5873adaa4ac5ae3a0d31929a9c
35eb36a Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/35eb36a575edc241a9989aca7cf34f805b503cc2
1869a8b Add some type hints to lexer.py gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/1869a8bf04cb74b9d9e6b1c743d310beaa08512e
17466fd Split cparser into sparser and eparser gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/17466fd6874d2b8ab17c69a991821829aa9ed8f7
96832de Identifiers are types too (-ish) gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/96832de861a230320358458a26f19fdd23bad7ec
3c9a567 Begin better treatment of types gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/3c9a567a6a62ef05ba671b84b0a2368d51925e4d
e751e9a Begin better declarations gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/e751e9a66ee854a540ced90db3c83edf27fd4fe3
9e9ddbd Support any number of postfix operators gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/9e9ddbd6ce81e9cc1960ff093848e99c4e3cf690
5e90a22 Split declaration; support 'for (int i = 0;...)' gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/5e90a2274171b40e2de50a4e6eb02cb7fb2943b4
ba3c2ff Use CHARACTER, not CHAR, for '.' token gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/ba3c2ff8a8eb7bba44298b69fc7fe52b3d2675e5
3678d2a Support string and character literals gvanrossum Oct 27, 2022 https://github.com/python/cpython/pull/98830/commits/3678d2afb23219f16242dea8b4d9f1bfa80dc932
607a22e Refactor decl_stmt some more gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/607a22e8ab62b7ebc0a7012a4d1454f6f9e78d25
06247ea Switch statement (and case and default) gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/06247ea26506107b9c676e9c0155283eb0d7bd1e
5ec6a12 String literal concatenation gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/5ec6a12d43e9a170e5a5ea242f297020b7faadb3
5f8a56f Fix hex and octal numbers gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/5f8a56fd9262f48b880b6e251bbb7007673b8aca
dc7732f Hack conditional operator gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/dc7732f22c090d6f81caf658abda0daee4fa3686
a3c3c72 More numeric types, e.g. unsigned long gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/a3c3c722d779bc58ca5a09672fef48054303bf9f
5c91786 Support array declarations and initializers gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/5c917862c86760a7675a170f2cc3e49d0db446b3
4ec2d9b Fix typo in main gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/4ec2d9bd74a44521f027b39fc93141e8220bec16
074be4b Support some function types in casts gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/074be4b785191d68f68cd5a5fa4ff545c9d895c0
d140ae6 Support function pointer declarations gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/d140ae6d9eeb6f1a12a05a4e31de1a8156146cf8
2ad6278 Make Context repr more compact gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/2ad62786712e2a58aaeec4919f14e487d0b198c2
2f3e321 Make contextual more generic gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/2f3e3219180835149106de731413cb266a075d07
64f62c7 Make Parser derive from SParser, and add test main gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/64f62c7a985d7a35199368cdc3cef5698e37fb8e
250ded1 CHECKPOINT: generate cases the new way gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/250ded15c13c311bfaeceb5239d2696591bc93ef
4efd6bb Insert DISPATCH() unless block always exits gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/4efd6bba02948a8fb589c8961e22cf0ae185b014
01b3735 More accuracy in DISPATCH() addition gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/01b3735d2a6540a8ab419e6ffb1f579ac068e94a
5215027 📜🤖 Added by blurb_it. blurb-it[bot] Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/52150277819e299381862972dad051a78024e940
df0e8d8 Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/df0e8d836c51409066ba3164c17c4a2704f33f47
08465c9 Update generated cases due to END_FOR refactor gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/08465c95a210dcf4a0b64d8dc8e5892143db056d
6111283 Add some TODO comments to lexer.py gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/6111283b298e51f1a44207359d8f177971021d09
69c5551 Add README.md to Tools/cases_generator gvanrossum Oct 28, 2022 https://github.com/python/cpython/pull/98830/commits/69c55514f3526df3e355538b85d19434e1b4215d
a7f0c08 Fix trailing whitespace gvanrossum Oct 29, 2022 https://github.com/python/cpython/pull/98830/commits/a7f0c08763a3d64e3656562847f58fca7f41adf0
46b0def Fix crash in require() at EOF gvanrossum Oct 30, 2022 https://github.com/python/cpython/pull/98830/commits/46b0defaaec09939cdce66b0cd7f52c3114e58db
e757b61 More compact Token.__repr__() gvanrossum Oct 30, 2022 https://github.com/python/cpython/pull/98830/commits/e757b6155a5a8935846ddf2a6754502019baa9ae
c67f0ba Proper operator priorities, add comma operator gvanrossum Oct 30, 2022 https://github.com/python/cpython/pull/98830/commits/c67f0ba330974117d9a22e30c7d0bfd51673302a
98427bf Format large families more nicely gvanrossum Oct 31, 2022 https://github.com/python/cpython/pull/98830/commits/98427bfa7d024f1cdbead0dc35da3cf28473eadc
4bbf11e Rename cases.h to generated_cases.c.h gvanrossum Oct 31, 2022 https://github.com/python/cpython/pull/98830/commits/4bbf11e6a5bba9ec431f54c65bb6c9b4c3deee40
1911964 Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Oct 31, 2022 https://github.com/python/cpython/pull/98830/commits/19119643fea56b2ce43316515e9eb073cefe3c73
6837c86 Regenerate cases after merging latest main gvanrossum Oct 31, 2022 https://github.com/python/cpython/pull/98830/commits/6837c8631d9388f7aa250e527dddf9108e9ddac8
6f3c993 Separate family members by commas gvanrossum Oct 31, 2022 https://github.com/python/cpython/pull/98830/commits/6f3c9930e10d2356929f2cc67cd2582e2585039d
4663dfc Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Nov 1, 2022 https://github.com/python/cpython/pull/98830/commits/4663dfc339b8b1f54435e57b231db7f488d34058
1c587bb Regenerated files after merge from main gvanrossum Nov 1, 2022 https://github.com/python/cpython/pull/98830/commits/1c587bbfb0bafeb57a8fc6bec091de3b120f996e
b96f5db Get rid of the C parser infrastructure gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/b96f5db98af969bd71ff1338df3d4aa0fa5d03a8
c42d323 Remove stack effect from bytecodes.c gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/c42d3239303d69935690ffd8b7024897a4940621
2eb908d Update README.md gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/2eb908d816fae1d673a682d59a90cfe43e2a3f58
53a0398 Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/53a0398097e011d8da16b8a8260338086f7fec3b
6ea380f Add generated_cases.c.h to .gitattributes as generated file gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/6ea380f676d307fb1519131068198dbfdb50bde6
d8e6db8 Update from Brandt's code review gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/d8e6db82ce8b064ef7a6fb196823602d206127dc
8a312ca Merge remote-tracking branch 'origin/main' into generate-ceval-switch gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/8a312caa3e6947c1cec39ff252795409f3ab463f
7a327aa Update generated files after merging from main gvanrossum Nov 2, 2022 https://github.com/python/cpython/pull/98830/commits/7a327aa1960ba649f5ff6e3d9d3210625e394c24
fddc08c Remove the redundant cases from ceval.c gvanrossum Nov 3, 2022 https://github.com/python/cpython/pull/98830/commits/fddc08cbf90663032500985c83137950a11264f4
Clear filters https://github.com/python/cpython/pull/98830/files
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
.gitattributes https://github.com/python/cpython/pull/98830/files#diff-618cd5b83d62060ba3d027e314a21ceaf75d36067ff820db126642944145393e
Makefile.pre.in https://github.com/python/cpython/pull/98830/files#diff-1f0a8db227d22005511b0d90f5339b97db345917b863954b3b3ccb9ec308767c
2022-10-28-22-24-26.gh-issue-98831.IXRCRX.rst https://github.com/python/cpython/pull/98830/files#diff-1ba7c6479104f907c68d7c02444bd14b56af4e6f15b0320840c31c91a5b7d6a7
bytecodes.c https://github.com/python/cpython/pull/98830/files#diff-729a985b0cb8b431cb291f1edb561bbbfea22e3f8c262451cd83328a0936a342
ceval.c https://github.com/python/cpython/pull/98830/files#diff-c22186367cbe20233e843261998dc027ae5f1f8c0d2e778abfa454ae74cc59de
generated_cases.c.h https://github.com/python/cpython/pull/98830/files#diff-4ef46fa654f95502e49a24f7dc8ee31a4cac9b3433fe9cd2b2d4dd78cfbad448
README.md https://github.com/python/cpython/pull/98830/files#diff-c843e0106de09442054ba821446491d9908a97452d8fd3b4354dd4d9d1fab97f
bytecodes_template.c https://github.com/python/cpython/pull/98830/files#diff-9a2d2b47f722c88b6e848090ab5c7aa052b86cb6d5922cabd76ff9bfa58a27cc
extract_cases.py https://github.com/python/cpython/pull/98830/files#diff-159fff680a8bca75eda82c6896d8d62cff82a4c65419b4a55c01790078f8cc90
generate_cases.py https://github.com/python/cpython/pull/98830/files#diff-65feee563fa44b472b07751184c6f557699f84b3c2ef79174bfd5d538d748272
lexer.py https://github.com/python/cpython/pull/98830/files#diff-6540be8db4a255ba36e1b4dea6cf12db11ee7c44e29bfd3c0a4d4f53bb8ef2d8
parser.py https://github.com/python/cpython/pull/98830/files#diff-bc6851ce97efb76ebfd0bc2f37d62ac0902080d0749be72d29d978f0ee2fa0e4
plexer.py https://github.com/python/cpython/pull/98830/files#diff-3392193d280c7178f0d284d9666d1233c519e12888a6c633e1b944039accfbcd
.gitattributeshttps://github.com/python/cpython/pull/98830/files#diff-618cd5b83d62060ba3d027e314a21ceaf75d36067ff820db126642944145393e
View file https://github.com/gvanrossum/cpython/blob/fddc08cbf90663032500985c83137950a11264f4/.gitattributes
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/98830/{{ revealButtonHref }}
https://github.com/python/cpython/pull/98830/files#diff-618cd5b83d62060ba3d027e314a21ceaf75d36067ff820db126642944145393e
https://github.com/python/cpython/pull/98830/files#diff-618cd5b83d62060ba3d027e314a21ceaf75d36067ff820db126642944145393e
https://github.com/python/cpython/blob/main/.github/CODEOWNERS#L84
Makefile.pre.inhttps://github.com/python/cpython/pull/98830/files#diff-1f0a8db227d22005511b0d90f5339b97db345917b863954b3b3ccb9ec308767c
View file https://github.com/gvanrossum/cpython/blob/fddc08cbf90663032500985c83137950a11264f4/Makefile.pre.in
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/98830/{{ revealButtonHref }}
https://github.com/python/cpython/pull/98830/files#diff-1f0a8db227d22005511b0d90f5339b97db345917b863954b3b3ccb9ec308767c
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
https://github.com/python/cpython/pull/98830/files#diff-1f0a8db227d22005511b0d90f5339b97db345917b863954b3b3ccb9ec308767c
Misc/NEWS.d/next/Build/2022-10-28-22-24-26.gh-issue-98831.IXRCRX.rsthttps://github.com/python/cpython/pull/98830/files#diff-1ba7c6479104f907c68d7c02444bd14b56af4e6f15b0320840c31c91a5b7d6a7
View file https://github.com/gvanrossum/cpython/blob/fddc08cbf90663032500985c83137950a11264f4/Misc/NEWS.d/next/Build/2022-10-28-22-24-26.gh-issue-98831.IXRCRX.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/98830/{{ revealButtonHref }}
Please reload this pagehttps://github.com/python/cpython/pull/98830/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.