Perform build and magnum tuning

Building o//third_party/python now takes 5 seconds on my PC

This change works towards modifying Python to use runtime dispatching
when appropriate. For example, when loading the magnums in the socket
module, it's a good idea to check if the magnum is zero, because that
means the local system platform doesn't support it.
This commit is contained in:
Justine Tunney 2021-08-10 10:26:13 -07:00
parent ee7e296339
commit d26d7ae0e4
1028 changed files with 6576 additions and 172777 deletions

View file

@ -1,3 +1,4 @@
/* clang-format off */
/* Dictionary object implementation using a hash table */
/* The distribution includes a separate file, Objects/dictnotes.txt,
@ -109,9 +110,9 @@ converting the dict to the combined table.
*/
#define PyDict_MINSIZE 8
#include "Python.h"
#include "dict-common.h"
#include "stringlib/eq.h" /* to get unicode_eq() */
#include "third_party/python/Include/Python.h"
#include "third_party/python/Objects/dict-common.h"
#include "third_party/python/Objects/stringlib/eq.inc" /* to get unicode_eq() */
/*[clinic input]
class dict "PyDictObject *" "&PyDict_Type"
@ -255,7 +256,7 @@ static int numfree = 0;
static PyDictKeysObject *keys_free_list[PyDict_MAXFREELIST];
static int numfreekeys = 0;
#include "clinic/dictobject.c.h"
#include "third_party/python/Objects/clinic/dictobject.inc"
int
PyDict_ClearFreeList(void)