Index: src/trusted/validator_x86/testdata/32/jump_crosses.tf |
diff --git a/src/trusted/validator_x86/testdata/32/jump_crosses.tf b/src/trusted/validator_x86/testdata/32/jump_crosses.tf |
new file mode 100644 |
index 0000000000000000000000000000000000000000..dc7d1154d82b332511ca23404c09ca8450027115 |
--- /dev/null |
+++ b/src/trusted/validator_x86/testdata/32/jump_crosses.tf |
@@ -0,0 +1,24 @@ |
+BITS: 32 |
+OUTCOME: invalid |
+ |
+# Test that we report about an (branch) instruction pair crossing block boundaries. |
+# Issue: 2888 |
+# nop(s) |
+asm: nop; nop; nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 90 90 |
+ |
+asm: nop; nop; nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 90 90 |
+ |
+asm: nop; nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 90 |
+ |
+# and %eax, 0xe0 |
+asm: and $0xffffffe0,%eax |
+hex: 83 e0 e0 |
+ |
+# jmp %eax |
+asm: jmp *%eax |
+hex: ff e0 |
+nc_out: Bad basic block alignment |
+ |