52 Commits (6d82499a487a5f528e268c6d0415393965a75587)

Author SHA1 Message Date
Damien George 2b575418b6 py/qstr: Evaluate find_qstr only once then pass to Q_GET_HASH macro. 6 years ago
Damien George 0d165fec9c py/qstr: Put a lower bound on new qstr pool allocation. 6 years ago
Damien George 8e323b8fa8 py/qstr: Rewrite find_qstr to make manifest that it returns a valid ptr. 7 years ago
Damien George 487dbdb267 py/compile: Use alloca instead of qstr_build when compiling import name. 7 years ago
Stefan Naumann ace9fb5405 py: Add verbose debug compile-time flag MICROPY_DEBUG_VERBOSE. 7 years ago
Alexander Steffen 55f33240f3 all: Use the name MicroPython consistently in comments 7 years ago
Colin Hogben f9b6b37cf6 py: Fix wrong assumption that m_renew will not move if shrinking 8 years ago
Damien George e60835bac5 py/qstr: Remove a comment. 8 years ago
Damien George a1c93a62b1 py: Don't use gc or qstr mutex when the GIL is enabled. 9 years ago
Damien George 1f54ad2aed py: Make interning of qstrs thread safe. 9 years ago
Paul Sokolovsky f469c76442 py: Rename __QSTR_EXTRACT flag to NO_QSTR. 9 years ago
Paul Sokolovsky c618f91e22 py: Rework QSTR extraction to work in simple and obvious way. 9 years ago
Damien George 0a2e9650f5 py: Add ability to have frozen persistent bytecode from .mpy files. 9 years ago
Damien George 257848587f py/qstr: Use size_t instead of mp_uint_t when counting allocated bytes. 9 years ago
Damien George c3f64d9799 py: Change qstr_* functions to use size_t as the type for str len arg. 9 years ago
Damien George 59a41e8fcd py/qstr: Fix calc of qstr memory usage, due to new qstr chunk allocation. 9 years ago
Damien George c3bd9415cc py: Make qstr hash size configurable, defaults to 2 bytes. 9 years ago
Damien George ade9a05236 py: Improve allocation policy of qstr data. 10 years ago
Damien George e72cda99fd py: Convert occurrences of non-debug printf to mp_printf. 10 years ago
Damien George ea0461dcd3 py: Add option to micropython.qstr_info() to dump actual qstrs. 10 years ago
Damien George 963a5a3e82 py, unix: Allow to compile with -Wsign-compare. 10 years ago
Damien George 4c81ba8015 py: Never intern data of large string/bytes object; add relevant tests. 10 years ago
Damien George 95836f8439 py: Add MICROPY_QSTR_BYTES_IN_LEN config option, defaulting to 1. 10 years ago
Damien George 6942f80a8f py: Add qstr cfg capability; generate QSTR_NULL and QSTR_ from script. 10 years ago
Damien George 01418e9690 py: Fix hard-coded hash for empty qstr (was 0x0000 now 0x1505). 10 years ago
Damien George b4b10fd350 py: Put all global state together in state structures. 10 years ago
Damien George 51dfcb4bb7 py: Move to guarded includes, everywhere in py/ core. 10 years ago
Damien George 109c1de015 py: Make gc.enable/disable just control auto-GC; alloc is still allowed. 10 years ago
Damien George 0b13f3e026 py: Improve memory usage debugging; better GC AT dumping. 10 years ago
Damien George 39dc145478 py: Change [u]int to mp_[u]int_t in qstr.[ch], and some other places. 10 years ago
Damien George 40f3c02682 Rename machine_(u)int_t to mp_(u)int_t. 11 years ago
Paul Sokolovsky 59c675a64c py: Include mpconfig.h before all other includes. 11 years ago
Damien George 73c98d8709 py: Fix static defn in qstr; include mpconfigport.h with "" (not <>). 11 years ago
Damien George 2617eebf2f Change const byte* to const char* where sensible. 11 years ago
Damien George 04b9147e15 Add license header to (almost) all files. 11 years ago
Damien George d553be5982 build: Simplify build directory layout by putting all headers in genhdr. 11 years ago
Andrew Scheller 70a7d7a943 build directory can now be renamed 11 years ago
Paul Sokolovsky 59e269cfec qstr, objstr: Make sure that valid hash != 0, treat 0 as "not computed". 11 years ago
Damien George 6e628c49ca py: Replace naive and teribble hash function with djb2. 11 years ago
Damien George 1dc76af7bf py: Remove name of var arg from macros with var args. 11 years ago
Paul Sokolovsky 44739e280e Make DEBUG_printf() a proper function, implementation is port-dependent. 11 years ago
Paul Sokolovsky 520e2f58a5 Replace global "static" -> "STATIC", to allow "analysis builds". Part 2. 11 years ago
Damien George 4d5b28cd08 Add qstr_info() function and bindings for unix port. 11 years ago
Dave Hylands c89c681a9f Rework makefiles. Add proper dependency checking. 11 years ago
Damien George 1e708fed18 py: Implement bool unary op; tidy up unary op dispatch. 11 years ago
Damien George 5fa93b6755 Second stage of qstr revamp: uPy str object can be qstr or not. 11 years ago
Damien George 55baff4c9b Revamp qstrs: they now include length and hash. 11 years ago
Dave Hylands d986b582c0 Make qstr_init reinitialize last_pool. 11 years ago
Damien George eb7bfcb286 Split qstr into pools, and put initial pool in ROM. 11 years ago
Damien 732407f1bf Change memory allocation API to require size for free and realloc. 11 years ago