Index: /trunk/include/iprt/asmdefs.mac
===================================================================
--- /trunk/include/iprt/asmdefs.mac	(revision 46547)
+++ /trunk/include/iprt/asmdefs.mac	(revision 46548)
@@ -718,5 +718,5 @@
 
 
-;; @def xS
+;; @def xCB
 ; The stack unit size  / The register unit size.
 
@@ -749,5 +749,5 @@
 
 %ifdef RT_ARCH_AMD64
- %define xS  8
+ %define xCB 8
  %define xSP rsp
  %define xBP rbp
@@ -760,5 +760,5 @@
  %define xWrtRIP wrt rip
 %else
- %define xS  4
+ %define xCB 4
  %define xSP esp
  %define xBP ebp
Index: /trunk/src/VBox/Disassembler/testcase/tstAsm.mac
===================================================================
--- /trunk/src/VBox/Disassembler/testcase/tstAsm.mac	(revision 46547)
+++ /trunk/src/VBox/Disassembler/testcase/tstAsm.mac	(revision 46548)
@@ -17,5 +17,5 @@
 
 %if TEST_BITS == 64
- %define xS  8
+ %define xCB 8
  %define xSP rsp
  %define xBP rbp
@@ -28,5 +28,5 @@
 %endif
 %if TEST_BITS == 32
- %define xS  4
+ %define xCB 4
  %define xSP esp
  %define xBP ebp
@@ -39,5 +39,5 @@
 %endif
 %if TEST_BITS == 16
- %define xS  1
+ %define xCB 2
  %define xSP sp
  %define xBP bp
@@ -49,5 +49,5 @@
  %define xSI si
 %endif
-%ifndef xS
+%ifndef xCB
  %error "TEST_BITS is missing or wrong."
 %endif
Index: /trunk/src/VBox/HostDrivers/Support/SUPLibTracerA.asm
===================================================================
--- /trunk/src/VBox/HostDrivers/Support/SUPLibTracerA.asm	(revision 46547)
+++ /trunk/src/VBox/HostDrivers/Support/SUPLibTracerA.asm	(revision 46548)
@@ -103,47 +103,47 @@
         pop     xAX
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.rflags], xAX
-        mov     xAX, [xBP + xS]
+        mov     xAX, [xBP + xCB]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.rip], xAX
         mov     xAX, [xBP]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.rbp], xAX
-        lea     xAX, [xBP + xS*2]
+        lea     xAX, [xBP + xCB*2]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.rsp], xAX
  %ifdef ASM_CALL64_MSC
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.uVtgProbeLoc], rcx
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*0], rdx
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*1], r8
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*2], r9
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*0]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*3], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*1]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*4], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*2]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*5], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*3]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*6], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*4]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*7], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*5]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*8], xAX
-        mov     xAX, [xBP + xS*2 + 0x20 + xS*6]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*9], xAX
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*0], rdx
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*1], r8
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*2], r9
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*0]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*3], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*1]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*4], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*2]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*5], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*3]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*6], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*4]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*7], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*5]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*8], xAX
+        mov     xAX, [xBP + xCB*2 + 0x20 + xCB*6]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*9], xAX
         mov     eax, [xCX + 4]          ; VTGPROBELOC::idProbe.
  %else
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.uVtgProbeLoc], rdi
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*0], rsi
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*1], rdx
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*2], rcx
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*3], r8
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*4], r9
-        mov     xAX, [xBP + xS*2 + xS*0]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*5], xAX
-        mov     xAX, [xBP + xS*2 + xS*1]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*6], xAX
-        mov     xAX, [xBP + xS*2 + xS*2]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*7], xAX
-        mov     xAX, [xBP + xS*2 + xS*3]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*8], xAX
-        mov     xAX, [xBP + xS*2 + xS*4]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xS*9], xAX
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*0], rsi
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*1], rdx
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*2], rcx
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*3], r8
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*4], r9
+        mov     xAX, [xBP + xCB*2 + xCB*0]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*5], xAX
+        mov     xAX, [xBP + xCB*2 + xCB*1]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*6], xAX
+        mov     xAX, [xBP + xCB*2 + xCB*2]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*7], xAX
+        mov     xAX, [xBP + xCB*2 + xCB*3]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*8], xAX
+        mov     xAX, [xBP + xCB*2 + xCB*4]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX64.u.Amd64.aArgs + xCB*9], xAX
         mov     eax, [xDI + 4]          ; VTGPROBELOC::idProbe.
  %endif
