ECMAScript uses milliseconds (double) as its internal representation, but Date constructor and its operation clips this double before actually using it.
As a result, this milliseconds is always within 53bit, and it is always integer. This means that we should use int64_t when calculating GregorianDateTime.
When running instruments profiler, 31% of time is consumed by `fmod`. This is really fun, we should use integers instead.
Created attachment 382260 [details]
Created attachment 382268 [details]
Created attachment 382270 [details]
Created attachment 382412 [details]
Committed r251852: <https://trac.webkit.org/changeset/251852>