Index: src/trusted/validator/x86/testing/tf/converted/64/mov-esi-nop-use.tf |
diff --git a/src/trusted/validator/x86/testing/tf/converted/64/mov-esi-nop-use.tf b/src/trusted/validator/x86/testing/tf/converted/64/mov-esi-nop-use.tf |
new file mode 100644 |
index 0000000000000000000000000000000000000000..83d9e03c5dc2ba52d9f8b3acb68d639571dbb240 |
--- /dev/null |
+++ b/src/trusted/validator/x86/testing/tf/converted/64/mov-esi-nop-use.tf |
@@ -0,0 +1,14 @@ |
+BITS: 64 |
+OUTCOME: valid |
+ |
+# Case where we should conclude that the index register rsi in the second move contains |
+# only 32 bits, and is set by the mov, so it is legal (i.e. it zero extends). |
+# That is, the two moves: |
+# mov %esi, %esi |
+# mov [%r15 + %rsi*1 + 0x8], %edx |
+asm: mov %esi,%esi |
+hex: 89 f6 |
+ |
+asm: mov %edx,0x8(%r15,%rsi,1) |
+hex: 41 89 54 37 08 |
+ |