• rossberg's avatar
    Steps towards unification of number bitset and range types. · 2764fd8d
    rossberg authored
    - New invariant on union types: if the union has a range then the number
      bits in the bitset must be cleared.
    
    - Various tweaks in intersection and union to satisfy the invariant.
    
    - Exposed and used representation bits in range types (and the Limits
      helper class).
    
    - Implemented Glb for ranges so that the Is predicate handles
      ranges correctly.
    
    - Change typer weakening so that it does not rely on GetRange.
      However, the code still seems to be a bit fragile.
    
    - Removed the Smi types from the type system core, instead introduced
      Signed31, Unsigned30 and created constructors for Small(Un)Signed
      that point to the right type for the architecture.
    
    - Punched a hole in the config to be able to get to the isolate so
      that it is possible to allocate heap numbers for newly created
      ranges.
    
    Patch by jarin@chromium.prg, original review here:
    https://codereview.chromium.org/795713003/
    
    TBR=jarin@chromium.org
    BUG=
    
    Review URL: https://codereview.chromium.org/837723006
    
    Cr-Commit-Position: refs/heads/master@{#26197}
    2764fd8d
Name
Last commit
Last update
..
c-signature.h Loading commit data...
call-tester.h Loading commit data...
codegen-tester.cc Loading commit data...
codegen-tester.h Loading commit data...
function-tester.h Loading commit data...
graph-builder-tester.cc Loading commit data...
graph-builder-tester.h Loading commit data...
graph-tester.h Loading commit data...
instruction-selector-tester.h Loading commit data...
simplified-graph-builder.cc Loading commit data...
simplified-graph-builder.h Loading commit data...
test-basic-block-profiler.cc Loading commit data...
test-branch-combine.cc Loading commit data...
test-changes-lowering.cc Loading commit data...
test-codegen-deopt.cc Loading commit data...
test-control-reducer.cc Loading commit data...
test-gap-resolver.cc Loading commit data...
test-graph-reducer.cc Loading commit data...
test-graph-visualizer.cc Loading commit data...
test-instruction.cc Loading commit data...
test-js-constant-cache.cc Loading commit data...
test-js-context-specialization.cc Loading commit data...
test-js-typed-lowering.cc Loading commit data...
test-jump-threading.cc Loading commit data...
test-linkage.cc Loading commit data...
test-loop-analysis.cc Loading commit data...
test-loop-assignment-analysis.cc Loading commit data...
test-machine-operator-reducer.cc Loading commit data...
test-node-algorithm.cc Loading commit data...
test-node-cache.cc Loading commit data...
test-node.cc Loading commit data...
test-operator.cc Loading commit data...
test-osr.cc Loading commit data...
test-pipeline.cc Loading commit data...
test-representation-change.cc Loading commit data...
test-run-deopt.cc Loading commit data...
test-run-inlining.cc Loading commit data...
test-run-intrinsics.cc Loading commit data...
test-run-jsbranches.cc Loading commit data...
test-run-jscalls.cc Loading commit data...
test-run-jsexceptions.cc Loading commit data...
test-run-jsops.cc Loading commit data...
test-run-machops.cc Loading commit data...
test-run-properties.cc Loading commit data...
test-run-stackcheck.cc Loading commit data...
test-run-variables.cc Loading commit data...
test-schedule.cc Loading commit data...
test-scheduler.cc Loading commit data...
test-simplified-lowering.cc Loading commit data...
test-typer.cc Loading commit data...
value-helper.h Loading commit data...