Mark Shannon
064de0e3fc
GH-104610: Remove the use of `PREDICT` macros. (GH-104651)
2023-06-07 17:04:53 +01:00
Mark Shannon
4bfa01b9d9
GH-104584: Plugin optimizer API (GH-105100)
2023-06-02 11:46:18 +01:00
Mark Shannon
68b5f08b72
GH-104580: Don't cache eval breaker in interpreter (GH-104581)
...
Move eval-breaker to the front of the interpreter state.
2023-05-18 10:08:33 +01:00
Brandt Bucher
1eb950ca55
GH-104405: Add missing PEP 523 checks (GH-104406)
2023-05-12 22:23:13 +00:00
Mark Shannon
45f5aa8fc7
GH-103082: Filter LINE events in VM, to simplify tool implementation. (GH-104387)
...
When monitoring LINE events, instrument all instructions that can have a predecessor on a different line.
Then check that the a new line has been hit in the instrumentation code.
This brings the behavior closer to that of 3.11, simplifying implementation and porting of tools.
2023-05-12 12:21:20 +01:00
Mark Shannon
411b169281
GH-103082: Implementation of PEP 669: Low Impact Monitoring for CPython (GH-103083)
...
* The majority of the monitoring code is in instrumentation.c
* The new instrumentation bytecodes are in bytecodes.c
* legacy_tracing.c adapts the new API to the old sys.setrace and sys.setprofile APIs
2023-04-12 12:04:55 +01:00
gaogaotiantian
039714d00f
gh-101975: Fixed a potential SegFault on garbage collection (GH-102803)
2023-03-18 10:59:21 +00:00
Mark Shannon
233e32f936
GH-102300: Reuse objects with refcount == 1 in float specialized binary ops. (GH-102301)
2023-03-13 10:34:54 +00:00
Steve Dower
a99eb5cd99
gh-101907: Stop using `_Py_OPCODE` and `_Py_OPARG` macros (GH-101912)
...
* gh-101907: Removes use of non-standard C++ extension from Include/cpython/code.h
* Make cases_generator correct on Windows
2023-02-20 14:56:48 +00:00
Guido van Rossum
616aec1ff1
gh-98831: Modernize CALL and family ( #101508 )
...
Includes a slight improvement to `DECREF_INPUTS()`.
2023-02-08 11:40:10 -08:00
Guido van Rossum
1f0d0a432c
GH-98831: Move assorted macros from ceval.h to a new header ( #101116 )
2023-01-18 10:41:07 -08:00