Changeset 8844e70 in mainline for kernel/arch/ia32/src/asm.S


Ignore:
Timestamp:
2016-04-11T17:03:47Z (8 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
3b0f1b9a
Parents:
3a34852
Message:

ia32: use asmtool.h macros for defining symbols

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/src/asm.S

    r3a34852 r8844e70  
    3131 */
    3232
     33#include <abi/asmtool.h>
    3334#include <arch/pm.h>
    3435#include <arch/cpu.h>
     
    3738
    3839.text
    39 .global paging_on
    40 .global enable_l_apic_in_msr
    41 .global memcpy_from_uspace
    42 .global memcpy_from_uspace_failover_address
    43 .global memcpy_to_uspace
    44 .global memcpy_to_uspace_failover_address
    45 .global early_putchar
    4640
    4741#define MEMCPY_DST   4
     
    6458 *
    6559 */
    66 memcpy_from_uspace:
    67 memcpy_to_uspace:
     60FUNCTION_BEGIN(memcpy_from_uspace)
     61FUNCTION_BEGIN(memcpy_to_uspace)
    6862        movl %edi, %edx  /* save %edi */
    6963        movl %esi, %eax  /* save %esi */
     
    9387                movl MEMCPY_DST(%esp), %eax
    9488                ret
     89FUNCTION_END(memcpy_from_uspace)
     90FUNCTION_END(memcpy_to_uspace)
    9591
    9692/*
     
    9894 * above had caused a page fault.
    9995 */
    100 memcpy_from_uspace_failover_address:
    101 memcpy_to_uspace_failover_address:
     96SYMBOL(memcpy_from_uspace_failover_address)
     97SYMBOL(memcpy_to_uspace_failover_address)
    10298        movl %edx, %edi
    10399        movl %eax, %esi
     
    112108 *
    113109 */
    114 paging_on:
     110FUNCTION_BEGIN(paging_on)
    115111        movl %cr0, %edx
    116112        orl $(1 << 31), %edx  /* paging on */
     
    123119        0:
    124120                ret
     121FUNCTION_END(paging_on)
    125122
    126123/** Enable local APIC
     
    129126 *
    130127 */
    131 enable_l_apic_in_msr:
     128FUNCTION_BEGIN(enable_l_apic_in_msr)
    132129        movl $0x1b, %ecx
    133130        rdmsr
     
    136133        wrmsr
    137134        ret
     135FUNCTION_END(enable_l_apic_in_msr)
    138136
    139137/*
     
    152150 * entirely in registers.
    153151 */
    154 .global sysenter_handler
    155 sysenter_handler:
     152SYMBOL(sysenter_handler)
    156153
    157154        /*
     
    232229 * This is the legacy syscall handler using the interrupt mechanism.
    233230 */
    234 .global int_syscall
    235 int_syscall:
     231SYMBOL(int_syscall)
    236232        subl $(ISTATE_SOFT_SIZE + 4), %esp
    237233
     
    319315
    320316.macro handler i
    321 .global int_\i
    322 int_\i:
     317SYMBOL(int_\i)
    323318        /*
    324319         * This macro distinguishes between two versions of ia32
     
    462457 *
    463458 */
    464 early_putchar:
     459FUNCTION_BEGIN(early_putchar)
    465460       
    466461#if ((defined(CONFIG_EGA)) && (!defined(CONFIG_FB)))
     
    594589       
    595590        ret
    596 
     591FUNCTION_END(early_putchar)
     592
Note: See TracChangeset for help on using the changeset viewer.