bpo-46765: Replace Locally Cached Strings with Statically Initialized… · python/cpython@1f45536 · GitHub
Skip to content

Commit 1f45536

Browse files
bpo-46765: Replace Locally Cached Strings with Statically Initialized Objects (gh-31366)
https://bugs.python.org/issue46765
1 parent cff4d5c commit 1f45536

22 files changed

Lines changed: 192 additions & 526 deletions

Include/internal/pycore_global_strings.h

Lines changed: 32 additions & 0 deletions

Include/internal/pycore_runtime_init.h

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -651,16 +651,25 @@ extern "C" {
651651
INIT_STR(anon_module, "<module>"), \
652652
INIT_STR(anon_setcomp, "<setcomp>"), \
653653
INIT_STR(anon_string, "<string>"), \
654+
INIT_STR(anon_unknown, "<unknown>"), \
655+
INIT_STR(close_br, "}"), \
654656
INIT_STR(comma_sep, ", "), \
657+
INIT_STR(dbl_close_br, "}}"), \
658+
INIT_STR(dbl_open_br, "{{"), \
655659
INIT_STR(dbl_percent, "%%"), \
656660
INIT_STR(dot, "."), \
657661
INIT_STR(dot_locals, ".<locals>"), \
658662
INIT_STR(empty, ""), \
663+
INIT_STR(list_err, "list index out of range"), \
664+
INIT_STR(newline, "\n"), \
665+
INIT_STR(open_br, "{"), \
659666
INIT_STR(percent, "%"), \
660667
}, \
661668
.identifiers = { \
669+
INIT_ID(False), \
662670
INIT_ID(Py_Repr), \
663671
INIT_ID(TextIOWrapper), \
672+
INIT_ID(True), \
664673
INIT_ID(WarningMessage), \
665674
INIT_ID(_), \
666675
INIT_ID(__IOBase_closed), \
@@ -809,7 +818,9 @@ extern "C" {
809818
INIT_ID(__weakref__), \
810819
INIT_ID(__xor__), \
811820
INIT_ID(_abc_impl), \
821+
INIT_ID(_annotation), \
812822
INIT_ID(_blksize), \
823+
INIT_ID(_bootstrap), \
813824
INIT_ID(_dealloc_warn), \
814825
INIT_ID(_finalizing), \
815826
INIT_ID(_find_and_load), \
@@ -831,46 +842,62 @@ extern "C" {
831842
INIT_ID(big), \
832843
INIT_ID(buffer), \
833844
INIT_ID(builtins), \
845+
INIT_ID(c_call), \
846+
INIT_ID(c_exception), \
847+
INIT_ID(c_return), \
848+
INIT_ID(call), \
834849
INIT_ID(clear), \
835850
INIT_ID(close), \
851+
INIT_ID(closed), \
836852
INIT_ID(code), \
837853
INIT_ID(copy), \
838854
INIT_ID(copyreg), \
839855
INIT_ID(decode), \
840856
INIT_ID(default), \
841857
INIT_ID(defaultaction), \
858+
INIT_ID(dictcomp), \
842859
INIT_ID(difference_update), \
843860
INIT_ID(dispatch_table), \
844861
INIT_ID(displayhook), \
845862
INIT_ID(enable), \
863+
INIT_ID(encode), \
846864
INIT_ID(encoding), \
847865
INIT_ID(end_lineno), \
848866
INIT_ID(end_offset), \
849867
INIT_ID(errors), \
850868
INIT_ID(excepthook), \
869+
INIT_ID(exception), \
851870
INIT_ID(extend), \
852871
INIT_ID(filename), \
853872
INIT_ID(fileno), \
854873
INIT_ID(fillvalue), \
855874
INIT_ID(filters), \
856875
INIT_ID(find_class), \
857876
INIT_ID(flush), \
877+
INIT_ID(genexpr), \
858878
INIT_ID(get), \
859879
INIT_ID(get_source), \
860880
INIT_ID(getattr), \
881+
INIT_ID(getstate), \
861882
INIT_ID(ignore), \
862883
INIT_ID(importlib), \
884+
INIT_ID(inf), \
863885
INIT_ID(intersection), \
864886
INIT_ID(isatty), \
865887
INIT_ID(items), \
866888
INIT_ID(iter), \
889+
INIT_ID(join), \
867890
INIT_ID(keys), \
891+
INIT_ID(lambda), \
868892
INIT_ID(last_traceback), \
869893
INIT_ID(last_type), \
870894
INIT_ID(last_value), \
871895
INIT_ID(latin1), \
896+
INIT_ID(line), \
872897
INIT_ID(lineno), \
898+
INIT_ID(listcomp), \
873899
INIT_ID(little), \
900+
INIT_ID(locale), \
874901
INIT_ID(match), \
875902
INIT_ID(metaclass), \
876903
INIT_ID(mode), \
@@ -881,9 +908,11 @@ extern "C" {
881908
INIT_ID(n_sequence_fields), \
882909
INIT_ID(n_unnamed_fields), \
883910
INIT_ID(name), \
911+
INIT_ID(newlines), \
884912
INIT_ID(obj), \
885913
INIT_ID(offset), \
886914
INIT_ID(onceregistry), \
915+
INIT_ID(opcode), \
887916
INIT_ID(open), \
888917
INIT_ID(parent), \
889918
INIT_ID(partial), \
@@ -911,6 +940,7 @@ extern "C" {
911940
INIT_ID(seek), \
912941
INIT_ID(seekable), \
913942
INIT_ID(send), \
943+
INIT_ID(setcomp), \
914944
INIT_ID(setstate), \
915945
INIT_ID(sort), \
916946
INIT_ID(stderr), \
@@ -922,6 +952,8 @@ extern "C" {
922952
INIT_ID(text), \
923953
INIT_ID(threading), \
924954
INIT_ID(throw), \
955+
INIT_ID(top), \
956+
INIT_ID(truncate), \
925957
INIT_ID(unraisablehook), \
926958
INIT_ID(values), \
927959
INIT_ID(version), \

Include/internal/pycore_symtable.h

Lines changed: 0 additions & 2 deletions

0 commit comments

Comments
 (0)