@@ -180,12 +180,12 @@
         pop     xAX
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.eflags], xAX
-        mov     xAX, [xBP + xS]
+        mov     xAX, [xBP + xCB]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.eip], xAX
         mov     xAX, [xBP]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.ebp], xAX
-        lea     xAX, [xBP + xS*2]
+        lea     xAX, [xBP + xCB*2]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.esp], xAX
 
-        mov     xCX, [xBP + xS*2 + xS*0]
+        mov     xCX, [xBP + xCB*2 + xCB*0]
         mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.uVtgProbeLoc], xCX ; keep, used below.
 
@@ -193,6 +193,6 @@
 .more:
         dec     edx
-        mov     xAX, [xBP + xS*2 + xS*xDX]
-        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.aArgs + xS*xDX], xAX
+        mov     xAX, [xBP + xCB*2 + xCB*xDX]
+        mov     [xSP + SUPTRACERUMODFIREPROBE.In + SUPDRVTRACERUSRCTX32.u.X86.aArgs + xCB*xDX], xAX
         jnz     .more
 
Index: /trunk/src/VBox/Runtime/common/math/ceill.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/ceill.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/ceill.asm	(revision 46548)
@@ -39,5 +39,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
 
     ; Make it round up by modifying the fpu control word.
Index: /trunk/src/VBox/Runtime/common/math/cosl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/cosl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/cosl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; compute the cosine of ldr, measured in radians.
 ; @returns st(0)
-; @param    lrd     [rbp + xS*2]
+; @param    lrd     [rbp + xCB*2]
 BEGINPROC RT_NOCRT(cosl)
     push    xBP
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fcos
     fnstsw  ax
Index: /trunk/src/VBox/Runtime/common/math/fabs.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/fabs.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/fabs.asm	(revision 46548)
@@ -49,5 +49,5 @@
 
 %else
-    fld     qword [xBP + xS*2]
+    fld     qword [xBP + xCB*2]
     fabs
 %endif
Index: /trunk/src/VBox/Runtime/common/math/fabsf.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/fabsf.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/fabsf.asm	(revision 46548)
@@ -49,5 +49,5 @@
 
 %else
-    fld     dword [xBP + xS*2]
+    fld     dword [xBP + xCB*2]
     fabs
 %endif
Index: /trunk/src/VBox/Runtime/common/math/fabsl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/fabsl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/fabsl.asm	(revision 46548)
@@ -32,10 +32,10 @@
 ; Compute the absolute value of lrd (|lrd|).
 ; @returns st(0)
-; @param    lrd     [xSP + xS*2]
+; @param    lrd     [xSP + xCB*2]
 BEGINPROC RT_NOCRT(fabsl)
     push    xBP
     mov     xBP, xSP
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fabs
 
Index: /trunk/src/VBox/Runtime/common/math/floor.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/floor.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/floor.asm	(revision 46548)
@@ -42,5 +42,5 @@
     fld     qword [xSP]
 %else
-    fld     qword [xBP + xS*2]
+    fld     qword [xBP + xCB*2]
 %endif
 
Index: /trunk/src/VBox/Runtime/common/math/floorf.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/floorf.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/floorf.asm	(revision 46548)
@@ -42,5 +42,5 @@
     fld     dword [xSP]
 %else
-    fld     dword [xBP + xS*2]
+    fld     dword [xBP + xCB*2]
 %endif
 
Index: /trunk/src/VBox/Runtime/common/math/floorl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/floorl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/floorl.asm	(revision 46548)
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
 
     ; Make it round down by modifying the fpu control word.
Index: /trunk/src/VBox/Runtime/common/math/ldexpl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/ldexpl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/ldexpl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; Computes lrd * 2^exp
 ; @returns st(0)
-; @param    lrd     [rbp + xS*2]
+; @param    lrd     [rbp + xCB*2]
 ; @param    exp     [ebp + 14h]  GCC:edi  MSC:ecx
 BEGINPROC RT_NOCRT(ldexpl)
@@ -44,7 +44,7 @@
     fild    dword [rsp]
 %else
-    fild    dword [ebp + xS*2 + RTLRD_CB]
+    fild    dword [ebp + xCB*2 + RTLRD_CB]
 %endif
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fscale
     fstp    st1
Index: /trunk/src/VBox/Runtime/common/math/llrintl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/llrintl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/llrintl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; Round rd to the nearest integer value, rounding according to the current rounding direction.
 ; @returns 32-bit: edx:eax  64-bit: rax
