mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-09 13:08:49 +02:00
* give an internalerror when calling cg.makeregsize() for a high level
target (explanation why in comments) git-svn-id: branches/hlcgllvm@28388 -
This commit is contained in:
parent
e8026ad8d3
commit
831cc96f48
@ -38,6 +38,7 @@ uses
|
||||
type
|
||||
thlbasecgcpu = class(tcg)
|
||||
public
|
||||
function makeregsize(list: TAsmList; reg: Tregister; size: Tcgsize): Tregister; override;
|
||||
procedure g_save_registers(list:TAsmList);override;
|
||||
procedure g_restore_registers(list:TAsmList);override;
|
||||
procedure g_stackpointer_alloc(list: TAsmList; size: longint); override;
|
||||
@ -208,6 +209,17 @@ implementation
|
||||
internalerror(2012042822);
|
||||
end;
|
||||
|
||||
|
||||
function thlbasecgcpu.makeregsize(list: TAsmList; reg: Tregister; size: Tcgsize): Tregister;
|
||||
begin
|
||||
{ you can't just change the size of a (virtual) register on high level
|
||||
targets, you have to allocate a new register of the right size and
|
||||
move the data there }
|
||||
internalerror(2014081201);
|
||||
{ suppress warning }
|
||||
result:=NR_NO;
|
||||
end;
|
||||
|
||||
procedure thlbasecgcpu.g_save_registers(list: TAsmList);
|
||||
begin
|
||||
{ do nothing }
|
||||
|
@ -106,7 +106,7 @@ unit cgobj;
|
||||
procedure do_register_allocation(list:TAsmList;headertai:tai);virtual;
|
||||
procedure translate_register(var reg : tregister);
|
||||
|
||||
function makeregsize(list:TAsmList;reg:Tregister;size:Tcgsize):Tregister;
|
||||
function makeregsize(list:TAsmList;reg:Tregister;size:Tcgsize):Tregister; virtual;
|
||||
|
||||
{# Emit a label to the instruction stream. }
|
||||
procedure a_label(list : TAsmList;l : tasmlabel);virtual;
|
||||
|
Loading…
Reference in New Issue
Block a user