History log of /art/runtime/intrinsics_list.h
Revision Date Author Comments
4d4175a132b944214ed7559beb9b6b91d2eb36e1 10-Mar-2018 Hans Boehm <hboehm@hboehm.mtv.corp.google.com> Add reachabilityFence intrinsics

Add intrinsics that generate no code or do nothing for all architectures
and for the interpreter. The only impact is to keep the argument live at
all suspend points preceding the call. We ensure that the code is not
moved across other memory accesses by declaring it to have write side-effects.

Add a minimal test.

Modify 036-finalizer to use a reachabilityFence, hopefully making it
more robust to dead refererence elimination.

Bug: 72698200

Test: Build and boot AOSP.
art/test.py --host -r -t 072-reachability-fence
Look at generated code.

Change-Id: I0f298bf5cc375d8ebc19bb791cc05a8490d55430
Merged-In: I0f298bf5cc375d8ebc19bb791cc05a8490d55430
(cherry picked from AOSP commit c7b28de9f8bf407d91cff22de782d022492b45f7)
4d17987da58d9411adbed1a18203d76d6119612d 19-Jan-2018 Vladimir Marko <vmarko@google.com> ART: Add entrypoint and intrinsic for Math.pow().

MathBenchmarks.java#timePow results on taimen's little cores
fixed at frequency 1401600 with forced JIT compilation:
- before:
- X32: 356.33 (@FastNative), 315.39 (@CriticalNative)
- X64: 357.31 (@FastNative), 315.37 (@CriticalNative)
- after (LICM defeats the benchmark):
- X32: 2.88
- X64: 2.87
- after but with kAllSideEffects to prevent LICM:
- X32: 275.42
- X64: 275.67

Test: Rely on TreeHugger.
Bug: 70727450
Change-Id: Iaa31f70acabbd57c163cfeafe02eed67c1348861
43f0cdbe3281cd5c9a33d5472b1538e5617f6691 10-Oct-2017 Orion Hodson <oth@google.com> ART: Intrinsify polymorphic signature methods

Adds VarHandle accessor method to list of intrinsics.

Adds code to interpreter to ensure intrinsics with polymorphic
signatures are initialized.

Rename most uses of InvokePolymorphic to InvokeMethodHandle (and
similar changes) to be clear that the particular code path applies to
MethodHandle instances rather than VarHandle.

Change-Id: Ib74865124a1e986badc0a7c4bb3d782af07225d4
Bug: 65872996
Test: art/test.py --host
26ef34c01ae5db2d3c964844b3717b8974a612c9 01-Nov-2017 Orion Hodson <oth@google.com> ART: Move intrinsics definitions to runtime

Bug: 37538194
Test: art/test.py --host
Change-Id: Ic7adf5f8b14be0e1880ae898a4e199b4416a4d24