Changeset 104dc0b in mainline for arch/ia32/src/asm.S


Ignore:
Timestamp:
2005-09-18T21:39:56Z (19 years ago)
Author:
Sergey Bondari <bondari@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
d9430f7
Parents:
650d976
Message:

built-in memcpy is not used anymore on IA-32.
IA-32 memcpy is now fast and inline.

File:
1 edited

Legend:

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

    r650d976 r104dc0b  
    3838.global enable_l_apic_in_msr
    3939.global interrupt_handlers
    40 .global memcpy
    4140.global memsetb
    4241.global memsetw
     
    153152#       handler 192 256
    154153h_end:
    155 
    156 
    157 ## Copy memory
    158 #
    159 # Copy a given number of bytes (3rd argument)
    160 # from the memory location defined by 2nd argument
    161 # to the memory location defined by 1st argument.
    162 # The memory areas cannot overlap.
    163 #
    164 SRC=16
    165 DST=12
    166 CNT=20
    167 memcpy:
    168         push %esi
    169         push %edi
    170 
    171         movl CNT(%esp),%ecx
    172         movl DST(%esp),%edi
    173         movl SRC(%esp),%esi
    174 
    175         rep movsb %ds:(%esi),%es:(%edi)
    176 
    177         pop %edi
    178         pop %esi
    179         ret
    180154
    181155
Note: See TracChangeset for help on using the changeset viewer.