Permalink
Commits on Nov 3, 2018
Commits on Nov 2, 2018
  1. add SourceLink support (#545)

    lahma authored and sebastienros committed Nov 2, 2018
Commits on Sep 10, 2018
Commits on Sep 6, 2018
Commits on Aug 21, 2018
Commits on Aug 20, 2018
  1. Add Test262 test cases (#525)

    lahma authored and sebastienros committed Aug 20, 2018
Commits on Jul 11, 2018
  1. Optimize interop (#519)

    lahma authored and sebastienros committed Jul 11, 2018
Commits on Jun 28, 2018
Commits on Jun 26, 2018
  1. Optimize declarative environment record handling for functions (#517)

    lahma authored and sebastienros committed Jun 26, 2018
    * #451 optimize declarative environment record handling for functions
    
    * use explicit type field checks as small methods won't inline to small methods
    * seal some classes
    
    * #451 inline more hot paths
    
    * #451 use == instead of Equals for doubles as strings, less IL code
    
    * #451 minimize work done in hot paths
    
    * #451 use Dictionary directly in ObjectInstance as it caters better performance
    
    * #451 tweak property setting via direct field
    
    * #451 more tweaks
    
    * #451 use ArrayPrototype.ConstructFast when possible
    
    * #451 improve bounds check performance for .NET Core 2.1
Commits on Jun 21, 2018
Commits on Jun 18, 2018
  1. #451 cache literals (#513)

    lahma authored and sebastienros committed Jun 18, 2018
Commits on May 11, 2018
Commits on Apr 30, 2018
Commits on Apr 25, 2018
  1. Optimize some hot paths (#464)

    lahma authored and sebastienros committed Apr 25, 2018
Commits on Apr 17, 2018
Commits on Apr 16, 2018
  1. #451 remove IPropertyDescriptor now that we have fast and memory effi…

    lahma committed Apr 15, 2018
    …cient PropertyDescriptor
  2. #451 optimize ArrayInstance

    lahma committed Mar 26, 2018
    * optimize methods and make tweak for better inlining
    * use flags enum for PropertyDescriptor
    * remove Get and Set backing fields from PropertyDescriptor, separate GetSetPropertyDescriptor
Commits on Apr 14, 2018
  1. #451 optimize evaluation performance

    lahma committed Mar 28, 2018
    * make StrictModeScope a struct
    * prioritize statement branching
    * reuse JsValue array instances
    * check string length before equality (can save some 20% if less likely to hit)
Commits on Feb 19, 2018
Commits on Feb 11, 2018
  1. Introduce object pooling (#479)

    lahma authored and sebastienros committed Feb 11, 2018
    * #451 pool Reference instances
    
    * #451 pool Completion instances
    
    * #451 use Roslyn's tried ObjectPool implementation
    
    * #451 use faster ArgumentsInstance initialization
    
    * saner defaults for slow benchmarks
    
    * #451 remove Interlocked.CompareExchange
    
    * #451 pool ArgumentsInstances
Commits on Jan 31, 2018
  1. Revert back to MruPropertyCache2 with _set field (#478)

    lahma authored and sebastienros committed Jan 31, 2018
Commits on Jan 30, 2018
  1. Fix cached data structures to be thread-local (#476)

    lahma authored and sebastienros committed Jan 30, 2018
Commits on Jan 29, 2018
Commits on Jan 24, 2018
  1. #451 string comparison related performance improvements (#470)

    lahma authored and sebastienros committed Jan 24, 2018
    * change MruPropertyCache2 to have string key
    * remove shared string property checks from ObjectInstance
    * check length in array instance
    * move prototype and constructor to ScriptFunctionInstance, specialize ObjectInstanceWithConstructor
Commits on Jan 23, 2018
  1. upgrade Esprima and BenchmarkDotNet (#468)

    lahma authored and sebastienros committed Jan 23, 2018
    * add StopwatchBenchmark
    * make benchmarks more reliable with longer run counts
Commits on Jan 10, 2018
  1. Introduce JsString, JsBoolean etc and support efficient string concat…

    lahma authored and sebastienros committed Jan 10, 2018
    …enation (#463)
    
    * introduce JsString and support efficient string concatenation
    
    * introduce JsBoolean, JsNumber and JsObject
    
    * introduce JsNull and JsUndefined, clean up JsValue
    
    * make ObjectInstance JsValue
    
    * favor instance fields for prototype objects instead of thread local
    
    * optimize string concatenation prediction logic
    
    * prefer ReferenceEquals for faster null and undefined checks
Commits on Jan 9, 2018
  1. #451 fix string.split and array.join performance (#462)

    lahma authored and sebastienros committed Jan 9, 2018
    * String.split should not to create new list
    * Array.join should use StringBuilder
    * add dromaeo benchmarks
Commits on Jan 8, 2018