Native: add ExperimentalForeignApi opt-in to performance tests

3f3f6eb marks all cinterop-generated declarations with
@ExperimentalForeignApi. As a result, all usages of such declarations
have to opt-in explicitly. This commit adds those opt-ins to all
usages in the performance tests.

^KT-58362
This commit is contained in:
Svyatoslav Scherbina
2023-07-24 08:38:30 +02:00
committed by Space Team
parent fd564d4af9
commit bfcb90c716
4 changed files with 7 additions and 1 deletions
@@ -22,6 +22,7 @@ fun konanBellardPi() {
fun clangBellardPi() {
for (n in 1 .. 1000 step 9) {
@OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
val result = cinterop.pi_nth_digit(n)
Blackhole.consume(result)
}
@@ -2,6 +2,7 @@
* Copyright 2010-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
package org.jetbrains.complexNumbers
import kotlinx.cinterop.*
@@ -16,7 +16,10 @@ class ObjCInteropLauncher: Launcher() {
"fft" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, { fft() })
)
override val extendedBenchmarksSet: MutableMap<String, AbstractBenchmarkEntry> = mutableMapOf(
"generateNumbersSequence" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, { generateNumbersSequence() }),
"generateNumbersSequence" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, {
@OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
generateNumbersSequence()
}),
"subComplex" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, { subComplex() }),
"classInheritance" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, { classInheritance() }),
"categoryMethods" to BenchmarkEntryWithInit.create(::ComplexNumbersBenchmark, { categoryMethods() }),
@@ -10,6 +10,7 @@ const val benchmarkSize = 10000
expect class ComplexNumber
expect class ComplexNumbersBenchmark() {
@OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
fun generateNumbersSequence(): List<ComplexNumber>
fun sumComplex()
fun subComplex()