-; @param    lrd     [rbp + xS*2]
+; @param    lrd     [rbp + xCB*2]
 BEGINPROC RT_NOCRT(llrintl)
     push    xBP
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fistp   qword [xSP]
     fwait
Index: /trunk/src/VBox/Runtime/common/math/logl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/logl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/logl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; compute the natural logarithm of lrd
 ; @returns st(0)
-; @param    lrd     [rbp + xS*2]
+; @param    lrd     [rbp + xCB*2]
 BEGINPROC RT_NOCRT(logl)
     push    xBP
@@ -39,5 +39,5 @@
 
     fldln2                              ; st0=log(2)
-    fld     tword [xBP + xS*2]          ; st1=log(2) st0=lrd
+    fld     tword [xBP + xCB*2]         ; st1=log(2) st0=lrd
     fld     st0                         ; st1=log(2) st0=lrd st0=lrd
     fsub    qword [.one xWrtRIP]        ; st2=log(2) st1=lrd st0=lrd-1.0
Index: /trunk/src/VBox/Runtime/common/math/lrintl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/lrintl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/lrintl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; Round rd to the nearest integer value, rounding according to the current rounding direction.
 ; @returns 32-bit: eax  64-bit: rax
-; @param    lrd     [rbp + xS*2]
+; @param    lrd     [rbp + xCB*2]
 BEGINPROC RT_NOCRT(lrintl)
     push    xBP
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
 %ifdef RT_ARCH_AMD64
     fistp   qword [xSP]
Index: /trunk/src/VBox/Runtime/common/math/sinl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/sinl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/sinl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; Compute the sine of lrd
 ; @returns st(0)
-; @param    lrd     [xSP + xS*2]
+; @param    lrd     [xSP + xCB*2]
 BEGINPROC RT_NOCRT(sinl)
     push    xBP
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fsin
     fnstsw  ax
Index: /trunk/src/VBox/Runtime/common/math/tanl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/tanl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/tanl.asm	(revision 46548)
@@ -32,5 +32,5 @@
 ; Compute the sine of lrd
 ; @returns st(0)
-; @param    lrd     [xSP + xS*2]
+; @param    lrd     [xSP + xCB*2]
 BEGINPROC RT_NOCRT(tanl)
     push    xBP
@@ -38,5 +38,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
     fptan
     fnstsw  ax
Index: /trunk/src/VBox/Runtime/common/math/trunc.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/trunc.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/trunc.asm	(revision 46548)
@@ -43,5 +43,5 @@
     fld     qword [xSP]
 %else
-    fld     qword [xBP + xS*2]
+    fld     qword [xBP + xCB*2]
 %endif
 
Index: /trunk/src/VBox/Runtime/common/math/truncf.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/truncf.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/truncf.asm	(revision 46548)
@@ -43,5 +43,5 @@
     fld     dword [xSP]
 %else
-    fld     dword [xBP + xS*2]
+    fld     dword [xBP + xCB*2]
 %endif
 
Index: /trunk/src/VBox/Runtime/common/math/truncl.asm
===================================================================
--- /trunk/src/VBox/Runtime/common/math/truncl.asm	(revision 46547)
+++ /trunk/src/VBox/Runtime/common/math/truncl.asm	(revision 46548)
@@ -39,5 +39,5 @@
     sub     xSP, 10h
 
-    fld     tword [xBP + xS*2]
+    fld     tword [xBP + xCB*2]
 
     ; Make it truncate up by modifying the fpu control word.
Index: /trunk/src/VBox/VMM/VMMR0/HMR0A.asm
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMR0A.asm	(revision 46547)
+++ /trunk/src/VBox/VMM/VMMR0/HMR0A.asm	(revision 46548)
@@ -1584,5 +1584,5 @@
  %undef  ASM_CALL64_MSC
  %define ASM_CALL64_GCC
- %define xS             8
+ %define xCB             8
  %define xSP            rsp
  %define xBP            rbp
Index: /trunk/src/VBox/VMM/VMMR0/HMR0Mixed.mac
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMR0Mixed.mac	(revision 46547)
+++ /trunk/src/VBox/VMM/VMMR0/HMR0Mixed.mac	(revision 46548)
@@ -122,8 +122,8 @@
     ; VT-x only saves the base of the GDTR & IDTR and resets the limit to 0xffff; we must restore the limit correctly!
 %ifdef VMX_SKIP_GDTR_IDTR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
 
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sidt    [xSP]
 %endif
