summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-04-25 12:59:25 +0000
committernickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-04-25 12:59:25 +0000
commit51d7a644cb40b7dc72ab95235567d0c6ccf0e4e6 (patch)
tree0134769734b607abcc074c3e5e2d0abcd0101127
parent49ec63047fbb7eea3611bcea17302ceeaa089cce (diff)
downloadfpc-51d7a644cb40b7dc72ab95235567d0c6ccf0e4e6.tar.gz
+ introduced labelmaxlen in tasminfo and added code in ReplaceForbiddenAsmSymbolChars that limits the
output label to that length git-svn-id: https://svn.freepascal.org/svn/fpc/branches/z80@45066 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r--compiler/aarch64/agcpugas.pas3
-rw-r--r--compiler/aasmbase.pas14
-rw-r--r--compiler/arm/agarmgas.pas3
-rw-r--r--compiler/arm/cpuelf.pas1
-rw-r--r--compiler/avr/agavrgas.pas1
-rw-r--r--compiler/i386/cpuelf.pas1
-rw-r--r--compiler/jvm/agjasmin.pas1
-rw-r--r--compiler/llvm/agllvm.pas2
-rw-r--r--compiler/m68k/ag68kgas.pas2
-rw-r--r--compiler/m68k/ag68kvasm.pas1
-rw-r--r--compiler/mips/cpugas.pas2
-rw-r--r--compiler/ogcoff.pas6
-rw-r--r--compiler/ogmacho.pas1
-rw-r--r--compiler/ognlm.pas1
-rw-r--r--compiler/ogomf.pas1
-rw-r--r--compiler/powerpc/agppcmpw.pas1
-rw-r--r--compiler/powerpc/agppcvasm.pas1
-rw-r--r--compiler/ppcgen/agppcgas.pas6
-rw-r--r--compiler/riscv/agrvgas.pas1
-rw-r--r--compiler/sparc/cpuelf.pas1
-rw-r--r--compiler/sparc64/cpugas.pas2
-rw-r--r--compiler/sparcgen/cpugas.pas4
-rw-r--r--compiler/systems.pas1
-rw-r--r--compiler/x86/agx86att.pas13
-rw-r--r--compiler/x86/agx86int.pas4
-rw-r--r--compiler/x86/agx86nsm.pas15
-rw-r--r--compiler/x86_64/cpuelf.pas1
-rw-r--r--compiler/xtensa/agcpugas.pas1
-rw-r--r--compiler/z80/agsdasz80.pas1
-rw-r--r--compiler/z80/agz80asm.pas1
30 files changed, 92 insertions, 1 deletions
diff --git a/compiler/aarch64/agcpugas.pas b/compiler/aarch64/agcpugas.pas
index 131793c709..2702e2a26e 100644
--- a/compiler/aarch64/agcpugas.pas
+++ b/compiler/aarch64/agcpugas.pas
@@ -789,6 +789,7 @@ unit agcpugas;
supported_targets : [system_aarch64_linux,system_aarch64_android];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '// ';
dollarsign: '$';
);
@@ -802,6 +803,7 @@ unit agcpugas;
supported_targets : [system_aarch64_darwin];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -815,6 +817,7 @@ unit agcpugas;
supported_targets : [system_aarch64_win64];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '// ';
dollarsign: '$';
);
diff --git a/compiler/aasmbase.pas b/compiler/aasmbase.pas
index 39f5c1542a..085baf4d3d 100644
--- a/compiler/aasmbase.pas
+++ b/compiler/aasmbase.pas
@@ -257,7 +257,7 @@ interface
implementation
uses
- verbose;
+ verbose,fpccrc;
function create_smartlink_sections:boolean;inline;
@@ -292,12 +292,24 @@ implementation
var
i : longint;
rchar: char;
+ crc: Cardinal;
+ charstoremove: integer;
begin
Result:=s;
rchar:=target_asm.dollarsign;
for i:=1 to Length(Result) do
if Result[i]='$' then
Result[i]:=rchar;
+ if (target_asm.labelmaxlen<>-1) and (Length(Result)>target_asm.labelmaxlen) then
+ begin
+ crc:=0;
+ crc:=UpdateCrc32(crc,Result[1],Length(Result));
+ charstoremove:=Length(Result)-target_asm.labelmaxlen+13;
+ Delete(Result,(Length(Result)-charstoremove) div 2,charstoremove);
+ Result:='_'+target_asm.dollarsign+'CRC'+hexstr(crc,8)+Result;
+ if Length(Result)>target_asm.labelmaxlen then
+ Internalerror(2020042501);
+ end;
end;
diff --git a/compiler/arm/agarmgas.pas b/compiler/arm/agarmgas.pas
index e51b715f41..175d1ef5e5 100644
--- a/compiler/arm/agarmgas.pas
+++ b/compiler/arm/agarmgas.pas
@@ -445,6 +445,7 @@ unit agarmgas;
system_arm_embedded,system_arm_symbian,system_arm_android,system_arm_aros,system_arm_freertos];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -458,6 +459,7 @@ unit agarmgas;
supported_targets : [system_arm_darwin];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -472,6 +474,7 @@ unit agarmgas;
supported_targets : [system_arm_darwin];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/arm/cpuelf.pas b/compiler/arm/cpuelf.pas
index 311b5144f0..13519888b2 100644
--- a/compiler/arm/cpuelf.pas
+++ b/compiler/arm/cpuelf.pas
@@ -977,6 +977,7 @@ implementation
system_arm_aros,system_arm_freertos];
flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/avr/agavrgas.pas b/compiler/avr/agavrgas.pas
index 89d807cbbc..e19d616214 100644
--- a/compiler/avr/agavrgas.pas
+++ b/compiler/avr/agavrgas.pas
@@ -216,6 +216,7 @@ unit agavrgas;
supported_targets : [system_avr_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: 's';
);
diff --git a/compiler/i386/cpuelf.pas b/compiler/i386/cpuelf.pas
index ab5a60124d..4b68296956 100644
--- a/compiler/i386/cpuelf.pas
+++ b/compiler/i386/cpuelf.pas
@@ -524,6 +524,7 @@ implementation
system_i386_android,system_i386_aros];
flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/jvm/agjasmin.pas b/compiler/jvm/agjasmin.pas
index 12b51ad688..ca039256bc 100644
--- a/compiler/jvm/agjasmin.pas
+++ b/compiler/jvm/agjasmin.pas
@@ -1237,6 +1237,7 @@ implementation
supported_targets : [system_jvm_java32,system_jvm_android32];
flags : [];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : ' ; ';
dollarsign : '$';
);
diff --git a/compiler/llvm/agllvm.pas b/compiler/llvm/agllvm.pas
index 82ed6d9919..77671374a0 100644
--- a/compiler/llvm/agllvm.pas
+++ b/compiler/llvm/agllvm.pas
@@ -1737,6 +1737,7 @@ implementation
supported_targets : [system_x86_64_linux,system_x86_64_darwin,system_aarch64_linux,system_arm_linux];
flags : [af_smartlink_sections,af_llvm];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1751,6 +1752,7 @@ implementation
supported_targets : [system_x86_64_linux,system_x86_64_darwin,system_aarch64_linux,system_arm_linux];
flags : [af_smartlink_sections,af_llvm];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
diff --git a/compiler/m68k/ag68kgas.pas b/compiler/m68k/ag68kgas.pas
index e5d783e99d..845e8833cf 100644
--- a/compiler/m68k/ag68kgas.pas
+++ b/compiler/m68k/ag68kgas.pas
@@ -355,6 +355,7 @@ interface
supported_targets : [system_m68k_macos,system_m68k_linux,system_m68k_PalmOS,system_m68k_netbsd,system_m68k_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -368,6 +369,7 @@ interface
supported_targets : [system_m68k_Amiga,system_m68k_Atari];
flags : [af_needar];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/m68k/ag68kvasm.pas b/compiler/m68k/ag68kvasm.pas
index 8b4c6b8c7c..50421262d0 100644
--- a/compiler/m68k/ag68kvasm.pas
+++ b/compiler/m68k/ag68kvasm.pas
@@ -136,6 +136,7 @@ unit ag68kvasm;
supported_targets : [system_m68k_amiga,system_m68k_atari];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/mips/cpugas.pas b/compiler/mips/cpugas.pas
index 9798f814ea..cb5bf22930 100644
--- a/compiler/mips/cpugas.pas
+++ b/compiler/mips/cpugas.pas
@@ -263,6 +263,7 @@ unit cpugas;
supported_targets: [system_mipsel_linux,system_mipsel_android,system_mipsel_embedded];
flags: [ af_needar, af_smartlink_sections];
labelprefix: '.L';
+ labelmaxlen : -1;
comment: '# ';
dollarsign: '$';
);
@@ -276,6 +277,7 @@ unit cpugas;
supported_targets: [system_mipseb_linux];
flags: [ af_needar, af_smartlink_sections];
labelprefix: '.L';
+ labelmaxlen : -1;
comment: '# ';
dollarsign: '$';
);
diff --git a/compiler/ogcoff.pas b/compiler/ogcoff.pas
index ec2f73c391..8c05b3792a 100644
--- a/compiler/ogcoff.pas
+++ b/compiler/ogcoff.pas
@@ -3472,6 +3472,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_i386_go32v2];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
@@ -3485,6 +3486,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_i386_win32,system_i386_nativent];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
@@ -3498,6 +3500,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_i386_wdosx];
flags : [af_outputbinary];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
@@ -3511,6 +3514,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_i386_wince];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
@@ -3526,6 +3530,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_x86_64_win64];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
@@ -3541,6 +3546,7 @@ const pemagic : array[0..3] of byte = (
supported_targets : [system_arm_wince];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/ogmacho.pas b/compiler/ogmacho.pas
index 3f504bb336..2ba006a04b 100644
--- a/compiler/ogmacho.pas
+++ b/compiler/ogmacho.pas
@@ -1229,6 +1229,7 @@ uses
supported_targets : [system_i386_darwin,system_i386_iphonesim];
flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf{, af_stabs_use_function_absolute_addresses}];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '#';
dollarsign: '$';
);
diff --git a/compiler/ognlm.pas b/compiler/ognlm.pas
index 99b57a5451..9c48c3d2c1 100644
--- a/compiler/ognlm.pas
+++ b/compiler/ognlm.pas
@@ -1497,6 +1497,7 @@ const
supported_targets : [system_i386_Netware,system_i386_netwlibc];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/ogomf.pas b/compiler/ogomf.pas
index 1ab8ab0d4d..05b02acadf 100644
--- a/compiler/ogomf.pas
+++ b/compiler/ogomf.pas
@@ -4920,6 +4920,7 @@ cleanup:
supported_targets : [system_i8086_msdos,system_i8086_embedded,system_i8086_win16];
flags : [af_outputbinary,af_smartlink_sections];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
diff --git a/compiler/powerpc/agppcmpw.pas b/compiler/powerpc/agppcmpw.pas
index 80d75bfc87..9c3c8fe0ba 100644
--- a/compiler/powerpc/agppcmpw.pas
+++ b/compiler/powerpc/agppcmpw.pas
@@ -1243,6 +1243,7 @@ interface
supported_targets : [system_powerpc_macos];
flags : [af_needar,af_smartlink_sections,af_labelprefix_only_inside_procedure];
labelprefix : '@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: 's';
);
diff --git a/compiler/powerpc/agppcvasm.pas b/compiler/powerpc/agppcvasm.pas
index e51c3cc451..e502a16448 100644
--- a/compiler/powerpc/agppcvasm.pas
+++ b/compiler/powerpc/agppcvasm.pas
@@ -125,6 +125,7 @@ unit agppcvasm;
supported_targets : [system_powerpc_amiga,system_powerpc_morphos,system_powerpc_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/ppcgen/agppcgas.pas b/compiler/ppcgen/agppcgas.pas
index 71c3ed540b..cbcbe735b4 100644
--- a/compiler/ppcgen/agppcgas.pas
+++ b/compiler/ppcgen/agppcgas.pas
@@ -646,6 +646,7 @@ unit agppcgas;
supported_targets : [system_powerpc_linux,system_powerpc_netbsd,system_powerpc_openbsd,system_powerpc_MorphOS,system_powerpc_Amiga,system_powerpc64_linux,system_powerpc_embedded,system_powerpc64_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -664,6 +665,7 @@ unit agppcgas;
supported_targets : [system_powerpc_morphos];
flags : [af_needar];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -678,6 +680,7 @@ unit agppcgas;
supported_targets : [system_powerpc_darwin,system_powerpc64_darwin];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign : '$';
);
@@ -701,6 +704,7 @@ unit agppcgas;
supported_targets : [system_powerpc_aix,system_powerpc64_aix];
flags : [af_needar,af_smartlink_sections,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign : '.'
);
@@ -723,6 +727,7 @@ unit agppcgas;
supported_targets : [system_powerpc_aix,system_powerpc64_aix];
flags : [af_needar,af_smartlink_sections,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign : '.'
);
@@ -736,6 +741,7 @@ unit agppcgas;
supported_targets : [system_powerpc_macos, system_powerpc_darwin, system_powerpc64_darwin];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/riscv/agrvgas.pas b/compiler/riscv/agrvgas.pas
index f0426a27f2..85f7ffce6c 100644
--- a/compiler/riscv/agrvgas.pas
+++ b/compiler/riscv/agrvgas.pas
@@ -263,6 +263,7 @@ unit agrvgas;
supported_targets : [system_riscv32_linux,system_riscv64_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/sparc/cpuelf.pas b/compiler/sparc/cpuelf.pas
index 1123ffb266..d9331a7638 100644
--- a/compiler/sparc/cpuelf.pas
+++ b/compiler/sparc/cpuelf.pas
@@ -128,6 +128,7 @@ implementation
// flags : [af_outputbinary,af_smartlink_sections];
flags : [af_outputbinary,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/sparc64/cpugas.pas b/compiler/sparc64/cpugas.pas
index 9ea138b793..76d752164f 100644
--- a/compiler/sparc64/cpugas.pas
+++ b/compiler/sparc64/cpugas.pas
@@ -240,6 +240,7 @@ implementation
supported_targets : [system_sparc64_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -253,6 +254,7 @@ implementation
supported_targets : [system_sparc64_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/sparcgen/cpugas.pas b/compiler/sparcgen/cpugas.pas
index ca41275117..a34fdcfaa6 100644
--- a/compiler/sparcgen/cpugas.pas
+++ b/compiler/sparcgen/cpugas.pas
@@ -236,6 +236,7 @@ implementation
supported_targets : [system_sparc_solaris,system_sparc_linux,system_sparc_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -249,6 +250,7 @@ implementation
supported_targets : [system_sparc_solaris,system_sparc_linux,system_sparc_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -266,6 +268,7 @@ implementation
supported_targets : [system_sparc64_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -279,6 +282,7 @@ implementation
supported_targets : [system_sparc64_linux];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/systems.pas b/compiler/systems.pas
index 7ee9476144..bfb72b0986 100644
--- a/compiler/systems.pas
+++ b/compiler/systems.pas
@@ -88,6 +88,7 @@ interface
supported_targets : set of tsystem;
flags : set of tasmflags;
labelprefix : string[3];
+ labelmaxlen : integer;
comment : string[3];
{ set to '$' if that character is allowed in symbol names, otherwise
to alternate character by which '$' should be replaced }
diff --git a/compiler/x86/agx86att.pas b/compiler/x86/agx86att.pas
index 29b321a076..d2bc40bad9 100644
--- a/compiler/x86/agx86att.pas
+++ b/compiler/x86/agx86att.pas
@@ -441,6 +441,7 @@ interface
system_x86_64_android,system_x86_64_haiku];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -454,6 +455,7 @@ interface
supported_targets : [system_x86_64_linux,system_x86_64_freebsd,system_x86_64_win64,system_x86_64_embedded];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -467,6 +469,7 @@ interface
supported_targets : [system_x86_64_solaris];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -481,6 +484,7 @@ interface
supported_targets : [system_x86_64_solaris];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -496,6 +500,7 @@ interface
supported_targets : [system_x86_64_darwin,system_x86_64_iphonesim];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -509,6 +514,7 @@ interface
supported_targets : [system_x86_64_darwin,system_x86_64_iphonesim];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_no_stabs];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -526,6 +532,7 @@ interface
system_i386_nativent,system_i386_android,system_i386_aros];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -542,6 +549,7 @@ interface
system_i386_nativent];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -556,6 +564,7 @@ interface
supported_targets : [system_i386_linux,system_i386_OS2,system_i386_freebsd,system_i386_netbsd,system_i386_openbsd,system_i386_EMX,system_i386_embedded];
flags : [af_needar,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -570,6 +579,7 @@ interface
supported_targets : [system_i386_darwin,system_i386_iphonesim];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_stabs_use_function_absolute_addresses];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -583,6 +593,7 @@ interface
supported_targets : [system_i386_darwin,system_i386_iphonesim];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_no_stabs];
labelprefix : 'L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -599,6 +610,7 @@ interface
system_x86_6432_linux,system_i386_android];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
@@ -612,6 +624,7 @@ interface
supported_targets : [system_i386_solaris];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/x86/agx86int.pas b/compiler/x86/agx86int.pas
index 1ca1a78534..2a4dae7f48 100644
--- a/compiler/x86/agx86int.pas
+++ b/compiler/x86/agx86int.pas
@@ -1159,6 +1159,7 @@ implementation
supported_targets : [system_i386_GO32V2,system_i386_Win32,system_i386_wdosx,system_i386_watcom,system_i386_wince];
flags : [af_needar,af_labelprefix_only_inside_procedure];
labelprefix : '@@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1172,6 +1173,7 @@ implementation
supported_targets : [system_i386_GO32V2,system_i386_Win32,system_i386_wdosx,system_i386_watcom,system_i386_wince];
flags : [af_needar];
labelprefix : '@@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1185,6 +1187,7 @@ implementation
supported_targets : [system_i386_watcom];
flags : [af_needar];
labelprefix : '@@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1199,6 +1202,7 @@ implementation
supported_targets : [system_x86_64_win64];
flags : [af_needar];
labelprefix : '@@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
diff --git a/compiler/x86/agx86nsm.pas b/compiler/x86/agx86nsm.pas
index f67dab0d3c..09214fe250 100644
--- a/compiler/x86/agx86nsm.pas
+++ b/compiler/x86/agx86nsm.pas
@@ -1483,6 +1483,7 @@ interface
supported_targets : [system_i8086_msdos,system_i8086_win16,system_i8086_embedded];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1495,6 +1496,7 @@ interface
supported_targets : [system_i8086_msdos,system_i8086_win16,system_i8086_embedded];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1510,6 +1512,7 @@ interface
supported_targets : [system_i386_go32v2];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1523,6 +1526,7 @@ interface
supported_targets : [system_i386_win32];
flags : [af_needar,af_no_debug,af_smartlink_sections];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1536,6 +1540,7 @@ interface
supported_targets : [system_i386_embedded, system_i8086_msdos];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1549,6 +1554,7 @@ interface
supported_targets : [system_i386_wdosx];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1563,6 +1569,7 @@ interface
supported_targets : [system_i386_linux];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1576,6 +1583,7 @@ interface
supported_targets : [system_i386_darwin];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1589,6 +1597,7 @@ interface
supported_targets : [system_i386_beos];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1602,6 +1611,7 @@ interface
supported_targets : [system_i386_haiku];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1614,6 +1624,7 @@ interface
supported_targets : [system_any];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1630,6 +1641,7 @@ interface
supported_targets : [system_any];
flags : [af_needar{,af_no_debug}];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1643,6 +1655,7 @@ interface
supported_targets : [system_x86_64_win64];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1656,6 +1669,7 @@ interface
supported_targets : [system_x86_64_linux];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
@@ -1670,6 +1684,7 @@ interface
supported_targets : [system_x86_64_darwin];
flags : [af_needar,af_no_debug];
labelprefix : '..@';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: '$';
);
diff --git a/compiler/x86_64/cpuelf.pas b/compiler/x86_64/cpuelf.pas
index 3d426286e5..b0c52b7581 100644
--- a/compiler/x86_64/cpuelf.pas
+++ b/compiler/x86_64/cpuelf.pas
@@ -699,6 +699,7 @@ implementation
system_x86_64_haiku];
flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '';
dollarsign: '$';
);
diff --git a/compiler/xtensa/agcpugas.pas b/compiler/xtensa/agcpugas.pas
index c771356e8e..07defa4607 100644
--- a/compiler/xtensa/agcpugas.pas
+++ b/compiler/xtensa/agcpugas.pas
@@ -176,6 +176,7 @@ unit agcpugas;
supported_targets : [system_xtensa_embedded];
flags : [af_needar,af_smartlink_sections,af_supports_dwarf,af_stabs_use_function_absolute_addresses];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '# ';
dollarsign: '$';
);
diff --git a/compiler/z80/agsdasz80.pas b/compiler/z80/agsdasz80.pas
index f00343feb7..18e9d9efc9 100644
--- a/compiler/z80/agsdasz80.pas
+++ b/compiler/z80/agsdasz80.pas
@@ -883,6 +883,7 @@ unit agsdasz80;
supported_targets : [system_Z80_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : 79;
comment : '; ';
dollarsign: '$';
);
diff --git a/compiler/z80/agz80asm.pas b/compiler/z80/agz80asm.pas
index 4569b86ead..9788b040ba 100644
--- a/compiler/z80/agz80asm.pas
+++ b/compiler/z80/agz80asm.pas
@@ -436,6 +436,7 @@ unit agz80asm;
supported_targets : [system_Z80_embedded];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
+ labelmaxlen : -1;
comment : '; ';
dollarsign: 's';
);