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,16 +1,14 @@
/*
* This file includes functions to transform a concrete syntax tree (CST) to
* an abstract syntax tree (AST). The main function is PyAST_FromNode().
*
*/
#include "Python.h"
#include "Python-ast.h"
#include "node.h"
#include "ast.h"
#include "token.h"
#include "pythonrun.h"
#include <assert.h>
#include "libc/assert.h"
#include "third_party/python/Include/Python.h"
#include "third_party/python/Include/node.h"
#include "third_party/python/Include/pyport.h"
#include "third_party/python/Include/pythonrun.h"
#include "third_party/python/Include/token.h"
/**/
#include "third_party/python/Include/Python-ast.h"
/**/
#include "third_party/python/Include/ast.h"
/* clang-format off */
static int validate_stmts(asdl_seq *);
static int validate_exprs(asdl_seq *, expr_context_ty, int);
@ -580,9 +578,10 @@ PyAST_Validate(mod_ty mod)
}
/* This is done here, so defines like "test" don't interfere with AST use above. */
#include "grammar.h"
#include "parsetok.h"
#include "graminit.h"
/* WHAT */
#include "third_party/python/Include/grammar.h"
#include "third_party/python/Include/parsetok.h"
#include "third_party/python/Include/graminit.h"
/* Data structure used internally */
struct compiling {