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 — gh-149202: Don't use -fno-omit-frame-pointer on ppc64le by vstinner · Pull Request #149485 · python/cpython

Conversation

@vstinner

@vstinner vstinner commented May 7, 2026 •
edited by bedevere-app Bot
Loading

Uh oh!

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

Copy link
Copy Markdown
Member

The power ABI specification requires that compilers maintain a back chain by default, so unwinding already works without a dedicated frame pointer. Don't use -fno-omit-frame-pointer on ppc64le.

  • Issue: Implement PEP 831 – Frame Pointers Everywhere: Enabling System-Level Observability for Python #149202

Sorry, something went wrong.

Uh oh!

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

All reactions
@vstinner
pythongh-149202: Don't use -fno-omit-frame-pointer on ppc64le
ea140bb
The power ABI specification requires that compilers maintain a back
chain by default, so unwinding already works without a dedicated
frame pointer. Don't use -fno-omit-frame-pointer on ppc64le.
@vstinner
vstinner requested review from corona10 and erlend-aasland as code owners May 7, 2026 09:10
@vstinner vstinner added the skip news label May 7, 2026
@vstinner
vstinner requested review from AA-Turner and emmatyping as code owners May 7, 2026 09:10
@bedevere-app bedevere-app Bot mentioned this pull request May 7, 2026
Implement PEP 831 – Frame Pointers Everywhere: Enabling System-Level Observability for Python #149202
Closed
@bedevere-app bedevere-app Bot added the awaiting core review label May 7, 2026
@read-the-docs-community

read-the-docs-community Bot commented May 7, 2026

Copy link
Copy Markdown

Documentation build overview

📚 cpython-previews | 🛠️ Build #32580775 | 📁 Comparing ea140bb against main (612140e)

  🔍 Preview build  

1 file changed
± using/configure.html
All reactions

Sorry, something went wrong.

Uh oh!

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

@vstinner

vstinner commented May 7, 2026

Copy link
Copy Markdown
Member Author

This PR implements @stratakis' suggestions: #149409 (comment). Extract:

Adding however -fno-omit-frame-pointer forces the compiler to reserve r31 for it adding extra overhead with no benefits.

cc @stratakis @encukou @pablogsal @Fidget-Spinner @savannahostrowski

All reactions

Sorry, something went wrong.

Uh oh!

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

@vstinner vstinner mentioned this pull request May 7, 2026
gh-149202: Fix frame pointer unwinding on ppc64le and armv7/clang #149409
Merged
@vstinner

vstinner commented May 7, 2026

Copy link
Copy Markdown
Member Author

I tested this change manually on Linux ppc64le:

  • ./configure (gcc -O3): OPT=-DNDEBUG -g -O3 -Wall in Makefile
  • ./configure --with-pydebug (gcc -Og): OPT=-g -Og -Wall in Makefile

test_frame_pointer_unwind pass successfully.

All reactions

Sorry, something went wrong.

Uh oh!

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

pablogsal
pablogsal approved these changes May 7, 2026
View reviewed changes
@bedevere-app bedevere-app Bot added awaiting merge and removed awaiting core review labels May 7, 2026
@pablogsal

pablogsal commented May 7, 2026

Copy link
Copy Markdown
Member

Thanks Victor!

All reactions

Sorry, something went wrong.

Uh oh!

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

@vstinner

vstinner commented May 7, 2026

Copy link
Copy Markdown
Member Author

!buildbot PPC64LE

All reactions

Sorry, something went wrong.

Uh oh!

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

@bedevere-bot

bedevere-bot commented May 7, 2026

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @vstinner for commit ea140bb 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F149485%2Fmerge

The command will test the builders whose names match following regular expression: PPC64LE

The builders matched are:

  • PPC64LE Fedora Rawhide Clang PR
  • PPC64LE RHEL8 Refleaks PR
  • PPC64LE RHEL8 LTO + PGO PR
  • PPC64LE Fedora Stable Clang PR
  • PPC64LE Fedora Rawhide NoGIL refleaks PR
  • PPC64LE Fedora Rawhide PR
  • PPC64LE CentOS9 LTO PR
  • PPC64LE Fedora Rawhide Clang Installed PR
  • PPC64LE Fedora Stable Refleaks PR
  • PPC64LE Fedora Rawhide LTO PR
  • PPC64LE Fedora Stable PR
  • PPC64LE Fedora Stable LTO + PGO PR
  • PPC64LE CentOS9 LTO + PGO PR
  • PPC64LE Fedora Stable LTO PR
  • PPC64LE Fedora Rawhide NoGIL PR
  • PPC64LE Fedora Rawhide Refleaks PR
  • PPC64LE Fedora Stable Clang Installed PR
  • PPC64LE Fedora Rawhide LTO + PGO PR
  • PPC64LE CentOS9 PR
  • PPC64LE RHEL8 LTO PR
  • PPC64LE RHEL8 PR
  • PPC64LE CentOS9 Refleaks PR
All reactions

Sorry, something went wrong.

Uh oh!

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

@vstinner
vstinner merged commit b3cfd36 into python:main May 7, 2026
65 of 78 checks passed

Uh oh!

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

@vstinner
vstinner deleted the ppc64le branch May 7, 2026 09:47
@bedevere-app bedevere-app Bot removed the awaiting merge label May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@pablogsal pablogsal pablogsal approved these changes
@erlend-aasland erlend-aasland Awaiting requested review from erlend-aasland erlend-aasland is a code owner
@corona10 corona10 Awaiting requested review from corona10 corona10 is a code owner
@AA-Turner AA-Turner Awaiting requested review from AA-Turner AA-Turner is a code owner
@emmatyping emmatyping Awaiting requested review from emmatyping emmatyping is a code owner

Uh oh!

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

Assignees

No one assigned

Labels

skip news

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

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

3 participants

@vstinner @pablogsal @bedevere-bot
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.