Index: src/trusted/validator_x86/testdata/64/direct-call-32.tf |
diff --git a/src/trusted/validator_x86/testdata/64/direct-call-32.tf b/src/trusted/validator_x86/testdata/64/direct-call-32.tf |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1df0569b9029d512d9302c13b878e6caea438ca7 |
--- /dev/null |
+++ b/src/trusted/validator_x86/testdata/64/direct-call-32.tf |
@@ -0,0 +1,23 @@ |
+BITS: 64 |
+OUTCOME: valid |
+ |
+# This file tests how we handle a 32-bit direct call. |
+# |
+# Pad with nops, so that call is bundle aligned. |
+asm: nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 |
+ |
+asm: nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 |
+ |
+asm: nop; nop; nop; nop; nop; nop; nop; nop |
+hex: 90 90 90 90 90 90 90 90 |
+ |
+asm: nop; nop; nop |
+hex: 90 90 90 |
+ |
+ |
+# Define 32-bit direct call. |
+asm: callq .-11 |
+hex: e8 F0 FF FF FF |
+ |