{"push_id":590548859,"size":1,"distinct_size":1,"ref":"refs/heads/EXODUS","head":"4984e054fb505c6b5495bc742ae2f3bb59fbc032","before":"8f71f463f4604ad8966559794b84553acdb6f003","commits":[{"sha":"4984e054fb505c6b5495bc742ae2f3bb59fbc032","author":{"email":"e7ef2d30577bd192d036a7f424ec6dd692d415f2@google.com","name":"Nick Kralevich"},"message":"Replacing FloatMath native implementation with calls to Math\n\nOn modern versions of Android running in AOT mode\nFloatMath is slower than Math. Calls to Math.sqrt(),\netc. are replaced by intrinsics which can be as small\nas a single CPU opcode.\n\nWhen running in interpreted mode the new\nimplementation is unfortunately slower, but I'm\njudging this acceptable and likely to be improved\nover time. This change saves a small amount of native\ncode.\n\nExample timings:\n\nMako AOSP AOT:\n\nMethod: Original / New / Direct call to Math\nceil: 596ns / 146.ns / 111ns\nsqrt: 694ns / 56ns / 25ns\n\nMako AOSP interpreted:\n\nMethod: Original / New / Direct call to Math\nceil: 1900ns / 2307ns / 1485ns\nsqrt: 1998ns / 2603ns / 1788ns\n\nOther calls Mako AOT:\n\nMethod: Original / New\ncos: 635ns / 270ns\nexp: 566ns / 324ns\nfloor: 604ns / 150ns\nhypot: 631ns / 232ns\npow: 936ns / 643ns\nsin: 641ns / 299ns\n\nThe advice to use Math directly, in preference to\nFloatMath, is still good. FloatMath will be deprecated\nseparately.\n\nBug: https://code.google.com/p/android/issues/detail?id=36199\nChange-Id: If07fcbd78543d13bc6d75f9743f999860e8d58d7","distinct":true,"url":"https://api.github.com/repos/VanirExodus/frameworks_base/commits/4984e054fb505c6b5495bc742ae2f3bb59fbc032"}]}