Index: src/trusted/validator_x86/testdata/64/stubseq.tf |
diff --git a/src/trusted/validator_x86/testdata/64/stubseq.tf b/src/trusted/validator_x86/testdata/64/stubseq.tf |
new file mode 100644 |
index 0000000000000000000000000000000000000000..32452e5c6a08c5fd2057665ea5e91e38b7892cfe |
--- /dev/null |
+++ b/src/trusted/validator_x86/testdata/64/stubseq.tf |
@@ -0,0 +1,38 @@ |
+BITS: 64 |
+OUTCOME: invalid |
+ |
+# Sample stubout code, with multiple stubouts. |
+# |
+# add %al, %al |
+asm: add %al,%al |
+hex: 00 c0 |
+ |
+# add &rsp, %r15; -- stub out! |
+asm: add %r15,%rsp |
+hex: 4c 01 fc |
+nc_out: ERROR: Illegal assignment to RSP |
+ |
+# add %ebx, %r8d |
+asm: add %r8d,%ebx |
+hex: 44 01 c3 |
+ |
+# test %rax, %rax |
+asm: test %rax,%rax |
+hex: 48 85 c0 |
+ |
+# inc [%rip+0x397614]; -- stub out! |
+asm: addr32 incl 0x3976a4(%eip) # 0x3976ab |
+hex: 67 ff 05 a4 76 39 00 |
+nc_out: ERROR: Use of 67 (ADDR16) prefix not allowed by Native Client |
+nc_out: ERROR: Assignment to non-64 bit memory address |
+ |
+# mov %r9, %rdx |
+asm: mov %rdx,%r9 |
+hex: 49 89 d1 |
+ |
+# mov [%rbp+0x63e470], %rax; -- stub out! |
+hex: 67 48 89 84 25 70 e4 63 00 |
+nc_out: ERROR: Use of 67 (ADDR16) prefix not allowed by Native Client |
+nc_out: ERROR: Assignment to non-64 bit memory address |
+ |
+ |