<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython.git/Objects/frameobject.c, branch master</title>
<subtitle>
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/'/>
<entry>
<title>Issue #29049: Call _PyObject_GC_TRACK() lazily when calling Python function.</title>
<updated>2016-12-24T11:19:08+00:00</updated>
<author>
<name>INADA Naoki</name>
<email>songofacandy@gmail.com</email>
</author>
<published>2016-12-24T11:19:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=febbf471bd550945621b470089b6c3dc872ae894'/>
<id>febbf471bd550945621b470089b6c3dc872ae894</id>
<content type='text'>
Calling function is up to 5% faster.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Calling function is up to 5% faster.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #28618: Make hot functions using __attribute__((hot))</title>
<updated>2016-11-11T01:13:35+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2016-11-11T01:13:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=18dea7d67d8b263dd8b49e1d44dcb09ca86ad08a'/>
<id>18dea7d67d8b263dd8b49e1d44dcb09ca86ad08a</id>
<content type='text'>
When Python is not compiled with PGO, the performance of Python on call_simple
and call_method microbenchmarks depend highly on the code placement. In the
worst case, the performance slowdown can be up to 70%.

The GCC __attribute__((hot)) attribute helps to keep hot code close to reduce
the risk of such major slowdown. This attribute is ignored when Python is
compiled with PGO.

The following functions are considered as hot according to statistics collected
by perf record/perf report:

* _PyEval_EvalFrameDefault()
* call_function()
* _PyFunction_FastCall()
* PyFrame_New()
* frame_dealloc()
* PyErr_Occurred()
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When Python is not compiled with PGO, the performance of Python on call_simple
and call_method microbenchmarks depend highly on the code placement. In the
worst case, the performance slowdown can be up to 70%.

The GCC __attribute__((hot)) attribute helps to keep hot code close to reduce
the risk of such major slowdown. This attribute is ignored when Python is
compiled with PGO.

The following functions are considered as hot according to statistics collected
by perf record/perf report:

* _PyEval_EvalFrameDefault()
* call_function()
* _PyFunction_FastCall()
* PyFrame_New()
* frame_dealloc()
* PyErr_Occurred()
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #27129: Replaced wordcode related magic constants with macros.</title>
<updated>2016-09-11T10:48:15+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-09-11T10:48:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=2fdfdf47618ed421642a743b67d2616c7dae138e'/>
<id>2fdfdf47618ed421642a743b67d2616c7dae138e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #20041: Fixed TypeError when frame.f_trace is set to None.</title>
<updated>2016-06-04T17:33:33+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-06-04T17:33:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=62a8b863ccaa7e3849e41a87c7643b824006826f'/>
<id>62a8b863ccaa7e3849e41a87c7643b824006826f</id>
<content type='text'>
Patch by Xavier de Gaye.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch by Xavier de Gaye.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #20041: Fixed TypeError when frame.f_trace is set to None.</title>
<updated>2016-06-04T17:32:36+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-06-04T17:32:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=b052d54aac1c97929bfa2f57c62f2307e2d608b8'/>
<id>b052d54aac1c97929bfa2f57c62f2307e2d608b8</id>
<content type='text'>
Patch by Xavier de Gaye.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch by Xavier de Gaye.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #26647: Python interpreter now uses 16-bit wordcode instead of bytecode.</title>
<updated>2016-05-24T06:15:14+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-05-24T06:15:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=2e584bb8793b8c50689fa680f4cd7e64ae6bae6a'/>
<id>2e584bb8793b8c50689fa680f4cd7e64ae6bae6a</id>
<content type='text'>
Patch by Demur Rumed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch by Demur Rumed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #22570: Renamed Py_SETREF to Py_XSETREF.</title>
<updated>2016-04-06T06:50:03+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-04-06T06:50:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=6d080f12a4ea2b60d07541af6cc363e491e5aa34'/>
<id>6d080f12a4ea2b60d07541af6cc363e491e5aa34</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #22570: Renamed Py_SETREF to Py_XSETREF.</title>
<updated>2016-04-06T06:45:48+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-04-06T06:45:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=58455ad4ed5e6f1eda17ceb0dd7f5612a980e48d'/>
<id>58455ad4ed5e6f1eda17ceb0dd7f5612a980e48d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>co_lnotab supports negative line number delta</title>
<updated>2016-01-20T11:16:21+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2016-01-20T11:16:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=fd429314d44df33056e2b10999b9d383a1967ee2'/>
<id>fd429314d44df33056e2b10999b9d383a1967ee2</id>
<content type='text'>
Issue #26107: The format of the co_lnotab attribute of code objects changes to
support negative line number delta.

Changes:

* assemble_lnotab(): if line number delta is less than -128 or greater than
  127, emit multiple (offset_delta, lineno_delta) in co_lnotab
* update functions decoding co_lnotab to use signed 8-bit integers

  - dis.findlinestarts()
  - PyCode_Addr2Line()
  - _PyCode_CheckLineNumber()
  - frame_setlineno()

* update lnotab_notes.txt
* increase importlib MAGIC_NUMBER to 3361
* document the change in What's New in Python 3.6
* cleanup also PyCode_Optimize() to use better variable names
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Issue #26107: The format of the co_lnotab attribute of code objects changes to
support negative line number delta.

Changes:

* assemble_lnotab(): if line number delta is less than -128 or greater than
  127, emit multiple (offset_delta, lineno_delta) in co_lnotab
* update functions decoding co_lnotab to use signed 8-bit integers

  - dis.findlinestarts()
  - PyCode_Addr2Line()
  - _PyCode_CheckLineNumber()
  - frame_setlineno()

* update lnotab_notes.txt
* increase importlib MAGIC_NUMBER to 3361
* document the change in What's New in Python 3.6
* cleanup also PyCode_Optimize() to use better variable names
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #20440: Cleaning up the code by using Py_SETREF.</title>
<updated>2016-01-05T19:27:54+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-01-05T19:27:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython.git/commit/?id=93c98b688bef3bf08c027315a744869b590ceef3'/>
<id>93c98b688bef3bf08c027315a744869b590ceef3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
