Commit Graph

59951 Commits

Author SHA1 Message Date
florian
1041bc5a17 * made test more verbose
git-svn-id: trunk@46707 -
2020-08-26 21:01:38 +00:00
florian
f4ded560cc * Xtensa: OP_NOT fixed
git-svn-id: trunk@46706 -
2020-08-26 21:01:00 +00:00
Mattias Gaertner
7a87452764 pastojs: GetTypeKind
git-svn-id: trunk@46705 -
2020-08-26 20:30:56 +00:00
Mattias Gaertner
13903e44f4 fcl-passrc: resolver: GetTypeKind
git-svn-id: trunk@46704 -
2020-08-26 20:30:47 +00:00
florian
f30f62231f * reverted 46417: if a assembler subroutine needs an entry instruction, it should be added explicitly
git-svn-id: trunk@46696 -
2020-08-25 21:39:40 +00:00
florian
6e25a014e6 * Xtensa: force correct location into a register in tcpunotnode.second_boolean
git-svn-id: trunk@46695 -
2020-08-25 21:39:39 +00:00
florian
3c6c403b7b * Xtensa-FreeRTOS: use setjmp/longjmp provided by the Xtensa libraries, we
have to link against them anyways

git-svn-id: trunk@46694 -
2020-08-25 21:39:38 +00:00
florian
5aa3da26f5 * fix test for targets with little memory
git-svn-id: trunk@46693 -
2020-08-25 21:39:38 +00:00
pierre
b7a1195f5d Generate more precise error message
git-svn-id: trunk@46692 -
2020-08-25 15:31:09 +00:00
pierre
836a932b9a Move z80 specific -Sf options from rtl.cfg to system.cfg, as -Sf options are only accepted when compiliing system unit
git-svn-id: trunk@46691 -
2020-08-25 15:15:51 +00:00
pierre
8aa844e2fe Fix compilation with -dEXTDEBUG for aarch64
git-svn-id: trunk@46690 -
2020-08-25 14:33:22 +00:00
pierre
d4c9e1f260 Replace outdated cgop2string function by tcgsize2str function from cgbase unit to fix EXTDEBUG cycle on powerpc64le-linux
git-svn-id: trunk@46689 -
2020-08-25 13:29:16 +00:00
pierre
46c354ae58 Fix EXTDEBUG code: tai_comment requires use of strpnew function with constant string
git-svn-id: trunk@46688 -
2020-08-25 13:27:53 +00:00
Mattias Gaertner
eec29225df fcl-passrc: generic function: inline specialize test
git-svn-id: trunk@46687 -
2020-08-25 12:58:53 +00:00
Mattias Gaertner
9ca61c10d0 fcl-passrc: generic function: inline specialize
git-svn-id: trunk@46686 -
2020-08-25 12:49:06 +00:00
florian
03b147eef8 * compilation fixed
git-svn-id: trunk@46685 -
2020-08-25 12:45:06 +00:00
pierre
4739762790 * Try to avoid deadlocks with worker threads:
* Add three separate try/except blocks:
       - Around thread create calls to handle fails in constructor
       - Around ProcessThreadResult calls
       - Around Terminate calls
    Set ErrorState and ErrorMessage if an exception is raised
    inside those try/except blocks.

git-svn-id: trunk@46684 -
2020-08-25 12:20:52 +00:00
pierre
1e8aa99f81 * Disable range and overflow checking inside softfpu implementation
git-svn-id: trunk@46682 -
2020-08-25 06:34:29 +00:00
florian
c73c98d995 * Xtensa FreeRTOS: unified haltproc
git-svn-id: trunk@46679 -
2020-08-24 21:02:09 +00:00
florian
03a0e6e82f * Xtensa: fixed TCPUAddNode.second_cmpsmallset
git-svn-id: trunk@46678 -
2020-08-24 21:02:08 +00:00
Jonas Maebe
beac71ed24 * fix deleting the linksyms file after successful linking (mantis #37636)
git-svn-id: trunk@46677 -
2020-08-24 20:21:10 +00:00
Jonas Maebe
3208929e17 * add Xcode-11.0 as LLVM target version versin
git-svn-id: trunk@46676 -
2020-08-23 21:11:13 +00:00
Jonas Maebe
453bfcd370 * emit the correct declaration for procdefs used to force a procname in LLVM
o fixes lazarus startup on macOS/AArch64 when compiled with the LLVM cg

git-svn-id: trunk@46675 -
2020-08-23 21:11:09 +00:00
florian
27fbf8c91e * Xtensa: tcpunotnode.second_boolean fixed
git-svn-id: trunk@46672 -
2020-08-23 19:13:19 +00:00
florian
ea2ae3b8f0 + Xtensa: use extui for and with constants
git-svn-id: trunk@46664 -
2020-08-23 14:17:01 +00:00
Mattias Gaertner
0b6501fbfb fcl-passrc: test unitdot in constraint
git-svn-id: trunk@46663 -
2020-08-23 14:13:06 +00:00
Mattias Gaertner
050f1fa1f4 fcl-passrc: test TAnt<T:T>
git-svn-id: trunk@46662 -
2020-08-23 13:42:30 +00:00
Jonas Maebe
ac18c0090a * non-zero exit code on failure
git-svn-id: trunk@46661 -
2020-08-23 11:31:16 +00:00
Jonas Maebe
d1d3d7cd08 * never create a regular temp for inline parameters that can be modified by
the caller (mantis #37465)a
   o in theory, the regular checks for doing so should never trigger, but due
     to compiler-generated nodes (such as calls to fpc_ansistr_unique), they
     could. Internal address nodes can deal with taking the address of the
     function result in this case.

git-svn-id: trunk@46660 -
2020-08-23 11:27:59 +00:00
yury
e5a923eb7a * 8086: Proper implementation of: If a far procvar is called, it must be in a memory location. This fixes a hack to emulate CALL reg1:reg2.
git-svn-id: trunk@46641 -
2020-08-23 10:26:54 +00:00
yury
04baeb2bcf * 8086: Reverted r46557. It must be implemented differently.
git-svn-id: trunk@46561 -
2020-08-23 00:17:40 +00:00
yury
00db7646c8 * 8086: Fixed register allocation failure after r46559.
git-svn-id: trunk@46560 -
2020-08-22 23:42:12 +00:00
yury
5ec101d578 * 8086: Do not destroy contents of the BX parameter when calling a procvar by ref with a base.
git-svn-id: trunk@46559 -
2020-08-22 23:06:55 +00:00
yury
eee67af684 * 8086: Fixed using far procvars in a near code memory model and vice versa.
git-svn-id: trunk@46558 -
2020-08-22 22:17:03 +00:00
yury
6a3971c9b6 * 8086: If a far procvar is called, it must be in a memory location. This fixes a hack to emulate CALL reg1:reg2.
git-svn-id: trunk@46557 -
2020-08-22 22:12:40 +00:00
florian
a45f71d0dc * Xtensa: optimize some shifts by constants
git-svn-id: trunk@46556 -
2020-08-22 21:28:08 +00:00
yury
4dcdaa259a * 8086: Use CX as a scratch register instead of BX.
git-svn-id: trunk@46554 -
2020-08-22 20:50:02 +00:00
yury
8cc5842317 * Use TExternalAssembler.WriteComments() also by nasm and intel assembler writers.
git-svn-id: trunk@46553 -
2020-08-22 20:47:54 +00:00
florian
832c3d89c8 * Xtensa: disable simple random again, committed by accident
git-svn-id: trunk@46552 -
2020-08-22 20:36:26 +00:00
florian
04846345b2 * Xtensa: more fixes to tcg64fxtensa.a_op64_const_reg_reg and tcg64fxtensa.a_op64_reg_reg_reg
git-svn-id: trunk@46551 -
2020-08-22 20:33:30 +00:00
yury
6e777d8967 * ait_comment,ait_regalloc,ait_tempalloc,ait_varloc instructions produce only comments in the external assembler output. Moved handling of these instructions to TExternalAssembler.WriteComments().
This eliminates code duplication and improves maintainability.

git-svn-id: trunk@46550 -
2020-08-22 19:53:39 +00:00
florian
26e2759c27 * Xtensa: fixed tcg64fxtensa.a_op64_reg_reg_reg for unsigned operations
git-svn-id: trunk@46549 -
2020-08-22 19:38:10 +00:00
florian
eaa7d95a9d + Xtensa: implemented TCPUAddNode.second_cmp64bit properly
git-svn-id: trunk@46548 -
2020-08-22 19:38:09 +00:00
florian
15fe9f1047 * cosmetics
git-svn-id: trunk@46547 -
2020-08-22 19:38:08 +00:00
florian
e81920af7b * made test more usefull
git-svn-id: trunk@46546 -
2020-08-22 19:38:07 +00:00
florian
6f222e276e * Xtensa: make use of divide extension if available
git-svn-id: trunk@46545 -
2020-08-22 18:00:25 +00:00
florian
31cb670b20 + Xtensa: make use of muluh/mulsh instructions
git-svn-id: trunk@46544 -
2020-08-22 17:21:36 +00:00
svenbarth
11b601d44c * TThread.Terminate does not have any platform specific behavior (it should only set FTerminated to true and call TerminatedSet), thus move it to the platform independant part
Notes:
- Netware had a ThreadSwitch in there, but that is not really required
- some platform were missing the setting of FTerminated to True, thus they'll now do that as well

git-svn-id: trunk@46543 -
2020-08-22 15:56:13 +00:00
svenbarth
c2c7ac634a * fix for Mantis #37616: apply patch by Kai Burghardt to complain about the correct type used by setjmp/longjmp
git-svn-id: trunk@46542 -
2020-08-22 13:33:53 +00:00
yury
5ec489c018 * ait_varloc instructions are handled and removed by Trgobj.translate_registers() and never left for an assembler.
git-svn-id: trunk@46541 -
2020-08-22 10:58:21 +00:00