Skip to content
Permalink
Branch: master
Commits on Jun 24, 2019
  1. fix reoccurring typo

    RalfJung committed Jun 24, 2019
Commits on Jun 23, 2019
  1. expand comment

    RalfJung committed Jun 23, 2019
  2. deduplicate some code

    RalfJung committed Jun 23, 2019
  3. make code more symmetric

    RalfJung committed Jun 23, 2019
  4. comment tweaks, better validation errors, update UI tests

    RalfJung committed Jun 23, 2019
  5. clean up internals of pointer checks; make get_size_and_align also ch…

    RalfJung committed Jun 23, 2019
    …eck for fn allocations
  6. Centralize bounds, alignment and NULL checking for memory accesses in…

    RalfJung committed Jun 23, 2019
    … one function: memory.check_ptr_access
    
    That function also takes care of converting a Scalar to a Pointer, should that be needed.  Not all accesses need that though: if the access has size 0, None is returned.
    Everyone accessing memory based on a Scalar should use this method to get the Pointer they need.
    
    All operations on the Allocation work on Pointer inputs and expect all the checks to have happened (and will ICE if the bounds are violated).
    The operations on Memory work on Scalar inputs and do the checks themselves.
    
    The only other public method to check pointers is memory.ptr_may_be_null, which is needed in a few places.
    With this, we can make all the other methods (tests for a pointer being in-bounds and checking alignment) private helper methods, used to implement the two public methods.
    That maks the public API surface much easier to use and harder to mis-use.
    
    While I am at it, this also removes the assumption that the vtable part of a `dyn Trait`-fat-pointer is a `Pointer` (as opposed to a pointer cast to an integer, stored as raw bits).
Commits on Jun 22, 2019
  1. update miri

    RalfJung committed Jun 22, 2019
Commits on Jun 18, 2019
  1. create an issue for miri even in status test-fail

    RalfJung committed Jun 18, 2019
  2. update miri

    RalfJung committed Jun 18, 2019
Commits on Jun 14, 2019
  1. update miri

    RalfJung committed Jun 14, 2019
  2. make sure we use cfg-if as a std dependency

    RalfJung committed Jun 14, 2019
  3. note some safety concerns of raw-ptr-to-ref casts

    RalfJung committed Jun 12, 2019
Commits on Jun 13, 2019
  1. update miri

    RalfJung committed Jun 13, 2019
Commits on Jun 11, 2019
  1. is_fp and is_floating_point do the same thing, remove the former

    RalfJung committed Jun 9, 2019
    also consistently mark all these is_* methods for inlining
Commits on Jun 10, 2019
  1. comments

    RalfJung committed Jun 6, 2019
  2. replace some mode comparisons by more readable function call, rename …

    RalfJung committed Jun 3, 2019
    …some Mode, and more comments
  3. make sure to_ascii_lowercase actually leaves upper-case non-ASCII cha…

    RalfJung committed Jun 10, 2019
    …racters alone
Commits on Jun 9, 2019
  1. test more variants of enum-int-casting

    RalfJung committed Jun 9, 2019
  2. move stray run-pass const tests into const/ folder

    RalfJung committed Jun 9, 2019
  3. Miri: disable a slow test

    RalfJung committed Jun 9, 2019
  4. forgot about multivariant enum casts

    RalfJung committed Jun 9, 2019
  5. make floating point casts nicer with generics

    RalfJung committed Jun 9, 2019
  6. Apply suggestions from code review

    RalfJung and Centril committed Jun 9, 2019
    Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
Commits on Jun 8, 2019
  1. make unary float negation slightly nicer

    RalfJung committed Jun 8, 2019
  2. trait-ize binary_float_op

    RalfJung committed Jun 8, 2019
  3. extra paranoid mode

    RalfJung committed Jun 8, 2019
  4. black-box the fn ptr, not the result

    RalfJung committed Jun 8, 2019
  5. remove useless ident() functions in const tests and replace the usefu…

    RalfJung committed Jun 8, 2019
    …l ones by black_box (with a comment)
Older
You can’t perform that action at this time.