diff --git a/rtl/i386/i386.inc b/rtl/i386/i386.inc index 44799cf7b7..8abc7dfd3c 100644 --- a/rtl/i386/i386.inc +++ b/rtl/i386/i386.inc @@ -801,46 +801,6 @@ begin end ['EBX','ECX','EAX','ESI','EDI']; end; -{$ifdef newoptimizations} -procedure int_strconcatlen(s1,s2:pointer;maxlen: longint); - [public,alias:'FPC_SHORTSTR_CONCAT_LEN']; -begin - asm - movl s2,%edi - movl s1,%esi - movl %edi,%ebx - movzbl (%edi),%ecx - xor %eax,%eax - lea 1(%edi,%ecx),%edi - negl %ecx - addl maxlen,%ecx - lodsb - cmpl %ecx,%eax - jbe .LStrConcat1 - movl %ecx,%eax -.LStrConcat1: - addb %al,(%ebx) - cmpl $7,%eax - jl .LStrConcat2 - movl %edi,%ecx { Align on 32bits } - negl %ecx - andl $3,%ecx - subl %ecx,%eax - rep - movsb - movl %eax,%ecx - andl $3,%eax - shrl $2,%ecx - rep - movsl -.LStrConcat2: - movl %eax,%ecx - rep - movsb - end ['EBX','ECX','EAX','ESI','EDI']; -end; -{$endif newoptimizations} - {$define FPC_SYSTEM_HAS_FPC_SHORTSTR_COMPARE} procedure int_strcmp(dstr,sstr:pointer);[public,alias:'FPC_SHORTSTR_COMPARE']; @@ -1196,7 +1156,12 @@ end; { $Log$ - Revision 1.74 2000-07-07 18:23:41 marco + Revision 1.75 2000-07-08 09:09:35 jonas + - removed fpc_strconcat_len for -dnewoptimizations since it's not + used anymore (because the strconcat optimizations have been + disabled quite a while ago) + + Revision 1.74 2000/07/07 18:23:41 marco * Changed move (var source;var dest) to move (const source;var dest) Revision 1.73 2000/05/09 06:21:58 pierre