+ test case

git-svn-id: trunk@38069 -
This commit is contained in:
florian 2018-01-28 13:26:49 +00:00
parent 93353d8d79
commit 10ea652493
3 changed files with 40 additions and 0 deletions

1
.gitattributes vendored
View File

@ -15945,6 +15945,7 @@ tests/webtbs/tw32510.pp svneol=native#text/plain
tests/webtbs/tw3252.pp svneol=native#text/plain
tests/webtbs/tw3255.pp svneol=native#text/plain
tests/webtbs/tw3257.pp svneol=native#text/plain
tests/webtbs/tw32576.pp svneol=native#text/pascal
tests/webtbs/tw3259.pp svneol=native#text/plain
tests/webtbs/tw3261.pp svneol=native#text/plain
tests/webtbs/tw3263.pp svneol=native#text/plain

View File

@ -1117,6 +1117,8 @@ unit aoptx86;
begin
GetNextInstruction(p, hp1);
DebugMsg('PeepHole Optimization Mov2Nop done',p);
{ take care of the register (de)allocs following p }
UpdateUsedRegs(tai(p.next));
asml.remove(p);
p.free;
p:=hp1;

37
tests/webtbs/tw32576.pp Normal file
View File

@ -0,0 +1,37 @@
{$mode objfpc}
{$R+}
{$H+}
program xx;
uses sysutils;
function strlsIndexOf(str, searched: pansichar; l1, l2: longint): longint;
begin
result:=-1; //function removed for minimal example
end;
function strindexof(const str, searched: string): longint; inline;
begin
if str = '' then begin result := 0; exit; end;
result := strlsIndexOf(pchar(pointer(str)) , pchar(searched), length(str) , length(searched));
if result < 0 then begin result := 0; exit; end;
inc(result);
end;
function strBefore(const s, sep: string): string;
var
i: Integer;
begin
i := strIndexOf(s, sep); // line 26
if i = 0 then result := ''
else result := copy(s, 1, i-1);
end;
begin
strBefore('hallo', 'a');
end.