@@ -182,11 +182,11 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
     push    xDI
-    mov     xDI, [xSP + xS * 3]         ; pCtx (*3 to skip the saved LDTR + TR).
+    mov     xDI, [xSP + xCB * 3]         ; pCtx (*3 to skip the saved LDTR + TR).
 
     mov     [ss:xDI + CPUMCTX.eax], eax
@@ -218,5 +218,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -225,10 +225,10 @@
     and     dword [ss:xAX + 4], ~0200h              ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
     lldt    ax
 
-    add     xSP, xS     ; pCtx
+    add     xSP, xCB     ; pCtx
 
 %ifdef VMX_USE_CACHED_VMCS_ACCESSES
@@ -274,7 +274,7 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
@@ -283,5 +283,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -290,5 +290,5 @@
     and     dword [ss:xAX + 4], ~0200h              ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
@@ -296,7 +296,7 @@
 
 %ifdef VMX_USE_CACHED_VMCS_ACCESSES
-    add     xSP, xS*2   ; pCtx + pCache
+    add     xSP, xCB*2  ; pCtx + pCache
 %else
-    add     xSP, xS     ; pCtx
+    add     xSP, xCB     ; pCtx
 %endif
 
@@ -313,7 +313,7 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
@@ -322,5 +322,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -329,5 +329,5 @@
     and     dword [ss:xAX + 4], ~0200h              ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
@@ -335,7 +335,7 @@
 
 %ifdef VMX_USE_CACHED_VMCS_ACCESSES
-    add     xSP, xS*2   ; pCtx + pCache
+    add     xSP, xCB*2  ; pCtx + pCache
 %else
-    add     xSP, xS     ; pCtx
+    add     xSP, xCB    ; pCtx
 %endif
 
@@ -451,8 +451,8 @@
     ; VT-x only saves the base of the GDTR & IDTR and resets the limit to 0xffff; we must restore the limit correctly!
 %ifdef VMX_SKIP_GDTR_IDTR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
 
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sidt    [xSP]
 %endif
@@ -519,11 +519,11 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
     push    xDI
-    mov     xDI, [xSP + xS * 3]         ; pCtx (*3 to skip the saved LDTR + TR)
+    mov     xDI, [xSP + xCB * 3]        ; pCtx (*3 to skip the saved LDTR + TR)
 
     mov     qword [xDI + CPUMCTX.eax], rax
@@ -559,5 +559,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -566,5 +566,5 @@
     and     dword [xAX + 4], ~0200h                 ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
@@ -628,7 +628,7 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
@@ -637,5 +637,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -644,5 +644,5 @@
     and     dword [xAX + 4], ~0200h                 ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
@@ -665,5 +665,5 @@
 
 %ifdef VMX_USE_CACHED_VMCS_ACCESSES
-    add     xSP, xS     ; pCache
+    add     xSP, xCB    ; pCache
 %endif
 
@@ -680,7 +680,7 @@
 %ifdef VMX_SKIP_GDTR_IDTR
     lidt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
     lgdt    [xSP]
-    add     xSP, xS*2
+    add     xSP, xCB*2
 %endif
 
@@ -689,5 +689,5 @@
     ; @todo get rid of sgdt
     pop     xBX         ; Saved TR
-    sub     xSP, xS*2
+    sub     xSP, xCB*2
     sgdt    [xSP]
     mov     xAX, xBX
@@ -696,5 +696,5 @@
     and     dword [xAX + 4], ~0200h                 ; Clear busy flag (2nd type2 bit).
     ltr     bx
-    add     xSP, xS*2
+    add     xSP, xCB*2
 
     pop     xAX         ; Saved LDTR
@@ -717,5 +717,5 @@
 
 %ifdef VMX_USE_CACHED_VMCS_ACCESSES
-    add     xSP, xS     ; pCache
+    add     xSP, xCB    ; pCache
 %endif
 
@@ -770,14 +770,14 @@
 
     ; Save the Guest CPU context pointer.
-    mov     xSI, [xBP + xS*2 + RTHCPHYS_CB*2]   ; pCtx
+    mov     xSI, [xBP + xCB*2 + RTHCPHYS_CB*2] ; pCtx
     push    xSI                     		; push for saving the state at the end
 
     ; Save host fs, gs, sysenter msr etc.
-    mov     xAX, [xBP + xS*2]       ; pVMCBHostPhys (64 bits physical address; x86: take low dword only)
+    mov     xAX, [xBP + xCB*2]      ; pVMCBHostPhys (64 bits physical address; x86: take low dword only)
     push    xAX                     ; save for the vmload after vmrun
     vmsave
 
     ; Setup eax for VMLOAD.
