[issue47045] Remove the RESUME instruction

2022-03-22 Thread Mark Shannon


Mark Shannon  added the comment:


New changeset 49daf6dba8178c5ae5d4d65408b20566d39c36a8 by Mark Shannon in 
branch 'main':
bpo-47045: Remove `f_state` field (GH-31963)
https://github.com/python/cpython/commit/49daf6dba8178c5ae5d4d65408b20566d39c36a8


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue47045] Remove the RESUME instruction

2022-03-17 Thread Mark Shannon


Change by Mark Shannon :


--
keywords: +patch
pull_requests: +30052
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/31963

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue47045] Remove the RESUME instruction

2022-03-17 Thread Mark Shannon


New submission from Mark Shannon :

The RESUME instruction was added to make resumption points explicit in the 
bytecode. This makes it easier to implement tracing, quickening, and interrupt 
checks as there is an explicit place to perform these checks.

Unfortunately, it also has considerable overhead. So we should remove it.
To do that, we need to:
1. Remove f_state from the InterpreterFrame so we don't need to update it.
2 .Quicken automatically in the adaptive instructions.
3. Check the evalbreaker when resuming a frame in the interpreter.
4. Add some metadata to the code object, so that we know when to fire "call" 
events when tracing.

--
assignee: Mark.Shannon
messages: 415424
nosy: Mark.Shannon
priority: normal
severity: normal
status: open
title: Remove the RESUME instruction
type: performance

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com