summaryrefslogtreecommitdiffstats
path: root/compiler/dex/quick/arm64/arm64_lir.h
diff options
context:
space:
mode:
authorSerban Constantinescu <serban.constantinescu@arm.com>2014-07-02 16:13:38 +0100
committerAndreas Gampe <agampe@google.com>2014-07-03 17:39:00 -0700
commit23abec955e2e733999a1e2c30e4e384e46e5dde4 (patch)
treec0a11826d94243cdbeda83a86e7a420c997b477b /compiler/dex/quick/arm64/arm64_lir.h
parentc72966a25c205a3914164f586e44e586e5715468 (diff)
downloadart-23abec955e2e733999a1e2c30e4e384e46e5dde4.zip
art-23abec955e2e733999a1e2c30e4e384e46e5dde4.tar.gz
art-23abec955e2e733999a1e2c30e4e384e46e5dde4.tar.bz2
AArch64: Add few more inline functions
This patch adds inlining support for the following functions: * Math.max/min(long, long) * Math.max/min(float, float) * Math.max/min(double, double) * Integer.reverse(int) * Long.reverse(long) Change-Id: Ia2b1619fd052358b3a0d23e5fcbfdb823d2029b9 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Diffstat (limited to 'compiler/dex/quick/arm64/arm64_lir.h')
-rw-r--r--compiler/dex/quick/arm64/arm64_lir.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/dex/quick/arm64/arm64_lir.h b/compiler/dex/quick/arm64/arm64_lir.h
index ea7f439..5077d11 100644
--- a/compiler/dex/quick/arm64/arm64_lir.h
+++ b/compiler/dex/quick/arm64/arm64_lir.h
@@ -259,6 +259,8 @@ enum ArmOpcode {
kA64Fcvt2Ss, // fcvt [0001111000100010110000] rn[9-5] rd[4-0].
kA64Fcvt2sS, // fcvt [0001111001100010010000] rn[9-5] rd[4-0].
kA64Fdiv3fff, // fdiv[000111100s1] rm[20-16] [000110] rn[9-5] rd[4-0].
+ kA64Fmax3fff, // fmax[000111100s1] rm[20-16] [010010] rn[9-5] rd[4-0].
+ kA64Fmin3fff, // fmin[000111100s1] rm[20-16] [010110] rn[9-5] rd[4-0].
kA64Fmov2ff, // fmov[000111100s100000010000] rn[9-5] rd[4-0].
kA64Fmov2fI, // fmov[000111100s1] imm_8[20-13] [10000000] rd[4-0].
kA64Fmov2sw, // fmov[0001111000100111000000] rn[9-5] rd[4-0].
@@ -306,6 +308,7 @@ enum ArmOpcode {
kA64Orr3Rrl, // orr [s01100100] N[22] imm_r[21-16] imm_s[15-10] rn[9-5] rd[4-0].
kA64Orr4rrro, // orr [s0101010] shift[23-22] [0] rm[20-16] imm_6[15-10] rn[9-5] rd[4-0].
kA64Ret, // ret [11010110010111110000001111000000].
+ kA64Rbit2rr, // rbit [s101101011000000000000] rn[9-5] rd[4-0].
kA64Rev2rr, // rev [s10110101100000000001x] rn[9-5] rd[4-0].
kA64Rev162rr, // rev16[s101101011000000000001] rn[9-5] rd[4-0].
kA64Ror3rrr, // ror [s0011010110] rm[20-16] [001011] rn[9-5] rd[4-0].