-    mov     xAX, [xBP + xS*2 + RTHCPHYS_CB]     ; pVMCBPhys (64 bits physical address; take low dword only)
+    mov     xAX, [xBP + xCB*2 + RTHCPHYS_CB]     ; pVMCBPhys (64 bits physical address; take low dword only)
 
     ; Restore Guest's general purpose registers.
@@ -829,5 +829,5 @@
     pop     xBP
 %ifdef RT_ARCH_AMD64
-    add     xSP, 4*xS
+    add     xSP, 4*xCB
 %endif
     ret
@@ -874,14 +874,14 @@
 
     ; Save the Guest CPU context pointer.
-    mov     rsi, [rbp + xS*2 + RTHCPHYS_CB*2]   ; pCtx
+    mov     rsi, [rbp + xCB*2 + RTHCPHYS_CB*2]  ; pCtx
     push    rsi                     ; push for saving the state at the end
 
     ; Save host fs, gs, sysenter msr etc.
-    mov     rax, [rbp + xS*2]       ; pVMCBHostPhys (64 bits physical address; x86: take low dword only)
+    mov     rax, [rbp + xCB*2]      ; pVMCBHostPhys (64 bits physical address; x86: take low dword only)
     push    rax                     ; Save for the vmload after vmrun
     vmsave
 
     ; Setup eax for VMLOAD.
-    mov     rax, [rbp + xS*2 + RTHCPHYS_CB]     ; pVMCBPhys (64 bits physical address; take low dword only)
+    mov     rax, [rbp + xCB*2 + RTHCPHYS_CB]    ; pVMCBPhys (64 bits physical address; take low dword only)
 
     ; Restore Guest's general purpose registers.
@@ -948,5 +948,5 @@
     popf
     pop     rbp
-    add     rsp, 4*xS
+    add     rsp, 4*xCB
     ret
 ENDPROC MY_NAME(SVMR0VMRun64)
Index: /trunk/src/VBox/VMM/testcase/Instructions/env-common.mac
===================================================================
--- /trunk/src/VBox/VMM/testcase/Instructions/env-common.mac	(revision 46547)
+++ /trunk/src/VBox/VMM/testcase/Instructions/env-common.mac	(revision 46548)
@@ -129,7 +129,7 @@
 %else
         mov     sBX, [VBINSTST_NAME(g_uVBInsTstSubTestIndicator)]
-        mov     sCX, [xBP + 4 + xS]     ; expected
-        mov     sAX, [xBP + 4 + xS + 4] ; actual
-        mov     sDX, [xBP + 4 + xS + 8] ; reg#
+        mov     sCX, [xBP + 4 + xCB]     ; expected
+        mov     sAX, [xBP + 4 + xCB + 4] ; actual
+        mov     sDX, [xBP + 4 + xCB + 8] ; reg#
         push    sBX
         push    sCX
Index: /trunk/src/VBox/VMM/testcase/tstX86-1A.asm
===================================================================
--- /trunk/src/VBox/VMM/testcase/tstX86-1A.asm	(revision 46547)
+++ /trunk/src/VBox/VMM/testcase/tstX86-1A.asm	(revision 46548)
@@ -1522,5 +1522,5 @@
 
 .failed3:
-        add     xSP, 20h + xS
+        add     xSP, 20h + xCB
         jmp     .return
 
@@ -1942,5 +1942,5 @@
         push    xDI
 
-        lea     xDI, [xSP + xS * 5]
+        lea     xDI, [xSP + xCB * 5]
         mov     xCX, 512 / 4
         mov     eax, 0cccccccch
@@ -1954,67 +1954,67 @@
 
         ; Save the FPU state.
-        mov     dword [xSP + xS + X86FXSTATE.FPUIP], 0
-        mov     dword [xSP + xS + X86FXSTATE.FPUCS], 0
-        mov     dword [xSP + xS + X86FXSTATE.FPUDP], 0
-        mov     dword [xSP + xS + X86FXSTATE.FPUDS], 0
-        arch_fxsave [xSP + xS]
+        mov     dword [xSP + xCB + X86FXSTATE.FPUIP], 0
+        mov     dword [xSP + xCB + X86FXSTATE.FPUCS], 0
+        mov     dword [xSP + xCB + X86FXSTATE.FPUDP], 0
+        mov     dword [xSP + xCB + X86FXSTATE.FPUDS], 0
+        arch_fxsave [xSP + xCB]
 
         ; Save GRegs (80h bytes).
 %ifdef RT_ARCH_AMD64
