mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 05:09:49 +02:00
* disable saving of fpu/mm for i386 until optimizer is fixed
git-svn-id: trunk@334 -
This commit is contained in:
parent
fd6248db71
commit
1d9407f2f3
@ -622,8 +622,10 @@ implementation
|
|||||||
procedure tcg.allocallcpuregisters(list:Taasmoutput);
|
procedure tcg.allocallcpuregisters(list:Taasmoutput);
|
||||||
begin
|
begin
|
||||||
alloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
alloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
||||||
|
{$ifndef i386}
|
||||||
alloccpuregisters(list,R_FPUREGISTER,paramanager.get_volatile_registers_fpu(pocall_default));
|
alloccpuregisters(list,R_FPUREGISTER,paramanager.get_volatile_registers_fpu(pocall_default));
|
||||||
alloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
alloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
||||||
|
{$endif i386}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -639,8 +641,10 @@ implementation
|
|||||||
procedure tcg.deallocallcpuregisters(list:Taasmoutput);
|
procedure tcg.deallocallcpuregisters(list:Taasmoutput);
|
||||||
begin
|
begin
|
||||||
dealloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
dealloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
||||||
|
{$ifndef i386}
|
||||||
dealloccpuregisters(list,R_FPUREGISTER,paramanager.get_volatile_registers_fpu(pocall_default));
|
dealloccpuregisters(list,R_FPUREGISTER,paramanager.get_volatile_registers_fpu(pocall_default));
|
||||||
dealloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
dealloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
||||||
|
{$endif i386}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
@ -153,6 +153,7 @@ procedure TResourceStrings.CreateResourceStringList;
|
|||||||
begin
|
begin
|
||||||
objectlibrary.getdatalabel(l1);
|
objectlibrary.getdatalabel(l1);
|
||||||
resourcestringlist.concat(tai_const.create_sym(l1));
|
resourcestringlist.concat(tai_const.create_sym(l1));
|
||||||
|
maybe_new_object_file(consts);
|
||||||
consts.concat(tai_align.Create(const_align(sizeof(aint))));
|
consts.concat(tai_align.Create(const_align(sizeof(aint))));
|
||||||
consts.concat(tai_const.create_aint(-1));
|
consts.concat(tai_const.create_aint(-1));
|
||||||
consts.concat(tai_const.create_aint(len));
|
consts.concat(tai_const.create_aint(len));
|
||||||
@ -170,6 +171,7 @@ procedure TResourceStrings.CreateResourceStringList;
|
|||||||
objectlibrary.getdatalabel(l1);
|
objectlibrary.getdatalabel(l1);
|
||||||
L:=Length(Name);
|
L:=Length(Name);
|
||||||
resourcestringlist.concat(tai_const.create_sym(l1));
|
resourcestringlist.concat(tai_const.create_sym(l1));
|
||||||
|
maybe_new_object_file(consts);
|
||||||
consts.concat(tai_align.Create(const_align(sizeof(aint))));
|
consts.concat(tai_align.Create(const_align(sizeof(aint))));
|
||||||
consts.concat(tai_const.create_aint(-1));
|
consts.concat(tai_const.create_aint(-1));
|
||||||
consts.concat(tai_const.create_aint(l));
|
consts.concat(tai_const.create_aint(l));
|
||||||
@ -187,9 +189,10 @@ Var
|
|||||||
begin
|
begin
|
||||||
if not(assigned(resourcestringlist)) then
|
if not(assigned(resourcestringlist)) then
|
||||||
resourcestringlist:=taasmoutput.create;
|
resourcestringlist:=taasmoutput.create;
|
||||||
resourcestringlist.insert(tai_const.create_32bit(resstrcount));
|
maybe_new_object_file(resourcestringlist);
|
||||||
resourcestringlist.insert(tai_symbol.createname_global(make_mangledname('RESOURCESTRINGLIST',current_module.localsymtable,''),AT_DATA,0));
|
resourcestringlist.concat(tai_align.Create(const_align(sizeof(aint))));
|
||||||
resourcestringlist.insert(tai_align.Create(const_align(sizeof(aint))));
|
resourcestringlist.concat(tai_symbol.createname_global(make_mangledname('RESOURCESTRINGLIST',current_module.localsymtable,''),AT_DATA,0));
|
||||||
|
resourcestringlist.concat(tai_const.create_32bit(resstrcount));
|
||||||
R:=TResourceStringItem(List.First);
|
R:=TResourceStringItem(List.First);
|
||||||
While assigned(R) do
|
While assigned(R) do
|
||||||
begin
|
begin
|
||||||
|
Loading…
Reference in New Issue
Block a user