]> Zhao Yanbai Git Server - minix.git/commitdiff
Cooments to warn not to use certains instructions
authorTomas Hruby <tom@minix3.org>
Mon, 7 Dec 2009 12:01:05 +0000 (12:01 +0000)
committerTomas Hruby <tom@minix3.org>
Mon, 7 Dec 2009 12:01:05 +0000 (12:01 +0000)
- gas2ack cannot handle all variants of some instructions. Until this issues is
  addressed, this patch places a big warning where appropriate. This code is not
  supposed to change frequently.

kernel/arch/i386/klib386.S
kernel/arch/i386/mpx386.S

index affc8e8aeea76d539d77ada0ee1d3118dc5237ab..6e136cc11911ff8c5a5383eda8077b890c011fb5 100644 (file)
@@ -549,12 +549,16 @@ fninit:
 
 fnstsw:
        xor     %eax, %eax
+
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        fnstsw  %ax
        ret
 
 fnstcw:
        push    %eax
        mov     8(%esp), %eax
+
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        fnstcw  (%eax)
        pop     %eax
        ret
@@ -599,6 +603,8 @@ read_cr2:
 read_cr4:
        push    %ebp
        mov     %esp, %ebp
+
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        mov     %cr4, %eax
        pop     %ebp
        ret
@@ -611,6 +617,8 @@ write_cr4:
        push    %ebp
        mov     %esp, %ebp
        mov     8(%ebp), %eax
+
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        mov     %eax, %cr4
        jmp     0f
 0:
index abf7a492906f35a6d03ef932427f9036eb076469..58351d0b7ce0a31db60c85616d36e02fb1008d24 100644 (file)
@@ -542,9 +542,12 @@ copr_not_available:
        mov     %ss:FP_SAVE_AREA_P(%ebp), %eax
        cmp     $0, osfxsr_feature
        jz      fp_l_no_fxsr            /* FXSR is not avaible. */
+
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        fxrstor (%eax)
        jmp     copr_return
 fp_l_no_fxsr:
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        frstor  (%eax)
 copr_return:
        orw     $MF_USED_FPU, (%ebx)    /* fpu was used during last execution */
@@ -612,10 +615,13 @@ lazy_fpu:
        mov     %ss:FP_SAVE_AREA_P(%eax), %eax
        cmp     $0, osfxsr_feature
        jz      fp_s_no_fxsr                    /* FXSR is not avaible. */
+       
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        fxsave  (%eax)
        fninit
        jmp     fp_saved
 fp_s_no_fxsr:
+       /* DO NOT CHANGE THE OPERAND!!! gas2ack does not handle it yet */
        fnsave  (%eax)
        fwait   /* required for compatibility with processors prior pentium */
 fp_saved: