mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-26 23:52:09 +02:00
made arm-linux system unit compilable on anything but Thumb2 after r26161
git-svn-id: trunk@26175 -
This commit is contained in:
parent
9619eac204
commit
71e492db1b
@ -1031,6 +1031,7 @@ implementation
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
{ special case for case jump tables }
|
{ special case for case jump tables }
|
||||||
|
penalty:=0;
|
||||||
if SimpleGetNextInstruction(curtai,hp) and
|
if SimpleGetNextInstruction(curtai,hp) and
|
||||||
(tai(hp).typ=ait_instruction) then
|
(tai(hp).typ=ait_instruction) then
|
||||||
begin
|
begin
|
||||||
@ -1056,28 +1057,20 @@ implementation
|
|||||||
inc(penalty,multiplier);
|
inc(penalty,multiplier);
|
||||||
hp:=tai(hp.next);
|
hp:=tai(hp.next);
|
||||||
end;
|
end;
|
||||||
end
|
end;
|
||||||
else
|
|
||||||
penalty:=0;
|
|
||||||
A_IT:
|
A_IT:
|
||||||
if GenerateThumb2Code then
|
if GenerateThumb2Code then
|
||||||
penalty:=multiplier
|
penalty:=multiplier;
|
||||||
else
|
|
||||||
internalerror(2013112920);
|
|
||||||
A_ITE,
|
A_ITE,
|
||||||
A_ITT:
|
A_ITT:
|
||||||
if GenerateThumb2Code then
|
if GenerateThumb2Code then
|
||||||
penalty:=2*multiplier
|
penalty:=2*multiplier;
|
||||||
else
|
|
||||||
internalerror(2013112919);
|
|
||||||
A_ITEE,
|
A_ITEE,
|
||||||
A_ITTE,
|
A_ITTE,
|
||||||
A_ITET,
|
A_ITET,
|
||||||
A_ITTT:
|
A_ITTT:
|
||||||
if GenerateThumb2Code then
|
if GenerateThumb2Code then
|
||||||
penalty:=3*multiplier
|
penalty:=3*multiplier;
|
||||||
else
|
|
||||||
internalerror(2013112918);
|
|
||||||
A_ITEEE,
|
A_ITEEE,
|
||||||
A_ITTEE,
|
A_ITTEE,
|
||||||
A_ITETE,
|
A_ITETE,
|
||||||
@ -1087,15 +1080,9 @@ implementation
|
|||||||
A_ITETT,
|
A_ITETT,
|
||||||
A_ITTTT:
|
A_ITTTT:
|
||||||
if GenerateThumb2Code then
|
if GenerateThumb2Code then
|
||||||
penalty:=4*multiplier
|
penalty:=4*multiplier;
|
||||||
else
|
|
||||||
internalerror(2013112917);
|
|
||||||
else
|
|
||||||
penalty:=0;
|
|
||||||
end;
|
end;
|
||||||
end
|
end;
|
||||||
else
|
|
||||||
penalty:=0;
|
|
||||||
|
|
||||||
{ FLD/FST VFP instructions have a limit of +/- 1024, not 4096 }
|
{ FLD/FST VFP instructions have a limit of +/- 1024, not 4096 }
|
||||||
if SimpleGetNextInstruction(curtai,hp) and
|
if SimpleGetNextInstruction(curtai,hp) and
|
||||||
|
Loading…
Reference in New Issue
Block a user