lazutils: some optimizations from Alexey

git-svn-id: trunk@59358 -
This commit is contained in:
mattias 2018-10-26 19:26:31 +00:00
parent b9e28c2c9b
commit 054150bb42

View File

@ -25,24 +25,21 @@ type
function StrToWord(const s: string): word; function StrToWord(const s: string): word;
function AlignToPtr(const p: Pointer): Pointer; function AlignToPtr(const p: Pointer): Pointer; inline;
function AlignToInt(const p: Pointer): Pointer; function AlignToInt(const p: Pointer): Pointer; inline;
implementation implementation
function StrToWord(const s: string): word; function StrToWord(const s: string): word;
var var
p: Integer; i: Integer;
begin begin
Result:=0; Result:=0;
p:=1; for i:=1 to Length(s) do
while (p<=length(s)) do begin Result:=Result*10+ord(s[i])-ord('0');
Result:=Result*10+ord(s[p])-ord('0');
inc(p);
end;
end; end;
function AlignToPtr(const p: Pointer): Pointer; function AlignToPtr(const p: Pointer): Pointer; inline;
begin begin
{$IFDEF FPC_REQUIRES_PROPER_ALIGNMENT} {$IFDEF FPC_REQUIRES_PROPER_ALIGNMENT}
Result := Align(p, SizeOf(Pointer)); Result := Align(p, SizeOf(Pointer));
@ -51,7 +48,7 @@ begin
{$ENDIF} {$ENDIF}
end; end;
function AlignToInt(const p: Pointer): Pointer; function AlignToInt(const p: Pointer): Pointer; inline;
begin begin
{$IFDEF FPC_REQUIRES_PROPER_ALIGNMENT} {$IFDEF FPC_REQUIRES_PROPER_ALIGNMENT}
Result := Align(p, SizeOf(integer)); Result := Align(p, SizeOf(integer));