diff options
author | Artem Serov <artem.serov@linaro.org> | 2020-02-13 20:33:19 +0000 |
---|---|---|
committer | Artem Serov <artem.serov@linaro.org> | 2020-02-13 20:33:19 +0000 |
commit | 61d06ad8cde579e93e462f81d515c05e2fe67bb2 (patch) | |
tree | 5d972d0b5672008d7c7ded4cdce2007409c5f6df | |
parent | ee28701ba925574dffcbf2b234246f5b0bcc1307 (diff) | |
download | art-testing-61d06ad8cde579e93e462f81d515c05e2fe67bb2.tar.gz |
Add FP isInfinite() intrinsics benchmarks.
Test: N/A.
Change-Id: Ic624beed59e06b2814e7d71f30f3f7b708d0330f
-rw-r--r-- | benchmarks/micro/intrinsics/Intrinsics.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/benchmarks/micro/intrinsics/Intrinsics.java b/benchmarks/micro/intrinsics/Intrinsics.java index 5feb879..2994789 100644 --- a/benchmarks/micro/intrinsics/Intrinsics.java +++ b/benchmarks/micro/intrinsics/Intrinsics.java @@ -286,6 +286,25 @@ public class Intrinsics { } } + private static int[] resultsFloatIsInfinite = new int[NUM_INVOKES]; + private static int[] resultsDoubleIsInfinite = new int[NUM_INVOKES]; + + public void timeFloatIsInfinite(int iterations) { + for (int iter = 0; iter < iterations; ++iter) { + for (int i = 0; i < NUM_INVOKES; ++i) { + resultsFloatIsInfinite[i] = Float.isInfinite((float)i) ? 0 : i; + } + } + } + + public void timeDoubleIsInfinite(int iterations) { + for (int iter = 0; iter < iterations; ++iter) { + for (int i = 0; i < NUM_INVOKES; ++i) { + resultsDoubleIsInfinite[i] = Double.isInfinite((double)i) ? 0 : i; + } + } + } + /** * Verify. **/ @@ -326,6 +345,9 @@ public class Intrinsics { obj.timeBitCountIntegerRandom(100000); obj.timeBitCountLongRandom(100000); + obj.timeFloatIsInfinite(100000); + obj.timeDoubleIsInfinite(100000); + long after = System.currentTimeMillis(); System.out.println("benchmarks/micro/intrinsics/Intrinsics: " + (after - before)); } |