big optimization round
This commit is contained in:
1 parent
029fde2883
commit
38c1b3c209
39 files changed
+1914
-143
No files matched your search
@@ -0,0 +1,20 @@
|
||||
package net.sergeych.lyng
|
||||
|
||||
import net.sergeych.lyng.obj.Obj
|
||||
|
||||
actual object ArgBuilderProvider {
|
||||
actual fun acquire(): ArgsBuilder = WasmArgsBuilder()
|
||||
}
|
||||
|
||||
private class WasmArgsBuilder : ArgsBuilder {
|
||||
private var buf: MutableList<Obj> = ArrayList()
|
||||
|
||||
override fun reset(expectedSize: Int) {
|
||||
buf = ArrayList(expectedSize.coerceAtLeast(0))
|
||||
}
|
||||
|
||||
override fun add(v: Obj) { buf.add(v) }
|
||||
override fun addAll(vs: List<Obj>) { if (vs.isNotEmpty()) buf.addAll(vs) }
|
||||
override fun build(tailBlockMode: Boolean): Arguments = Arguments(buf.toList(), tailBlockMode)
|
||||
override fun release() { /* no-op */ }
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package net.sergeych.lyng
|
||||
|
||||
actual object PerfDefaults {
|
||||
actual val LOCAL_SLOT_PIC: Boolean = true
|
||||
actual val EMIT_FAST_LOCAL_REFS: Boolean = true
|
||||
|
||||
actual val ARG_BUILDER: Boolean = true
|
||||
actual val SKIP_ARGS_ON_NULL_RECEIVER: Boolean = true
|
||||
actual val SCOPE_POOL: Boolean = false
|
||||
|
||||
actual val FIELD_PIC: Boolean = true
|
||||
actual val METHOD_PIC: Boolean = true
|
||||
|
||||
actual val PIC_DEBUG_COUNTERS: Boolean = false
|
||||
|
||||
actual val PRIMITIVE_FASTOPS: Boolean = true
|
||||
// Conservative default for non-JVM until validated
|
||||
actual val RVAL_FASTPATH: Boolean = false
|
||||
}
|
||||
Reference in new issue
Block a user