Commit Graph

55612 Commits

Author SHA1 Message Date
Jonas Maebe
ac883969a9 * synchronised with trunk till r41423
git-svn-id: branches/debug_eh@41424 -
2019-02-23 17:08:03 +00:00
Jonas Maebe
5cb5b10f8d * fixed LLVM and non-i386 compilation
git-svn-id: branches/debug_eh@41423 -
2019-02-23 17:03:42 +00:00
Jonas Maebe
ba22fe74c7 * don't corrupt the assembler reader mode on i386 and i8086 if the syntax
mode is set to something else but Delphi on the command line

git-svn-id: trunk@41422 -
2019-02-23 16:03:25 +00:00
Jonas Maebe
4e5f48a25e * add support for HFA parameter passing for ARM hardfloat
(fixes test/cg/tcalext6)

git-svn-id: trunk@41421 -
2019-02-23 15:42:48 +00:00
Jonas Maebe
8b9e90dc7a * keep track of whether a routine has a C-style variadic parameter in the
procoptions even when it's through an array-of-const parameter
  * always call create_varargs_paraloc_info() instead of create_paraloc_info()
    in the former case, even when no varargs parameters are specified (because
    on some platforms even some non-variadic parameters need to be passed
    differently, such as on ARM with gnueabihf)

git-svn-id: trunk@41420 -
2019-02-23 15:42:45 +00:00
Jonas Maebe
1a559f5c60 * move the homogenous float aggregate determination function to a common
unit for ARM and AArch64

git-svn-id: trunk@41419 -
2019-02-23 15:42:39 +00:00
pierre
54ae0f7d64 * Use DupIgnore for TBuildEngine.Clean list of files to delete
+ Generate list of remaining files and call CmdDeleteFiles

git-svn-id: trunk@41418 -
2019-02-23 15:41:44 +00:00
pierre
1a564de6e6 Add testing of use of variable of class
git-svn-id: trunk@41417 -
2019-02-23 15:37:39 +00:00
Jonas Maebe
af36913469 * don't use cg64.a_load64_loc_cgpara() for 64 bit records passed in
non-integer registers

