Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

64-bit NaN-boxing support #1655

Closed
wants to merge 13 commits into from
Closed

Commits on Nov 28, 2015

  1. Configuration menu
    Copy the full SHA
    7cb5423 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9c305ac View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fabd90c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a72ab25 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f783d8e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1b6ac7e View commit details
    Browse the repository at this point in the history
  7. py/gc: Move away from using mp_uint_t, instead use uintptr_t and size_t.

    The GC works with concrete pointers and so the types should reflect this.
    dpgeorge committed Nov 28, 2015
    Configuration menu
    Copy the full SHA
    838e27a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e49a35d View commit details
    Browse the repository at this point in the history

Commits on Nov 29, 2015

  1. py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR.

    This allows the mp_obj_t type to be configured to something other than a
    pointer-sized primitive type.
    
    This patch also includes additional changes to allow the code to compile
    when sizeof(mp_uint_t) != sizeof(void*), such as using size_t instead of
    mp_uint_t, and various casts.
    dpgeorge committed Nov 29, 2015
    Configuration menu
    Copy the full SHA
    ecbcefa View commit details
    Browse the repository at this point in the history
  2. py: Add support for 64-bit NaN-boxing object model, on 32-bit machine.

    To use, put the following in mpconfigport.h:
    
        #define MICROPY_OBJ_REPR (MICROPY_OBJ_REPR_D)
        #define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE)
        typedef int64_t mp_int_t;
        typedef uint64_t mp_uint_t;
        #define UINT_FMT "%llu"
        #define INT_FMT "%lld"
    
    Currently does not work with native emitter enabled.
    dpgeorge committed Nov 29, 2015
    Configuration menu
    Copy the full SHA
    611f177 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b75b3c9 View commit details
    Browse the repository at this point in the history
  4. fix printf formatting codes

    dpgeorge committed Nov 29, 2015
    Configuration menu
    Copy the full SHA
    34c84f8 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    758a97f View commit details
    Browse the repository at this point in the history