mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-23 22:02:27 +00:00
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:
parent
ee7e296339
commit
d26d7ae0e4
1028 changed files with 6576 additions and 172777 deletions
12
third_party/python/Modules/rotatingtree.h
vendored
12
third_party/python/Modules/rotatingtree.h
vendored
|
@ -1,3 +1,9 @@
|
|||
#ifndef COSMOPOLITAN_THIRD_PARTY_PYTHON_MODULES_ROTATINGTREE_H_
|
||||
#define COSMOPOLITAN_THIRD_PARTY_PYTHON_MODULES_ROTATINGTREE_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
/* clang-format off */
|
||||
|
||||
/* "Rotating trees" (Armin Rigo)
|
||||
*
|
||||
* Google "splay trees" for the general idea.
|
||||
|
@ -8,8 +14,6 @@
|
|||
* and over again, and this set of keys evolves slowly over time.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#define EMPTY_ROTATING_TREE ((rotating_node_t *)NULL)
|
||||
|
||||
typedef struct rotating_node_s rotating_node_t;
|
||||
|
@ -25,3 +29,7 @@ void RotatingTree_Add(rotating_node_t **root, rotating_node_t *node);
|
|||
rotating_node_t* RotatingTree_Get(rotating_node_t **root, void *key);
|
||||
int RotatingTree_Enum(rotating_node_t *root, rotating_tree_enum_fn enumfn,
|
||||
void *arg);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_THIRD_PARTY_PYTHON_MODULES_ROTATINGTREE_H_ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue