]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
More SSE support for cachegrind.
authorJulian Seward <jseward@acm.org>
Tue, 4 Nov 2003 22:54:28 +0000 (22:54 +0000)
committerJulian Seward <jseward@acm.org>
Tue, 4 Nov 2003 22:54:28 +0000 (22:54 +0000)
MERGE TO STABLE

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2003

cachegrind/cg_main.c

index d49fe79f34e5f16c2d354d403e2d23737c5a9962..9307fcc1dfc3f7ae135c2e6877c18b42f20557cd 100644 (file)
@@ -559,6 +559,12 @@ static Int compute_BBCC_array_size(UCodeBlock* cb)
             is_FPU_R = True;
             break;
 
+         case SSE3a1_MemRd:
+            sk_assert(u_in->size == 16);
+            t_read = u_in->val3;
+            is_FPU_R = True;
+            break;
+
          case SSE3ag_MemRd_RegWr:
             sk_assert(u_in->size == 4 || u_in->size == 8);
             t_read = u_in->val1;
@@ -813,6 +819,15 @@ UCodeBlock* SK_(instrument)(UCodeBlock* cb_in, Addr orig_addr)
             VG_(copy_UInstr)(cb, u_in);
             break;
 
+         case SSE3a1_MemRd:
+            sk_assert(u_in->size == 16);
+            t_read = u_in->val3;
+            t_read_addr = newTemp(cb);
+            uInstr2(cb, MOV, 4, TempReg, u_in->val3,  TempReg, t_read_addr);
+            data_size = u_in->size;
+            VG_(copy_UInstr)(cb, u_in);
+            break;
+
          case SSE3ag_MemRd_RegWr:
             sk_assert(u_in->size == 4 || u_in->size == 8);
             t_read = u_in->val1;