git-svn-id: trunk@41416 -
2019-02-23 15:08:29 +00:00
joost
42204977f8 * Patch from Bart Broersma to fix writing unicode strings in the Windows
registry + test (modified, bug #35060)

git-svn-id: trunk@41415 -
2019-02-22 22:26:21 +00:00
florian
8db9b211d5 * fixed unwinding from signal handlers, the approach used now is very simple and clean
git-svn-id: branches/debug_eh@41414 -
2019-02-22 22:01:45 +00:00
florian
18fb53e012 * set cfa offset always properly
git-svn-id: branches/debug_eh@41413 -
2019-02-22 22:00:20 +00:00
yury
382d5060a0 * aarch64: According to ARM64 ABI, function's arguments and the result are not required to be sign/zero extended to a full register size. Obey this rule for all targets except iOS where sign/zero extension is required.
git-svn-id: trunk@41412 -
2019-02-22 17:59:54 +00:00
michael
e9c4042023 * Add gif to help message
git-svn-id: trunk@41411 -
2019-02-22 08:07:21 +00:00
michael
373e6a78d7 * Support reading gifs
git-svn-id: trunk@41410 -
2019-02-22 08:05:24 +00:00
michael
fe505c12a9 * Patch from Anton Kavalenka to fix gif reading (bug ID 35134)
git-svn-id: trunk@41409 -
2019-02-22 08:03:39 +00:00
florian
b9bd47ec40 * fixed tpsabiehexceptionstatehandler.handle_reraise
git-svn-id: branches/debug_eh@41408 -
2019-02-21 22:08:09 +00:00
florian
3c61bb9c5d * some safecall issues fixed
git-svn-id: branches/debug_eh@41406 -
2019-02-20 21:53:27 +00:00
yury
3a43ffd57b * arm: Include pi_needs_got to current_procinfo.flags when the GOT register is accessed. It forces proper initialization of the GOT register at the beginning of a procedure. This fixes storing of a double constant to a field in a packed record and other rare copy operations when PIC is enabled.
git-svn-id: trunk@41405 -
2019-02-20 20:06:32 +00:00
yury
3e8c7f66b7 * arm: Fixed crash while loading double constants with PIC enabled. This is the regression after r41129. The crash has occurred due to usage of a rare code path. It will be fixed in the next commit.
git-svn-id: trunk@41404 -
2019-02-20 20:00:06 +00:00
yury
ad6642edc0 * android: Fixed stdio redirection for threads.
git-svn-id: trunk@41400 -
2019-02-20 15:11:45 +00:00
yury
c0e1ec9121 * pas2jni: Fixed exception handling.
git-svn-id: trunk@41396 -
2019-02-20 13:04:49 +00:00
yury
fa4596a08f * ppudump: Fixed warnings with -O3.
git-svn-id: trunk@41394 -
2019-02-20 10:24:48 +00:00
yury
9a3ddf650c * ppudump: Use buffered write when outputting to json or xml. It improves the output speed a lot.
git-svn-id: trunk@41393 -
2019-02-20 10:13:18 +00:00
Mattias Gaertner
25cb06f021 pastojs: overflow checking for integer operators +,-,* outside nativeint
git-svn-id: trunk@41392 -
2019-02-20 09:22:40 +00:00
yury
496693d77b * pas2jni: Fixed handling of array variables.
* pas2jni: Fixed Java warning for the PascalInterface class.

git-svn-id: trunk@41391 -
2019-02-20 08:33:17 +00:00
Mattias Gaertner
de59341cb7 pastojs: fixed MinMaxSafeIntDouble for significand bits instead of explicit bits
git-svn-id: trunk@41390 -
2019-02-20 02:22:36 +00:00
Mattias Gaertner
5d62a1cfcd fcl-passrc: fixed MinMaxSafeIntDouble for significand bits instead of explicit bits
git-svn-id: trunk@41389 -
2019-02-20 02:22:27 +00:00
Mattias Gaertner
d6f5792f36 fcl-js: fixed MinMaxSafeIntDouble for significand bits instead of explicit bits
git-svn-id: trunk@41388 -
2019-02-20 02:22:12 +00:00
Mattias Gaertner
8569bd2bf6 fcl-js: write 1.20E1 as 1.2E1
git-svn-id: trunk@41387 -
2019-02-20 02:21:56 +00:00
Mattias Gaertner
8ee668ad05 pastojs: range checking for type helpers and var/out arguments
git-svn-id: trunk@41386 -
2019-02-20 00:55:53 +00:00
florian
4b66dc0a94 * few fixes to psabieh, mainly related to nested exception handling
git-svn-id: branches/debug_eh@41385 -
2019-02-19 22:20:16 +00:00
florian
f66d7d431f * ensure that the label points inside the range where the raise is located for psabieh
git-svn-id: branches/debug_eh@41384 -
2019-02-19 22:19:30 +00:00
florian
b1cc02e417 * reraise has to reset the ref. count to 0
git-svn-id: branches/debug_eh@41383 -
2019-02-19 22:17:27 +00:00
florian
a8c8cc1890 * create proper cfi, when registers are pushed
git-svn-id: branches/debug_eh@41382 -
2019-02-19 22:16:39 +00:00
florian
38be96e586 * allow pointer+ord. const always if the node is created internally
git-svn-id: branches/debug_eh@41381 -
2019-02-19 22:16:05 +00:00
Mattias Gaertner
97bbae538b fcl-passrc: parser: mode objfpc: generic function name<>...
git-svn-id: trunk@41378 -
2019-02-18 23:08:46 +00:00
florian
9e67e7311a * change the exception address is only useful if a valid frame is passed
git-svn-id: branches/debug_eh@41377 -
2019-02-18 22:04:08 +00:00
florian
a24d75ed3d + comment explaining previous change
git-svn-id: branches/debug_eh@41376 -
2019-02-18 22:03:29 +00:00
florian
502febc968 * resume needs to be surrounded by an empty landing pad
git-svn-id: branches/debug_eh@41375 -
2019-02-18 21:46:55 +00:00
yury
f7f1286e51 * pas2jni: Return null if a method pointer is empty.
git-svn-id: trunk@41374 -
2019-02-18 16:31:04 +00:00
yury
6d95018c80 * pas2jni: Properly handle Java exceptions when calling a callback Java method.
git-svn-id: trunk@41371 -
2019-02-18 10:19:20 +00:00
florian
0e25d6f00d * better debug messages
+ initial approach to handle addr and frame

git-svn-id: branches/debug_eh@41368 -
2019-02-17 21:45:18 +00:00
florian
9514bd9162 * refactored psabieh handling, most code is now in psabiehpi
git-svn-id: branches/debug_eh@41367 -
2019-02-17 21:20:40 +00:00
florian
c0c14d5362 * building on PowerPC fixed
git-svn-id: branches/debug_eh@41366 -
2019-02-17 21:14:27 +00:00
Mattias Gaertner
d0c9392d5e pastojs: clean up
git-svn-id: trunk@41365 -
2019-02-17 20:48:54 +00:00
Mattias Gaertner
4282b61e9f fcl-js: clean up
git-svn-id: trunk@41364 -
2019-02-17 20:48:43 +00:00
Mattias Gaertner
0b0ecc0647 pas2js: fixed rtl.freeLoc to return null if already null
git-svn-id: trunk@41362 -
2019-02-17 20:44:47 +00:00
Mattias Gaertner
d4a5f7e2e1 pas2js: docs
git-svn-id: trunk@41361 -
2019-02-17 20:44:19 +00:00
Mattias Gaertner
1a977e8efd pastojs: implemented class constructors
git-svn-id: trunk@41360 -
2019-02-17 20:43:58 +00:00