-        mov     [xSP + 512 + xS + 000h], xAX
-        mov     [xSP + 512 + xS + 008h], xBX
-        mov     [xSP + 512 + xS + 010h], xCX
-        mov     [xSP + 512 + xS + 018h], xDX
-        mov     [xSP + 512 + xS + 020h], xDI
-        mov     [xSP + 512 + xS + 028h], xSI
-        mov     [xSP + 512 + xS + 030h], xBP
-        mov     [xSP + 512 + xS + 038h], r8
-        mov     [xSP + 512 + xS + 040h], r9
-        mov     [xSP + 512 + xS + 048h], r10
-        mov     [xSP + 512 + xS + 050h], r11
-        mov     [xSP + 512 + xS + 058h], r12
-        mov     [xSP + 512 + xS + 060h], r13
-        mov     [xSP + 512 + xS + 068h], r14
-        mov     [xSP + 512 + xS + 070h], r15
+        mov     [xSP + 512 + xCB + 000h], xAX
+        mov     [xSP + 512 + xCB + 008h], xBX
+        mov     [xSP + 512 + xCB + 010h], xCX
+        mov     [xSP + 512 + xCB + 018h], xDX
+        mov     [xSP + 512 + xCB + 020h], xDI
+        mov     [xSP + 512 + xCB + 028h], xSI
+        mov     [xSP + 512 + xCB + 030h], xBP
+        mov     [xSP + 512 + xCB + 038h], r8
+        mov     [xSP + 512 + xCB + 040h], r9
+        mov     [xSP + 512 + xCB + 048h], r10
+        mov     [xSP + 512 + xCB + 050h], r11
+        mov     [xSP + 512 + xCB + 058h], r12
+        mov     [xSP + 512 + xCB + 060h], r13
+        mov     [xSP + 512 + xCB + 068h], r14
+        mov     [xSP + 512 + xCB + 070h], r15
         pushf
         pop     rax
-        mov     [xSP + 512 + xS + 078h], rax
-        mov     rax, [xSP + 512 + xS + 000h]
+        mov     [xSP + 512 + xCB + 078h], rax
+        mov     rax, [xSP + 512 + xCB + 000h]
 %else
-        mov     [xSP + 512 + xS + 000h], eax
-        mov     [xSP + 512 + xS + 004h], eax
-        mov     [xSP + 512 + xS + 008h], ebx
-        mov     [xSP + 512 + xS + 00ch], ebx
-        mov     [xSP + 512 + xS + 010h], ecx
-        mov     [xSP + 512 + xS + 014h], ecx
-        mov     [xSP + 512 + xS + 018h], edx
-        mov     [xSP + 512 + xS + 01ch], edx
-        mov     [xSP + 512 + xS + 020h], edi
-        mov     [xSP + 512 + xS + 024h], edi
-        mov     [xSP + 512 + xS + 028h], esi
-        mov     [xSP + 512 + xS + 02ch], esi
-        mov     [xSP + 512 + xS + 030h], ebp
-        mov     [xSP + 512 + xS + 034h], ebp
-        mov     [xSP + 512 + xS + 038h], eax
-        mov     [xSP + 512 + xS + 03ch], eax
-        mov     [xSP + 512 + xS + 040h], eax
-        mov     [xSP + 512 + xS + 044h], eax
-        mov     [xSP + 512 + xS + 048h], eax
-        mov     [xSP + 512 + xS + 04ch], eax
-        mov     [xSP + 512 + xS + 050h], eax
-        mov     [xSP + 512 + xS + 054h], eax
-        mov     [xSP + 512 + xS + 058h], eax
-        mov     [xSP + 512 + xS + 05ch], eax
-        mov     [xSP + 512 + xS + 060h], eax
-        mov     [xSP + 512 + xS + 064h], eax
-        mov     [xSP + 512 + xS + 068h], eax
-        mov     [xSP + 512 + xS + 06ch], eax
-        mov     [xSP + 512 + xS + 070h], eax
-        mov     [xSP + 512 + xS + 074h], eax
+        mov     [xSP + 512 + xCB + 000h], eax
+        mov     [xSP + 512 + xCB + 004h], eax
+        mov     [xSP + 512 + xCB + 008h], ebx
+        mov     [xSP + 512 + xCB + 00ch], ebx
+        mov     [xSP + 512 + xCB + 010h], ecx
+        mov     [xSP + 512 + xCB + 014h], ecx
+        mov     [xSP + 512 + xCB + 018h], edx
+        mov     [xSP + 512 + xCB + 01ch], edx
+        mov     [xSP + 512 + xCB + 020h], edi
+        mov     [xSP + 512 + xCB + 024h], edi
+        mov     [xSP + 512 + xCB + 028h], esi
+        mov     [xSP + 512 + xCB + 02ch], esi
+        mov     [xSP + 512 + xCB + 030h], ebp
+        mov     [xSP + 512 + xCB + 034h], ebp
+        mov     [xSP + 512 + xCB + 038h], eax
+        mov     [xSP + 512 + xCB + 03ch], eax
+        mov     [xSP + 512 + xCB + 040h], eax
+        mov     [xSP + 512 + xCB + 044h], eax
+        mov     [xSP + 512 + xCB + 048h], eax
+        mov     [xSP + 512 + xCB + 04ch], eax
+        mov     [xSP + 512 + xCB + 050h], eax
+        mov     [xSP + 512 + xCB + 054h], eax
+        mov     [xSP + 512 + xCB + 058h], eax
+        mov     [xSP + 512 + xCB + 05ch], eax
+        mov     [xSP + 512 + xCB + 060h], eax
+        mov     [xSP + 512 + xCB + 064h], eax
+        mov     [xSP + 512 + xCB + 068h], eax
+        mov     [xSP + 512 + xCB + 06ch], eax
+        mov     [xSP + 512 + xCB + 070h], eax
+        mov     [xSP + 512 + xCB + 074h], eax
         pushf
         pop     eax
