mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2026-01-06 07:30:53 +01:00
Fix cycling.
* correctly handle tcalo_data_force_indirect in finalize_vectorized_dead_strip_asmlist() * correctly handle tcdssso_use_indirect in get_vectorized_dead_strip_section_symbol() git-svn-id: trunk@34193 -
This commit is contained in:
parent
05779cc64c
commit
131a7bbc67
@ -992,6 +992,8 @@ implementation
|
||||
dsopts:=[tcdssso_define];
|
||||
if tcalo_is_public_asm in options then
|
||||
include(dsopts,tcdssso_register_asmsym);
|
||||
if tcalo_data_force_indirect in options then
|
||||
include(dsopts,tcdssso_use_indirect);
|
||||
if tcalo_vectorized_dead_strip_start in options then
|
||||
begin
|
||||
{ the start and end names are predefined }
|
||||
@ -1401,6 +1403,7 @@ implementation
|
||||
class function ttai_typedconstbuilder.get_vectorized_dead_strip_section_symbol(const basename: string; st: tsymtable; options: ttcdeadstripsectionsymboloptions; start: boolean): tasmsymbol;
|
||||
var
|
||||
name: TSymStr;
|
||||
asmtype : TAsmsymtype;
|
||||
begin
|
||||
if start then
|
||||
name:=make_mangledname(basename,st,'START')
|
||||
@ -1408,7 +1411,11 @@ implementation
|
||||
name:=make_mangledname(basename,st,'END');
|
||||
if tcdssso_define in options then
|
||||
begin
|
||||
result:=current_asmdata.DefineAsmSymbol(name,AB_GLOBAL,AT_DATA,voidpointertype);
|
||||
if tcdssso_use_indirect in options then
|
||||
asmtype:=AT_DATA_FORCEINDIRECT
|
||||
else
|
||||
asmtype:=AT_DATA;
|
||||
result:=current_asmdata.DefineAsmSymbol(name,AB_GLOBAL,asmtype,voidpointertype);
|
||||
if tcdssso_register_asmsym in options then
|
||||
current_module.add_public_asmsym(result);
|
||||
end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user