summaryrefslogtreecommitdiffstats
path: root/disassembler
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2015-04-02 23:10:46 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-04-02 23:10:46 +0000
commit97597c9be7f4eb5263a80e7de4684dbfa1427e9a (patch)
tree690dc04c72690a056aa84ac0206f96e5f513b3c2 /disassembler
parent7775d2c1e48c0bb0880f720f3dfbd4b4d0de7c6e (diff)
parentfb8d279bc011b31d0765dc7ca59afea324fd0d0c (diff)
downloadart-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.zip
art-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.tar.gz
art-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.tar.bz2
Merge "[optimizing] Implement x86/x86_64 math intrinsics"
Diffstat (limited to 'disassembler')
-rw-r--r--disassembler/disassembler_x86.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/disassembler/disassembler_x86.cc b/disassembler/disassembler_x86.cc
index 203488d..a1834e1 100644
--- a/disassembler/disassembler_x86.cc
+++ b/disassembler/disassembler_x86.cc
@@ -561,6 +561,24 @@ DISASSEMBLER_ENTRY(cmp,
instr++;
if (prefix[2] == 0x66) {
switch (*instr) {
+ case 0x0A:
+ opcode1 = "roundss";
+ prefix[2] = 0;
+ has_modrm = true;
+ store = true;
+ src_reg_file = SSE;
+ dst_reg_file = SSE;
+ immediate_bytes = 1;
+ break;
+ case 0x0B:
+ opcode1 = "roundsd";
+ prefix[2] = 0;
+ has_modrm = true;
+ store = true;
+ src_reg_file = SSE;
+ dst_reg_file = SSE;
+ immediate_bytes = 1;
+ break;
case 0x14:
opcode1 = "pextrb";
prefix[2] = 0;