-        mov     [xSP + 512 + xS + 078h], eax
-        mov     [xSP + 512 + xS + 07ch], eax
-        mov     eax, [xSP + 512 + xS + 000h]
+        mov     [xSP + 512 + xCB + 078h], eax
+        mov     [xSP + 512 + xCB + 07ch], eax
+        mov     eax, [xSP + 512 + xCB + 000h]
 %endif
         ret
@@ -2029,5 +2029,5 @@
 ;
 CompareFPUAndGRegsOnStack:
-        lea     xSP, [xSP - (1024 - xS)]
+        lea     xSP, [xSP - (1024 - xCB)]
         call    SaveFPUAndGRegsToStack
 
@@ -2037,5 +2037,5 @@
 
         mov     xCX, 640
-        lea     xSI, [xSP + xS*3]
+        lea     xSI, [xSP + xCB*3]
         lea     xDI, [xSI + 1024]
 
@@ -2045,5 +2045,5 @@
 
         ;int3
-        lea     xAX, [xSP + xS*3]
+        lea     xAX, [xSP + xCB*3]
         xchg    xAX, xSI
         sub     xAX, xSI
@@ -2060,5 +2060,5 @@
         pop     xDI
         pop     xSI
-        lea     xSP, [xSP + (1024 - xS)]
+        lea     xSP, [xSP + (1024 - xCB)]
         or      eax, eax
         ret
@@ -2073,5 +2073,5 @@
 ;
 CompareFPUAndGRegsOnStackIgnoreOpAndIp:
-        lea     xSP, [xSP - (1024 - xS)]
+        lea     xSP, [xSP - (1024 - xCB)]
         call    SaveFPUAndGRegsToStack
 
@@ -2081,5 +2081,5 @@
 
         mov     xCX, 640
-        lea     xSI, [xSP + xS*3]
+        lea     xSI, [xSP + xCB*3]
         lea     xDI, [xSI + 1024]
 
@@ -2094,5 +2094,5 @@
 
         ;int3
-        lea     xAX, [xSP + xS*3]
+        lea     xAX, [xSP + xCB*3]
         xchg    xAX, xSI
         sub     xAX, xSI
@@ -2109,5 +2109,5 @@
         pop     xDI
         pop     xSI
-        lea     xSP, [xSP + (1024 - xS)]
+        lea     xSP, [xSP + (1024 - xCB)]
         or      eax, eax
         ret
@@ -2494,5 +2494,5 @@
 ;
 ; @returns ZF=1 on success, ZF=0 on failure.
-; @param    xSP + xS    fxsave image followed by fnstenv.
+; @param    xSP + xCB    fxsave image followed by fnstenv.
 ; @param    xCX         Opcode address (no prefixes).
 ;
@@ -2504,7 +2504,7 @@
         ; Check the IP.
 %ifdef RT_ARCH_AMD64
