Add LinkInternSetExplicitly field to TOption class.
Set this field to true if '-Xe-' or '-Xi' option is used.
Check at exit if in cross-endian configuration:
if LinkInternSetExplicitly is set, issue error message,
else add cs_link_extern to init_settings.globalswitches.
(cherry picked from commit 2cbaa24f76)
* patch by Cyrax: forbid to use heaptrc and valgrind at the same time, resolves#36529
* load cmem before line* units as they might allocate memory
........
git-svn-id: branches/fixes_3_2@49314 -
U compiler/i386/n386flw.pas
--- Recording mergeinfo for merge of r42115 into '.':
U .
--- Merging r43830 into '.':
U compiler/i386/cpunode.pas
U compiler/options.pas
--- Recording mergeinfo for merge of r43830 into '.':
G .
git-svn-id: branches/fixes_3_2@43978 -
------------------------------------------------------------------------
r43598 | pierre | 2019-11-27 22:15:23 +0000 (Wed, 27 Nov 2019) | 1 line
Use defined(aarch64) instead of defined(cpuaarch64) for FPC_HAS_INTERNAL_ABS_INT64
------------------------------------------------------------------------
--- Merging r43598 into '.':
U compiler/options.pas
--- Recording mergeinfo for merge of r43598 into '.':
U .
git-svn-id: branches/fixes_3_2@43606 -
G .
-- Aufzeichnung der Informationen für Zusammenführung von r43006 in ».«:
G .
-- Aufzeichnung der Informationen für Zusammenführung von r43007 in ».«:
G .
-- Aufzeichnung der Informationen für Zusammenführung von r43008 in ».«:
G .
-- Zusammenführen von r43000 in ».«:
U compiler/pp.pas
-- Aufzeichnung der Informationen für Zusammenführung von r43000 in ».«:
G .
-- Zusammenführen von r43011 in ».«:
U rtl/inc/system.inc
-- Aufzeichnung der Informationen für Zusammenführung von r43011 in ».«:
G .
-- Zusammenführen von r43012 in ».«:
U rtl/i386/i386.inc
-- Aufzeichnung der Informationen für Zusammenführung von r43012 in ».«:
G .
-- Zusammenführen von r43013 in ».«:
U rtl/linux/i386/si_c21.inc
-- Aufzeichnung der Informationen für Zusammenführung von r43013 in ».«:
G .
-- Zusammenführen von r43014 in ».«:
U compiler/systems/i_linux.pas
-- Aufzeichnung der Informationen für Zusammenführung von r43014 in ».«:
G .
-- Zusammenführen von r43176 in ».«:
U compiler/i386/cpupi.pas
U compiler/i386/n386cal.pas
U compiler/ncgcal.pas
U compiler/ncgutil.pas
G compiler/systems/i_linux.pas
U compiler/systems.inc
C compiler/systems.pas
G tests/webtbs/tw7808.pp
-- Aufzeichnung der Informationen für Zusammenführung von r43176 in ».«:
G .
Konfliktübersicht:
Textkonflikte: 1
Konfliktübersicht:
Textkonflikte: 1
git-svn-id: branches/fixes_3_2@43434 -
U compiler/cfileutl.pas
U compiler/options.pas
U compiler/systems/t_bsd.pas
C compiler/systems/t_linux.pas
--- Merging r43302 into '.':
G compiler/cfileutl.pas
--- Merging r43306 into '.':
G compiler/cfileutl.pas
--- Merging r43312 into '.':
G compiler/cfileutl.pas
G compiler/options.pas
U compiler/scandir.pas
U compiler/systems/t_aix.pas
U compiler/systems/t_beos.pas
G compiler/systems/t_bsd.pas
U compiler/systems/t_haiku.pas
C compiler/systems/t_linux.pas
U compiler/systems/t_macos.pas
U compiler/systems/t_sunos.pas
git-svn-id: branches/fixes_3_2@43421 -
------------------------------------------------------------------------
r40753 | karoly | 2019-01-04 02:16:24 +0000 (Fri, 04 Jan 2019) | 1 line
haiku-x86_64: add target to the compiler and ppudump, enable it in fpmake and fpcmake
------------------------------------------------------------------------
--- Merging r40753 into '.':
U compiler/options.pas
U compiler/systems/i_haiku.pas
U compiler/systems/t_haiku.pas
U compiler/systems.inc
U compiler/utils/ppuutils/ppudump.pp
U compiler/x86/agx86att.pas
U compiler/x86_64/cpuelf.pas
U compiler/x86_64/cputarg.pas
U utils/fpcm/fpcmmain.pp
--- Recording mergeinfo for merge of r40753 into '.':
U .
------------------------------------------------------------------------
r40756 | karoly | 2019-01-04 03:00:03 +0000 (Fri, 04 Jan 2019) | 1 line
haiku: linker support code for internal sysinit and make the x86_64 port use it
------------------------------------------------------------------------
--- Merging r40756 into '.':
G compiler/systems/t_haiku.pas
U compiler/systems.pas
--- Recording mergeinfo for merge of r40756 into '.':
G .
git-svn-id: branches/fixes_3_2@42133 -
with fpmkunit change.
------------------------------------------------------------------------
r40365 | pierre | 2018-11-24 15:14:57 +0000 (Sat, 24 Nov 2018) | 4 lines
+ Add Debug message when resource file is found, but not registered.
+ Add missing "T.ResourceStrings:=True;" for all source units
that generate the new debug message above.
------------------------------------------------------------------------
--- Merging r40365 into '.':
U packages/mysql/fpmake.pp
U packages/fcl-base/fpmake.pp
U packages/fcl-web/fpmake.pp
U packages/fcl-db/fpmake.pp
U packages/fcl-pdf/fpmake.pp
U packages/fcl-image/fpmake.pp
U packages/pastojs/fpmake.pp
U packages/fcl-passrc/fpmake.pp
U packages/rtl-objpas/fpmake.pp
U packages/openssl/fpmake.pp
U packages/winunits-base/fpmake.pp
U packages/fpmkunit/src/fpmkunit.pp
--- Recording mergeinfo for merge of r40365 into '.':
U .
------------------------------------------------------------------------
r40391 | pierre | 2018-11-28 23:45:35 +0000 (Wed, 28 Nov 2018) | 1 line
Add several missing unit references in fpmake files
------------------------------------------------------------------------
--- Merging r40391 into '.':
U utils/pas2ut/fpmake.pp
U utils/fpdoc/fpmake.pp
U utils/pas2js/fpmake.pp
U utils/fppkg/fpmake.pp
U utils/fpcmkcfg/fpmake.pp
U utils/fpmake.pp
U utils/unicode/fpmake.pp
--- Recording mergeinfo for merge of r40391 into '.':
G .
------------------------------------------------------------------------
r40899 | pierre | 2019-01-19 10:26:51 +0000 (Sat, 19 Jan 2019) | 1 line
Activate fpc-web package for android OS, except for jvm compiler
------------------------------------------------------------------------
--- Merging r40899 into '.':
G packages/fcl-web/fpmake.pp
--- Recording mergeinfo for merge of r40899 into '.':
G .
------------------------------------------------------------------------
r41069 | pierre | 2019-01-25 12:58:21 +0000 (Fri, 25 Jan 2019) | 1 line
Disable targets that do not support fcl-base for utils packages that need fcl-base
------------------------------------------------------------------------
--- Merging r41069 into '.':
G utils/pas2ut/fpmake.pp
G utils/fpdoc/fpmake.pp
U utils/json2pas/fpmake.pp
U utils/fpcreslipo/fpmake.pp
G utils/fpcmkcfg/fpmake.pp
G utils/fpmake.pp
U utils/fpcres/fpmake.pp
U utils/fpcm/fpmake.pp
G utils/unicode/fpmake.pp
U utils/pas2fpm/fpmake.pp
U utils/instantfpc/fpmake.pp
U utils/importtl/fpmake.pp
--- Recording mergeinfo for merge of r41069 into '.':
G .
------------------------------------------------------------------------
r41070 | pierre | 2019-01-25 14:39:12 +0000 (Fri, 25 Jan 2019) | 1 line
Enable paszlib package and disable utils/fpcm and utils/fpcmkcfg for nativent OS
------------------------------------------------------------------------
--- Merging r41070 into '.':
U packages/paszlib/fpmake.pp
G utils/fpcmkcfg/fpmake.pp
G utils/fpcm/fpmake.pp
--- Recording mergeinfo for merge of r41070 into '.':
G .
------------------------------------------------------------------------
r41076 | pierre | 2019-01-26 10:17:58 +0000 (Sat, 26 Jan 2019) | 1 line
Also use installed ppudump for ppu testing in utils directory
------------------------------------------------------------------------
--- Merging r41076 into '.':
U utils/Makefile.fpc
U utils/Makefile
--- Recording mergeinfo for merge of r41076 into '.':
G .
------------------------------------------------------------------------
r41104 | pierre | 2019-01-28 17:43:15 +0000 (Mon, 28 Jan 2019) | 1 line
-Xr is also supported for systems_android
------------------------------------------------------------------------
--- Merging r41104 into '.':
U compiler/options.pas
--- Recording mergeinfo for merge of r41104 into '.':
G .
------------------------------------------------------------------------
r41106 | pierre | 2019-01-29 09:01:42 +0000 (Tue, 29 Jan 2019) | 1 line
Disable jvm-android and jvm-java targets for fprcp, h2pas and tply packages because they use memory allocation or fpc_get_output
------------------------------------------------------------------------
--- Merging r41106 into '.':
U utils/fprcp/fpmake.pp
U utils/h2pas/fpmake.pp
U utils/tply/fpmake.pp
--- Recording mergeinfo for merge of r41106 into '.':
G .
------------------------------------------------------------------------
r41119 | pierre | 2019-01-29 13:46:43 +0000 (Tue, 29 Jan 2019) | 1 line
Disable palmos in fprcp, h2pas and tply packages
------------------------------------------------------------------------
--- Merging r41119 into '.':
G utils/fprcp/fpmake.pp
G utils/h2pas/fpmake.pp
G utils/tply/fpmake.pp
--- Recording mergeinfo for merge of r41119 into '.':
G .
------------------------------------------------------------------------
r41120 | pierre | 2019-01-29 14:08:03 +0000 (Tue, 29 Jan 2019) | 1 line
Disable fprcp, h2pas and tply pacakges for msdos and win16 because the programs are too big
------------------------------------------------------------------------
--- Merging r41120 into '.':
G utils/fprcp/fpmake.pp
G utils/h2pas/fpmake.pp
G utils/tply/fpmake.pp
--- Recording mergeinfo for merge of r41120 into '.':
G .
------------------------------------------------------------------------
r41121 | pierre | 2019-01-29 14:17:53 +0000 (Tue, 29 Jan 2019) | 1 line
Disable atari target for fpcm and fpcmkcfg because it depends on unsupported fpmkunit package
------------------------------------------------------------------------
--- Merging r41121 into '.':
G utils/fpcmkcfg/fpmake.pp
G utils/fpcm/fpmake.pp
--- Recording mergeinfo for merge of r41121 into '.':
G .
------------------------------------------------------------------------
r41122 | pierre | 2019-01-29 14:32:28 +0000 (Tue, 29 Jan 2019) | 1 line
Disable some packages for avr-embedded and i8086-embedded targets
------------------------------------------------------------------------
--- Merging r41122 into '.':
G utils/fprcp/fpmake.pp
G utils/h2pas/fpmake.pp
G utils/tply/fpmake.pp
--- Recording mergeinfo for merge of r41122 into '.':
G .
------------------------------------------------------------------------
r41142 | pierre | 2019-01-30 12:55:04 +0000 (Wed, 30 Jan 2019) | 1 line
Disable jvm-android as fcl-json is not supported for this target
------------------------------------------------------------------------
--- Merging r41142 into '.':
G utils/pas2js/fpmake.pp
--- Recording mergeinfo for merge of r41142 into '.':
G .
------------------------------------------------------------------------
r41150 | pierre | 2019-01-31 11:20:34 +0000 (Thu, 31 Jan 2019) | 1 line
Disable pas2js for jvm compiler
------------------------------------------------------------------------
--- Merging r41150 into '.':
G utils/pas2js/fpmake.pp
--- Recording mergeinfo for merge of r41150 into '.':
G .
git-svn-id: branches/fixes_3_2@41193 -
------------------------------------------------------------------------
r39731 | pierre | 2018-09-11 08:00:54 +0000 (Tue, 11 Sep 2018) | 1 line
Disable overflow for UDIVX ans SDIVX 64-bit instructions
------------------------------------------------------------------------
--- Merging r39731 into '.':
U compiler/sparcgen/ncpumat.pas
--- Recording mergeinfo for merge of r39731 into '.':
G .
------------------------------------------------------------------------
r39825 | pierre | 2018-09-27 06:59:07 +0000 (Thu, 27 Sep 2018) | 1 line
Add rtl dependency and fix fpcdir value
------------------------------------------------------------------------
--- Merging r39825 into '.':
U packages/ide/compiler/Makefile.fpc
--- Recording mergeinfo for merge of r39825 into '.':
G .
------------------------------------------------------------------------
r39849 | pierre | 2018-10-01 21:50:13 +0000 (Mon, 01 Oct 2018) | 1 line
Use vfpv2 as default fpu for eabihf if cpu is below armv7
------------------------------------------------------------------------
--- Merging r39849 into '.':
U compiler/options.pas
--- Recording mergeinfo for merge of r39849 into '.':
G .
------------------------------------------------------------------------
r39912 | pierre | 2018-10-11 20:38:39 +0000 (Thu, 11 Oct 2018) | 1 line
Fix ppuload for string type for i8086, use getasizeint for all string defs but short string
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r39912 into '.':
G .
------------------------------------------------------------------------
r39913 | pierre | 2018-10-11 21:02:25 +0000 (Thu, 11 Oct 2018) | 1 line
fix position of ppuload_platform for trecorddef
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r39913 into '.':
G .
------------------------------------------------------------------------
r39914 | pierre | 2018-10-12 06:05:50 +0000 (Fri, 12 Oct 2018) | 1 line
Adapt ppudump to fix introduced in revision 39912
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r39914 into '.':
G .
------------------------------------------------------------------------
r39924 | pierre | 2018-10-13 11:35:34 +0000 (Sat, 13 Oct 2018) | 1 line
Downgrade some warnings to notes for EXTDEBUG
------------------------------------------------------------------------
--- Merging r39924 into '.':
U compiler/pass_2.pas
U compiler/tgobj.pas
--- Recording mergeinfo for merge of r39924 into '.':
G .
------------------------------------------------------------------------
r39935 | pierre | 2018-10-14 22:18:50 +0000 (Sun, 14 Oct 2018) | 1 line
Add missing setting of expectloc for multiplications
------------------------------------------------------------------------
--- Merging r39935 into '.':
U compiler/nadd.pas
--- Recording mergeinfo for merge of r39935 into '.':
G .
------------------------------------------------------------------------
r39999 | pierre | 2018-10-20 18:44:05 +0000 (Sat, 20 Oct 2018) | 1 line
Avoid run time error if compiled with -CR option
------------------------------------------------------------------------
--- Merging r39999 into '.':
U compiler/m68k/cpupara.pas
--- Recording mergeinfo for merge of r39999 into '.':
G .
------------------------------------------------------------------------
r40000 | pierre | 2018-10-20 18:49:53 +0000 (Sat, 20 Oct 2018) | 1 line
Avoid range check error when compiled with -CR
------------------------------------------------------------------------
--- Merging r40000 into '.':
U compiler/m68k/cgcpu.pas
--- Recording mergeinfo for merge of r40000 into '.':
G .
------------------------------------------------------------------------
r40001 | pierre | 2018-10-20 22:19:08 +0000 (Sat, 20 Oct 2018) | 1 line
Add explicit typecast to avoid range check error
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r40001 into '.':
G .
------------------------------------------------------------------------
r40026 | pierre | 2018-10-24 21:37:22 +0000 (Wed, 24 Oct 2018) | 1 line
Explicitly disable range checking
------------------------------------------------------------------------
--- Merging r40026 into '.':
U compiler/x86/cgx86.pas
--- Recording mergeinfo for merge of r40026 into '.':
G .
------------------------------------------------------------------------
r40115 | pierre | 2018-10-31 22:53:11 +0000 (Wed, 31 Oct 2018) | 1 line
Avoid range check error in ReadPosInfo
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r40115 into '.':
G .
------------------------------------------------------------------------
r40132 | pierre | 2018-11-01 07:09:47 +0000 (Thu, 01 Nov 2018) | 1 line
Only call moved if len>0, as otherwise astring local variable is nil, which leads to a range check error for astring[1]
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r40132 into '.':
G .
------------------------------------------------------------------------
r40163 | pierre | 2018-11-01 21:58:54 +0000 (Thu, 01 Nov 2018) | 8 lines
More -CriotR fixes:
* entfile.pas: Change PPU header falgs filed from longint to dword.
* ngtcon.pas: Change local variable startoffset type to aword.
* omfbase.pas: Avoid calling move with a nil string s indexed as s[1],
to avoid a range check error.
* owomflib.pas: Disable range check explicitly in hash computation.
* utils/ppuutils/ppudump.pp: Adapt to flags type change in entfile.pas
------------------------------------------------------------------------
--- Recording mergeinfo for merge of r40163 into '.':
G .
git-svn-id: branches/fixes_3_2@40616 -
Revision(s) 39739, 39749, 39860, 39862, 39865, 39869, 39871, 39903, 39905, 39917, 39956, 39959-39960, 39969, 39971, 39980, 39987, 40198-40201, 40472, 40532, 40535-40536 from trunk:
* Android: The list of supported syscalls has been auto-generated directly from android sources for each CPU.
* Minor adjustments to make all compilable with the proper list of Android syscalls.
........
* Re-generated lists of android syscalls by a new script. The lists are more correct now. The script's location: https://svn.freepascal.org/svn/fpcbuild/scripts/android
........
* Fixed UnhookSignal when RTL_SIGDEFAULT is passed. The bug have caused crash on aarch64-android due to out of bounds read of the rtlsig2ossig[] array.
........
+ Added support for the aarch64-android target.
........
* Set ICU data dir if it is not set by the system. It fixes issues on newer Android versions.
* Added more predefined ICU versions.
........
* android: Use the current dir as temp.
........
* Corrected TUContext record for aarch64-linux and aarch64-android. It fixes obtaining of an address of the instruction where a signal has thrown.
........
* Enabled safecall support for aarch64 to be on par with other cpus.
........
* Android: Reworked the startup code to use no assembly instructions. Generic assembler startup files contains only section data and are compiled for each CPU.
* Android: argc and argv are correct for shared libraries.
........
* Use syscall_nr_renameat for android.
........
+ added support for x86_64-android target.
........
+ Added the auto-generated list syscalls for mips64-android. It will be needed when mips64 is supported.
........
* x86_64-android requires sigreturn for proper signal handling.
........
* Register external gas assembler for aarch64-android and x86_64-android.
........
* Enabled compilation of the cpu unit for arm-android and x86_64-android.
........
* ucnv_open() must be called with some SSE exception masked on x86_64-android.
* Call u_init() during initialization.
........
* Create the ".note.gnu.build-id" section for android. It fixes debugging of shared libs in Android Studio.
........
* android: Removed cwstring from the uses clause of the unix unit. Use cwstring indirectly. It allows to avoid using cwstring if needed.
........
* ICU v3.8 on Android 1.5-2.1 is buggy and can't be unloaded properly.
........
* Fixed locale detection on new Android versions.
........
* Fixed obtaining a time zone information for 64-bit android.
........
* Since Android 8 the net.dnsX properties can't be read. Use Google Public DNS servers.
........
* android: Use libc for sockets since the "accept" syscall is blocked by SECCOMP, but the "accept4" alternative is not available on old Android versions (2.3 and older).
........
* android: Regenerated syscalls.
........
* android: Disabled usage of the "pselect6" and "ppoll" syscalls for arm-android. These syscalls are not available on old Android versions (2.3 or older).
........
git-svn-id: branches/fixes_3_2@40540 -
information. Only enabled on i8086 (for now). Does not do much yet, but
hopefully, soon it'll start emitting line number information for i8086-msdos
that is usable by DOS debuggers.
git-svn-id: trunk@39006 -
* ppu version update
* -Sf might be used only during system unit compilation
* loadsystemunit factored out so the system unit can be loaded earlier than other units to get features set
git-svn-id: trunk@37708 -