* more option updates

git-svn-id: trunk@7312 -
This commit is contained in:
pierre 2007-05-11 22:14:54 +00:00
parent fb4828649e
commit 0f870ec901

View File

@ -30,7 +30,7 @@ type
TParamID =
(idNone,idAlign,idRangeChecks,idStackChecks,idIOChecks,
idOverflowChecks,idObjMethCallChecks,
idAsmDirect,idAsmATT,idAsmIntel,idAsmMot,
idAsmDirect,idAsmATT,idAsmIntel,idAsmMot,idAsmStandard,
idSymInfNone,idSymInfGlobalOnly,idSymInfGlobalLocal,
idStackSize,idHeapSize,idStrictVarStrings,idExtendedSyntax,
idMMXOps,idTypedAddress,idPackRecords,idPackEnum,idStackFrames,
@ -199,6 +199,7 @@ implementation
uses
Dos,
GlobType,
CpuInfo,
FPVars,FPUtils;
var
@ -256,7 +257,8 @@ const
opt_level1optimizations = 'Level ~1~ optimizations';
opt_level2optimizations = 'Level ~2~ optimizations';
opt_i386486 = 'i~3~86/i486';
opt_pentiumandmmx = 'Pentium/PentiumMM~X~ (tm)';
opt_pentium = 'Pentium (tm)';
opt_pentiummmx = 'PentiumMM~X~ (tm)';
opt_pentiumpro = '~P~entium2/PentiumM/AMD';
opt_pentiumiv = 'Pentium~4~';
opt_m68000 = 'm~6~8000';
@ -266,6 +268,7 @@ const
opt_attassembler = '~A~T&T style assembler';
opt_intelassembler = '~I~ntel style assembler';
opt_motassembler = '~M~otorola style assembler';
opt_standardassembler = '~S~tandard style assembler';
opt_listsource = '~L~ist source';
opt_listregisterallocation = 'list ~r~egister allocation';
opt_listtempallocation = 'list ~t~emp allocation';
@ -1137,6 +1140,8 @@ end;
procedure InitSwitches;
var
t : tsystem;
cpu : tcputype;
st : string;
begin
New(SyntaxSwitches,Init('S'));
with SyntaxSwitches^ do
@ -1214,17 +1219,30 @@ begin
New(ProcessorSwitches,InitSelect('O'));
with ProcessorSwitches^ do
begin
for cpu:=low(tcputype) to high(tcputype) do
begin
st:=cputypestr[cpu];
{$ifdef I386}
AddSelectItem(opt_i386486,'p1',idNone);
AddSelectItem(opt_pentiumandmmx,'p2',idNone);
AddSelectItem(opt_pentiumpro,'p3',idNone);
AddSelectItem(opt_pentiumiv,'p4',idNone);
{$else not I386}
{$ifdef m68k}
AddSelectItem(opt_m68000,'',idNone);
AddSelectItem(opt_m68020,'2',idNone);
{$endif m68k}
if st='386' then
st:=opt_i386486;
if st='PENTIUM' then
st:=opt_pentium;
if st='PENTIUM2' then
st:=opt_pentiummmx;
if st='PENTIUM3' then
st:=opt_pentiumpro;
if st='PENTIUM4' then
st:=opt_pentiumiv;
{$endif not I386}
{$ifdef m68k}
if st='68000' then
st:=opt_m68000;
if st='68020' then
st:=opt_m68020;
{$endif m68k}
if st<>'' then
AddSelectItem(st,'p'+cputypestr[cpu],idNone);
end;
end;
New(TargetSwitches,InitSelect('T'));
with TargetSwitches^ do
@ -1243,7 +1261,8 @@ begin
AddSelectItem(opt_intelassembler,'intel',idAsmIntel);
{$endif I386}
{$ifdef M68K}
AddSelectItem(opt_motassembler,'mot',idAsmDirect);
AddSelectItem(opt_standardassembler,'standard',idAsmStandard);
AddSelectItem(opt_motassembler,'motorola',idAsmMot);
{$endif M68K}
end;
New(AsmInfoSwitches,Init('a'));
@ -1461,7 +1480,8 @@ begin
{ idAsmDirect : if P^.GetParamValueBool[SM] then AddParam('ASMMODE DIRECT');
idAsmATT : if P^.GetParamValueBool[SM] then AddParam('ASMMODE ATT');
idAsmIntel : if P^.GetParamValueBool[SM] then AddParam('ASMMODE INTEL');
idAsmMot : if P^.GetParamValueBool[SM] then AddParam('ASMMODE MOT');}
idAsmMot : if P^.GetParamValueBool[SM] then AddParam('ASMMODE MOTOROLA');
idAsmStandard : if P^.GetParamValueBool[SM] then AddParam('ASMMODE STANDARD');}
{ idSymInfNone : ;
idSymInfGlobalOnly:;
idSymInfGlobalLocal:if P^.ParamValueBool(SM) then AddSwitch('L+');}