+ mark outmost frame in CFI

git-svn-id: branches/debug_eh@41286 -
This commit is contained in:
florian 2019-02-10 17:59:04 +00:00
parent 27ab140dd9
commit 65cece7657
2 changed files with 11 additions and 1 deletions

View File

@ -160,6 +160,7 @@ interface
procedure generate_code(list:TAsmList);virtual;
procedure start_frame(list:TAsmList);virtual;
procedure end_frame(list:TAsmList);virtual;
procedure outmost_frame(list:TAsmList);virtual;
procedure cfa_offset(list:TAsmList;reg:tregister;ofs:longint);virtual;
procedure cfa_restore(list:TAsmList;reg:tregister);virtual;
procedure cfa_def_cfa_register(list:TAsmList;reg:tregister);virtual;
@ -285,6 +286,11 @@ implementation
end;
procedure TAsmCFI.outmost_frame(list: TAsmList);
begin
end;
procedure TAsmCFI.cfa_offset(list:TAsmList;reg:tregister;ofs:longint);
begin
end;
@ -674,7 +680,8 @@ initialization
memasmlists:=TMemDebug.create('AsmLists');
memasmlists.stop;
{$endif MEMDEBUG}
CAsmCFI:=TAsmCFI;
if not(assigned(CAsmCFI)) then
CAsmCFI:=TAsmCFI;
finalization
{$ifdef MEMDEBUG}

View File

@ -726,6 +726,9 @@ implementation
{ generate call frame marker for dwarf call frame info }
current_asmdata.asmcfi.start_frame(list);
if current_procinfo.procdef.proctypeoption=potype_proginit then
current_asmdata.asmcfi.outmost_frame(list);
{ All temps are know, write offsets used for information }
if (cs_asm_source in current_settings.globalswitches) and
(current_procinfo.tempstart<>tg.lasttemp) then