Displaying 4 results from an estimated 4 matches for "print_quad".
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 03/13] lguest64 core
...r $4, %rbx; \
+ jne 9b
+
+#define PRINT_NUM(n) \
+ movl $n, %ebx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_LONG(n) \
+ movl n, %ebx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_QUAD(n) \
+ movq n, %rbx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_X \
+ PRINT_L('x')
+
+#define PRINT_OUT(x) \
+ mov $0x3f8, %esi; \
+21: lea 0x5(%esi), %edx; \
+ movzwl %dx, %edx; \
+ in (%dx), %al; \
+ test $0x20,%...
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 03/13] lguest64 core
...r $4, %rbx; \
+ jne 9b
+
+#define PRINT_NUM(n) \
+ movl $n, %ebx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_LONG(n) \
+ movl n, %ebx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_QUAD(n) \
+ movq n, %rbx; \
+ PRINT_NUM_BX; \
+ PRINT_L('\n'); \
+ PRINT_L('\r')
+
+#define PRINT_X \
+ PRINT_L('x')
+
+#define PRINT_OUT(x) \
+ mov $0x3f8, %esi; \
+21: lea 0x5(%esi), %edx; \
+ movzwl %dx, %edx; \
+ in (%dx), %al; \
+ test $0x20,%...
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 00/13] Lguest for the x86_64
...e nmi flag and do a iretq back to the original code that was
interrupted by the original NMI.
Debug:
=====
We've added lots of debugging features to make it easier to debug.
hypervisor.S is loaded with print to serial code. Be careful,
the output of hex numbers are backwards. So if you do a
PRINT_QUAD(%rax), and %rax has in it 0x12345, you will get
54321 out of the serial. It's just easier that way (code wise).
The macros with a 'S_' prefix will store the regs used on the
stack, but that's not always good, since most of the hypervisor
code, does not have a usable stack.
Page tab...
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 00/13] Lguest for the x86_64
...e nmi flag and do a iretq back to the original code that was
interrupted by the original NMI.
Debug:
=====
We've added lots of debugging features to make it easier to debug.
hypervisor.S is loaded with print to serial code. Be careful,
the output of hex numbers are backwards. So if you do a
PRINT_QUAD(%rax), and %rax has in it 0x12345, you will get
54321 out of the serial. It's just easier that way (code wise).
The macros with a 'S_' prefix will store the regs used on the
stack, but that's not always good, since most of the hypervisor
code, does not have a usable stack.
Page tab...