[JS IR BE] Fix stdlib files list for 1.3

This commit is contained in:
Svyatoslav Kuzmich
2018-08-31 14:56:54 +03:00
parent c3b9a5108e
commit 197a5969e2
2 changed files with 39 additions and 3 deletions
@@ -0,0 +1,28 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the license/LICENSE.txt file.
*/
package kotlin.random
import kotlin.math.pow
// TODO: use stdlib file when math.pow is fixed
internal actual fun defaultPlatformRandom(): Random =
Random(js("(Math.random() * Math.pow(2, 32)) | 0").unsafeCast<Int>())
internal actual fun fastLog2(value: Int): Int {
// TODO: not so fast, make faster
var v = value
var log = -1
while (v != 0) {
v = v.ushr(1)
log++
}
return log
}
internal actual fun doubleFromParts(hi26: Int, low27: Int): Double =
hi26 * (2.0.pow(-26)) + low27 * (2.0.pow(-53))