Lichen

Changelog

(0) -300 -100 -10 +10 +100 tip
760:09f0039c42cb 761:54dd15ef07b2 769:00e902870a29
2017-03-24 Paul Boddie changeset files shortlog graph Test for the presence of the exact number of required arguments first.
templates/progops.c
759:05930170914d 757:b496ef9d5ee1
2017-03-24 Paul Boddie changeset files shortlog graph Avoid target unwrapping if it has been done already.
templates/ops.c templates/ops.h templates/progops.c
758:41eddb32a603 761:54dd15ef07b2 763:9c393bfc03d5
2017-03-23 Paul Boddie changeset files shortlog graph Represent integers as __attr values with bit 0 set. Since pointers must be aligned (to four-byte boundaries on many modern systems, maybe two-byte boundaries on older or embedded systems, eight-byte boundaries on some 64-bit systems), any value with bit 0 set will not be referencing an object. This avoids allocating objects for integers and instead just allows them to be passed around. Bit 0 needs to be tested when attributes are accessed, and for integers, a common instance is employed to provide any instance attributes, an instance table reference and a reference to the integer class. integers-as-tagged-attrs
generator.py lib/__builtins__/character.py lib/__builtins__/int.py lib/__builtins__/str.py lib/native/__init__.py lib/native/int.py templates/native/buffer.c templates/native/common.c templates/native/common.h templates/native/iconv.c ...
757:b496ef9d5ee1 758:41eddb32a603 759:05930170914d
2017-03-23 Paul Boddie changeset files shortlog graph Switched to using __attr values in many operations instead of using __ref values. This should allow __attr values to be passed around while being interpreted in other ways by certain native functions.
encoders.py templates/native/introspection.c templates/native/program.c templates/ops.c templates/ops.h templates/progops.c templates/progops.h translator.py
756:195b15f90472 754:332483cd7ba3
2017-03-21 Paul Boddie changeset files shortlog graph Allocate integers using a different allocator employing GC_MALLOC_ATOMIC.
templates/native/common.c templates/ops.c templates/ops.h templates/progops.c templates/progops.h
755:5fd3c0524204
2017-03-21 Paul Boddie changeset files shortlog graph Added support for an integer cache containing specific pre-allocated objects. integer-cache
common.py generator.py templates/native/common.c
754:332483cd7ba3 755:5fd3c0524204 756:195b15f90472
2017-03-21 Paul Boddie changeset files shortlog graph Revert inappropriate optimisations causing the get_using test to produce incorrect output: the context of an arbitrary object must be tested using __get_function even if it is provided by that object.
tests/get_using.py translator.py
753:77aa11d4aa5a
2017-03-21 Paul Boddie changeset files shortlog graph Support argument list preparation for multiple unknown invocation targets with identical parameter requirements where no keyword arguments are used.
translator.py
752:118fe46024d5
2017-03-21 Paul Boddie changeset files shortlog graph Employ a special informational instruction to identify static access targets.
deducer.py translator.py
751:777117091398
2017-03-20 Paul Boddie changeset files shortlog graph Obtain static final attribute details for access results.
translator.py
(0) -300 -100 -10 +10 +100 tip