-        cmp     rcx, [xBP + xS*2 + X86FXSTATE.FPUIP]
+        cmp     rcx, [xBP + xCB*2 + X86FXSTATE.FPUIP]
 %else
-        cmp     ecx, [xBP + xS*2 + X86FXSTATE.FPUIP]
+        cmp     ecx, [xBP + xCB*2 + X86FXSTATE.FPUIP]
 %endif
         jne     .failure1
@@ -2512,5 +2512,5 @@
 .check_fpucs:
         mov     ax, cs
-        cmp     ax, [xBP + xS*2 + 512 + X86FSTENV32P.FPUCS]
+        cmp     ax, [xBP + xCB*2 + 512 + X86FSTENV32P.FPUCS]
         jne     .failure2
 
@@ -2520,11 +2520,11 @@
         and     ax, 07ffh
 
-        cmp     ax, [xBP + xS*2 + X86FXSTATE.FOP]
+        cmp     ax, [xBP + xCB*2 + X86FXSTATE.FOP]
         je      .success
-        cmp     ax, [xBP + xS*2 + 512 + X86FSTENV32P.FOP]
+        cmp     ax, [xBP + xCB*2 + 512 + X86FSTENV32P.FOP]
         je      .success
 
 ;        xor     ax, ax
-;        cmp     ax, [xBP + xS*2 + X86FXSTATE.FOP]
+;        cmp     ax, [xBP + xCB*2 + X86FXSTATE.FOP]
 ;        jne     .failure3
 
@@ -2540,9 +2540,9 @@
         ; fnstenv image instead even if that only contains the lower 32-bit.
         xor     eax, eax
-        cmp     xAX, [xBP + xS*2 + X86FXSTATE.FPUIP]
+        cmp     xAX, [xBP + xCB*2 + X86FXSTATE.FPUIP]
         jne     .failure1_for_real
-        cmp     xAX, [xBP + xS*2 + X86FXSTATE.FPUDP]
+        cmp     xAX, [xBP + xCB*2 + X86FXSTATE.FPUDP]
         jne     .failure1_for_real
-        cmp     ecx, [xBP + xS*2 + 512 + X86FSTENV32P.FPUIP]
+        cmp     ecx, [xBP + xCB*2 + 512 + X86FSTENV32P.FPUIP]
         je      .check_fpucs
 .failure1_for_real:
@@ -2638,5 +2638,5 @@
 ;
 ; @returns ZF=1 on success, ZF=0+EAX on failure.
-; @param    xSP + xS    fxsave image followed by fnstenv.
+; @param    xSP + xCB    fxsave image followed by fnstenv.
 ; @param    xCX         Opcode address (no prefixes).
 ; @param    xDX         Memory address (DS relative).
@@ -2649,7 +2649,7 @@
         ; Check the memory operand.
 %ifdef RT_ARCH_AMD64
-        cmp     rdx, [xBP + xS*2 + X86FXSTATE.FPUDP]
+        cmp     rdx, [xBP + xCB*2 + X86FXSTATE.FPUDP]
 %else
-        cmp     edx, [xBP + xS*2 + X86FXSTATE.FPUDP]
+        cmp     edx, [xBP + xCB*2 + X86FXSTATE.FPUDP]
 %endif
         jne     .failure1
@@ -2657,5 +2657,5 @@
 .check_fpuds:
         mov     ax, ds
-        cmp     ax, [xBP + xS*2 + 512 + X86FSTENV32P.FPUDS]
+        cmp     ax, [xBP + xCB*2 + 512 + X86FSTENV32P.FPUDS]
         jne     .failure2
 
@@ -2670,9 +2670,9 @@
         ; if there is a flag controlling this anywhere...
         xor        eax, eax
-        cmp     xAX, [xBP + xS*2 + X86FXSTATE.FPUDP]
+        cmp     xAX, [xBP + xCB*2 + X86FXSTATE.FPUDP]
         jne     .failure1_for_real
-        cmp     xAX, [xBP + xS*2 + X86FXSTATE.FPUIP]
+        cmp     xAX, [xBP + xCB*2 + X86FXSTATE.FPUIP]
         jne     .failure1_for_real
-        cmp     edx, [xBP + xS*2 + 512 + X86FSTENV32P.FPUDP]
+        cmp     edx, [xBP + xCB*2 + 512 + X86FSTENV32P.FPUDP]
         je      .check_fpuds
 .failure1_for_real:
