Sven Barth
69bfff046a
+ add a test for converting a 64-bit Boolean (either QWordBool or Boolean64) to a 32-bit signed integer (this problematic case was discovered after e65b822a
on PowerPC
2021-12-05 15:11:24 +01:00
Sven Barth
2636966e2a
* adjust ToInteger of the Boolean helpers so that it returns the value of either True or False, but not any other value (e.g. in the *Bool types). This is not only Delphi compatible, but also fixes the compilation problem of the one or other 32-bit platform (like PowerPC) after e65b822a
.
2021-12-05 00:03:05 +01:00
Florian Klämpfl
49af134ba7
* compilation of x86_64-win64 fixed
2021-12-04 16:21:29 +01:00
Michaël Van Canneyt
cbc2d0351c
* Correct casing of rposex - fix issue #39466
2021-12-03 23:49:44 +01:00
florian
0b3fb55c6a
* generate no exit code at all on x86-64 if the subroutine is compiled with po_noreturn
2021-12-03 23:26:28 +01:00
Sven/Sarah Barth
e65b822a0c
+ add type helpers for the remaining Boolean types (QWordBool and Boolean{8,16,32,64})
2021-12-03 14:52:19 +01:00
J. Gareth "Curious Kit" Moreton
0f1c4b4db8
Fixed Unreachable code warning when building on a 32-bit platform with DEBUG_NODE_XML
2021-12-02 20:32:05 +00:00
Pierre Muller
0508f643c0
Add gdb4fpc.ini, generated by gppcCPUSUFFIX utility and utils/fpcm/fpcmake to .gitignore list
2021-12-02 10:31:36 +00:00
Sven Barth
b7034cb960
* move Boolean helpers before the ordinal ones so that ToOneZeroString can be inlined correctly
2021-12-01 23:55:35 +01:00
Sven Barth
5412e463ff
* use the already existing TNative(U)IntNibbleIndex types for the TORDINALNIBBLEINDEX macro as this way memory models with far pointers (where Native(U)Int has a size of 4) is handled correctly as well
2021-12-01 23:55:35 +01:00
florian
89aeedac1e
* fixes excluding of cpu capabilities
2021-12-01 22:48:19 +01:00
Michaël Van Canneyt
a868a45ba9
* Patch from Werner Pamler to fix some errors in JSON export
2021-12-01 12:53:56 +01:00
Michaël Van Canneyt
a9b4fa5ed4
* Attempt to fix failing cross-compilation, remove unused dll
2021-11-30 23:02:33 +01:00
florian
60623f39a1
+ - can be used to remove options from a cpu capability switch
2021-11-30 22:37:47 +01:00
Michaël Van Canneyt
e422743841
* Patch from Zeljko Avramovic to add additional typehelpers for basic types. Fix issue #39268
2021-11-30 09:22:06 +01:00
Michaël Van Canneyt
b1412ec5c0
* Make hexdigits a global constant
2021-11-30 09:06:41 +01:00
Michaël Van Canneyt
65101b36dc
* typescript parsing & conversion, initial commit
2021-11-30 08:58:16 +01:00
ccrause
793c157a9c
Always call DoExec to generate linker scripts. Even if cs_link_nolink is set, the ldgen scipt needs to be called in the generated ppas script.
2021-11-29 22:42:49 +01:00
ccrause
b0c0309cc1
Add output path to kconfig source file location parameters.
2021-11-29 22:42:49 +01:00
ccrause
f66dd54bc2
Extract linker script generation as separate method. Check if esp linker scripts can be found in library paths, if not then generate scritps.
2021-11-29 22:42:49 +01:00
ccrause
ab00794343
Keep esp32 and esp8266 version specific tweaks separate.
2021-11-29 22:42:49 +01:00
ccrause
a58567004b
Remove unused $OUTPUT substtution and empty check of outputexedir.
2021-11-29 22:42:49 +01:00
ccrause
655a5f526c
Place IDF related files in executable output folder.
2021-11-29 22:42:49 +01:00
ccrause
e86d3af7e0
The linklib list for esp-idf v4.2 is also needed for v4.3
2021-11-29 22:42:49 +01:00
florian
5db20610dd
* correct idf version check
2021-11-29 22:42:49 +01:00
florian
802f24dfbd
* force result to be set
2021-11-29 22:42:49 +01:00
florian
54f2308d2a
+ draft for esp-idf version specific rtl unit which contains the necessery linklib statements
2021-11-29 22:42:49 +01:00
florian
dc161e519f
* inputfilepath might not be empty
2021-11-29 22:42:49 +01:00
ccrause
5289aab4f2
Add -WP option so that IDF version can be passed in - stored in globals.idf_version. The version is checked in t_freertos.pas and for esp-idf version 4.3.x an extra link file is added, also running ldgen.py is skipped as that seems unused.
2021-11-29 22:42:49 +01:00
Pierre Muller
222a41be7b
Change declaration of DynLinkStr local variable of MakeExecutable method to ansitring to avoid short string overflows
2021-11-28 23:57:09 +00:00
Jonas Maebe
2de72c8541
Linux/PPC64: fix missing TOC loads
...
Routines loading a global symbol need the TOC register
2021-11-28 18:32:32 +01:00
Jonas Maebe
e1a739d15d
FreeBSD CSU fixes
...
* Assembler blocks in non-pure assembler functions must always declare all
changed registers
* argc is read as *(long*) in C -> changed plongint to pptrint
* fixed ident section
2021-11-28 18:32:32 +01:00
florian
9314bbbf08
* compilation hopefully fixed
2021-11-28 00:03:30 +01:00
Yuriy Sydorov
4f711a8b2c
* Use longint for Tmoveins.id instead of word to prevent overflow in extreme cases.
2021-11-28 01:02:20 +02:00
florian
12f48c230b
* use high level interface wrappers for powerpc64 if pic is generated as
...
the abi does not support branches between functions located in different
tocs which might happen for inter-module branches
2021-11-27 23:33:22 +01:00
Yuriy Sydorov
5c55f1a16e
* Added Tmoveins.id to be used for sorting and searching in Tmovelist, to
...
produce the consistent order of elements.
This fixes occasional differences in the register allocation caused by
the address space randomization. When ASLR is in effect, the previous
approach to sort elements by their memory addresses can't guarantee the
consistent elements order for each compilation of the same source code.
2021-11-27 19:44:50 +02:00
Yuriy Sydorov
fad6b0e489
* Fixed build with NO_THREADING on Windows.
2021-11-27 19:12:25 +02:00
florian
e132ae2fee
* last commit was not correct, fixed
2021-11-27 00:28:57 +01:00
florian
bf5f37b14a
* fix conditional statement as pointed out by Sergey Larin
2021-11-26 22:27:19 +01:00
Pierre Muller
b3fb6a0ec0
Commit revision.inc change after 7d1b7eda0e
2021-11-26 07:52:15 +00:00
Pierre Muller
dabc59977d
Avoid having uninitialized UseBinutilsPrefix local variable in GetDefaultLibGCCDir function
2021-11-25 23:34:28 +01:00
Pierre Muller
271ba59cf1
All Makefile's regenerated
2021-11-25 22:13:32 +00:00
Pierre Muller
c9ee52a8f5
Regenerated fpcmake.inc after previous commit: Use filter instead of findstring make function when a whole word needs to match
2021-11-25 21:42:17 +00:00
Pierre Muller
7d1b7eda0e
Use filter instead of findstring make function when a whole word needs to match
2021-11-25 21:41:35 +00:00
florian
5bddb3a435
* x86-64 can handle overflows in 64 bit multiplications directly, part of resolving #39450
2021-11-24 23:06:38 +01:00
florian
65ef6f1f37
* regenerated Makefiles
2021-11-24 22:50:37 +01:00
florian
5c9de7edd7
* compile fpc with -Cg on powerpc64-linux
2021-11-24 22:45:38 +01:00
florian
1ebc0350d3
* fpcmake uses now git for date and hash in revision.inc
2021-11-24 22:37:20 +01:00
florian
18e0979379
+ Exception.GetBaseException
2021-11-23 23:01:06 +01:00
florian
b0459a19f4
+ initial files for intrinsics support on AArch64
2021-11-21 21:11:23 +01:00