* if cs_opt_level3 is not set, limit lookahead of GetNextInstructionUsingReg to one instruction:

only -O3 means do the really slow optimizations

git-svn-id: trunk@23459 -
This commit is contained in:
florian 2013-01-20 14:57:51 +00:00
parent a78af5b8fe
commit 82f3ec7922

View File

@ -73,7 +73,7 @@ Type
Implementation Implementation
uses uses
cutils,verbose,globals, cutils,verbose,globtype,globals,
systems, systems,
cpuinfo, cpuinfo,
cgobj,cgutils,procinfo, cgobj,cgutils,procinfo,
@ -308,7 +308,7 @@ Implementation
Next:=Current; Next:=Current;
repeat repeat
Result:=GetNextInstruction(Next,Next); Result:=GetNextInstruction(Next,Next);
until not(Result) or (Next.typ<>ait_instruction) or (RegInInstruction(reg,Next)) or until not(cs_opt_level3 in current_settings.optimizerswitches) or not(Result) or (Next.typ<>ait_instruction) or (RegInInstruction(reg,Next)) or
(is_calljmp(taicpu(Next).opcode)) or (RegInInstruction(NR_PC,Next)); (is_calljmp(taicpu(Next).opcode)) or (RegInInstruction(NR_PC,Next));
end; end;