Changeset 897ad60 in mainline for arch/ia32/src/pm.c


Ignore:
Timestamp:
2006-04-13T16:11:27Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
39cea6a
Parents:
963074b3
Message:

Replace assembly from pm.c with new inline functions defined in asm.h.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/src/pm.c

    r963074b3 r897ad60  
    179179        idtr.limit = sizeof(idt);
    180180        idtr.base = (__address) idt;
    181         __asm__ volatile ("lgdt %0\n" : : "m" (gdtr));
    182         __asm__ volatile ("lidt %0\n" : : "m" (idtr)); 
     181        gdtr_load(&gdtr);
     182        idtr_load(&idtr);
    183183       
    184184        /*
     
    214214         * to its own TSS. We just need to load the TR register.
    215215         */
    216         __asm__ volatile ("ltr %0" : : "r" ((__u16) selector(TSS_DES)));
     216        tr_load(selector(TSS_DES));
    217217       
    218218        clean_IOPL_NT_flags();    /* Disable I/O on nonprivileged levels */
     
    225225        struct descriptor *gdt_p = (struct descriptor *) cpugdtr.base;
    226226
    227         __asm__ volatile ("sgdt %0\n" : : "m" (cpugdtr));
    228 
     227        gdtr_store(&cpugdtr);
    229228        gdt_setbase(&gdt_p[TLS_DES], tls);
    230229        /* Reload gdt register to update GS in CPU */
    231         __asm__ volatile ("lgdt %0\n" : : "m" (cpugdtr));
    232 }
     230        gdtr_load(&cpugdtr);
     231}
Note: See TracChangeset for help on using the changeset viewer.