Thanks to visit codestin.com
Credit goes to github.com

Skip to content
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
base: main
Choose a base ref
...
head repository: stratakis/cpython
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: trampoline_bootstrap
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 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 committed Sep 11, 2026
    Configuration menu
    Copy the full SHA
    30241aa View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    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 committed Sep 11, 2026
    Configuration menu
    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 committed Sep 11, 2026
    Configuration menu
    Copy the full SHA
    5534711 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    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 committed Sep 11, 2026
    Configuration menu
    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 committed Sep 11, 2026
    Configuration menu
    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 committed Sep 11, 2026
    Configuration menu
    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 committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    6d9f194 View commit details
    Browse the repository at this point in the history
Loading