GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Comparing python:main...stratakis:trampoline_bootstrap · python/cpython

Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: python/cpython
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading

Uh oh!

There was an error while loading. Please reload this page.

base: main
Loading
Loading
...
head repository: stratakis/cpython
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading

Uh oh!

There was an error while loading. Please reload this page.

compare: trampoline_bootstrap
Loading
Loading
Checking mergeability… Don’t worry, you can still create the pull request.

Uh oh!

There was an error while loading. Please reload this page.

  • 9 commits
  • 14 files changed
  • 1 contributor

Commits on Sep 11, 2026

  1. gh-149800: Add CFI directives to the perf trampoline assembly

    Let the assembler emit an .eh_frame for the trampoline, matching the
    frame layout jit_unwind.c describes.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 30241aa
    • Browse repository at this point
    Copy the full SHA
    30241aa View commit details
    Browse the repository at this point in the history
  2. gh-149800: Declare the perf trampoline template labels as char symbols

    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 4439b52
    • Browse repository at this point
    Copy the full SHA
    4439b52 View commit details
    Browse the repository at this point in the history
  3. gh-149800: Generate the perf trampoline .eh_frame from the compiled a…

    …ssembly
    
    Extract the .eh_frame the assembler emits for the trampoline object at
    build time into trampoline_ehframe.h and patch only the FDE address
    fields at runtime. Building with the perf trampoline now needs a host
    Python, and configure disables the trampoline with a warning when none
    is usable.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for b63f0d1
    • Browse repository at this point
    Copy the full SHA
    b63f0d1 View commit details
    Browse the repository at this point in the history
  4. gh-149800: Test the generated perf trampoline unwind data

    Check the FDEs in jitdump files against their code load records, cover
    the generator's parsers, and validate the header structure from C.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 5534711
    • Browse repository at this point
    Copy the full SHA
    5534711 View commit details
    Browse the repository at this point in the history
  5. Skip the jitdump test on BOLT builds

    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 0f6b805
    • Browse repository at this point
    Copy the full SHA
    0f6b805 View commit details
    Browse the repository at this point in the history
  6. gh-149800: Add pycore_jit_unwind.h to PYTHON_HEADERS

    Objects including it did not rebuild when the header changed.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 5323dbe
    • Browse repository at this point
    Copy the full SHA
    5323dbe View commit details
    Browse the repository at this point in the history
  7. gh-149800: Drop the struct module from the trampoline unwind generator

    _bootstrap_python cannot load shared extension modules such as _struct. Read the ELF and Mach-O fields with int.from_bytes and reject reads past the end of the file.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for dcf3643
    • Browse repository at this point
    Copy the full SHA
    dcf3643 View commit details
    Browse the repository at this point in the history
  8. gh-149800: Generate the perf trampoline unwind data with _bootstrap_p…

    …ython
    
    Emit the trampoline's .eh_frame as a C file linked like Python/frozen.o, outside the objects the bootstrap programs link, which define an empty stub instead. A default build no longer needs a host Python for the perf trampoline, so configure stops probing for one.
    @stratakis
    stratakis committed Sep 11, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 0f3f47a
    • Browse repository at this point
    Copy the full SHA
    0f3f47a View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2026

  1. small review fixes

    @stratakis
    stratakis committed Sep 12, 2026
    Configuration menu
    • View commit details
    • Copy full SHA for 6d9f194
    • Browse repository at this point
    Copy the full SHA
    6d9f194 View commit details
    Browse the repository at this point in the history
Loading

This comparison is taking too long to generate.

Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.

You can try running this command locally to see the comparison on your machine:
git diff main...trampoline_bootstrap

Uh oh!

There was an error while loading. Please reload this page.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.