florian
a849e51a3c
+ m68k: JSR, RTS to JMP optimization
...
git-svn-id: trunk@47740 -
2020-12-09 20:57:06 +00:00
Mattias Gaertner
5682783489
fcl-passrc: clean up
...
git-svn-id: trunk@47739 -
2020-12-09 20:51:20 +00:00
Mattias Gaertner
7540f10aa6
pastojs: shortrefglobals: enumvalue
...
git-svn-id: trunk@47738 -
2020-12-09 20:47:19 +00:00
pierre
a0e96fd551
Fix pos field closing in XML node output after commit 47720
...
git-svn-id: trunk@47737 -
2020-12-09 12:36:46 +00:00
michael
3a952d9346
* Fix from Pascal Riekenberg
...
git-svn-id: trunk@47736 -
2020-12-09 10:55:09 +00:00
michael
97341c24fb
* Actually allow multilinestrings
...
git-svn-id: trunk@47734 -
2020-12-09 09:12:21 +00:00
michael
9766bd6533
* Small fix, refactoring broke linefeed
...
git-svn-id: trunk@47733 -
2020-12-09 09:11:38 +00:00
michael
63a21876c8
* Fix compilation
...
git-svn-id: trunk@47732 -
2020-12-09 08:54:55 +00:00
michael
9e238f4724
* Multiline strings and INCLUDESTRING(FILE)
...
git-svn-id: trunk@47731 -
2020-12-09 01:09:21 +00:00
florian
3707cb4b1e
* handle min/max properly if it is applied to NaNs
...
* test extended
git-svn-id: trunk@47729 -
2020-12-08 20:41:58 +00:00
michael
8fd3beb35b
* Fix compilation
...
git-svn-id: trunk@47728 -
2020-12-08 20:35:41 +00:00
michael
b27054e170
* Parse Apple universal interfaces
...
git-svn-id: trunk@47724 -
2020-12-08 16:25:50 +00:00
Mattias Gaertner
2421d6ab15
fcl-passrc: useanalyzer: when member needs typeinfo, mark parent too
...
git-svn-id: trunk@47722 -
2020-12-08 11:52:47 +00:00
Mattias Gaertner
bc88571884
pastojs: clean up
...
git-svn-id: trunk@47721 -
2020-12-08 11:52:07 +00:00
pierre
348be7657d
Fix bug introduced in commit #47709 , by only calling node_complexity if first pass was already done (bug report 38183)
...
git-svn-id: trunk@47720 -
2020-12-08 11:28:50 +00:00
michael
9ac84262f6
* Last patch from Andrey Sobol to fix bug ID #38141
...
git-svn-id: trunk@47719 -
2020-12-08 09:49:44 +00:00
florian
674c3f04e0
+ added explanation for min/max intrinsics
...
* prepared x86 implementation for proper NaN handling
git-svn-id: trunk@47715 -
2020-12-07 21:31:07 +00:00
Mattias Gaertner
18919b774d
pastojs: fixed writing map file when OnWriteJS handler returns true
...
git-svn-id: trunk@47714 -
2020-12-07 18:49:54 +00:00
Mattias Gaertner
dbdd90a989
pastojs: on handled error set LastErrorClass empty
...
git-svn-id: trunk@47713 -
2020-12-07 17:06:58 +00:00
Mattias Gaertner
e25848ab32
pastojs: catch load file exceptions and turn into regular errors
...
git-svn-id: trunk@47712 -
2020-12-07 16:58:52 +00:00
pierre
44b325ec3e
* Initialize result out parameter by caling the constructor Init, not the method Reset.
...
This out parameter called 'result' is of type tcgpara, which is an object, but not a class,
it has no virtual method, which means that the VMT is never used, and thus the
fact that the object is not 'constructed' can be easily missed.
Nevertheless, it could generate problems as the different fields have unassigned
and thus random value, while reset method can dereference location field
if not nil.
Issue found by using -gttt compiler option.
git-svn-id: trunk@47711 -
2020-12-07 16:35:46 +00:00
michael
9fc390877e
* Partially resolved ID 38141 : better handling of class hierarchy and cross-package links
...
git-svn-id: trunk@47710 -
2020-12-07 11:55:51 +00:00
pierre
a7232669ff
* Adapted from patch node-dump-pass-1.patch submitted by J. Gareth Moreton from bug report 38156.
...
This patch extends the DEBUG_NODE_XML debug feature by also outputting,
to the *-node-dump.xml files, the node tree as it appears after the first pass,
since it often contains many more internal nodes like temporary allocations that may need
to be evaluated for debugging and development purposes, or node-level optimisation opportunities.
git-svn-id: trunk@47709 -
2020-12-07 07:28:04 +00:00
Mattias Gaertner
54627fe1e7
pastojs: filer: restore method decl SelfArg
...
git-svn-id: trunk@47706 -
2020-12-06 22:18:05 +00:00
Mattias Gaertner
bf5a2a46de
fcl-passrc: fixed calling type helper method when unit implementation is not yet read
...
git-svn-id: trunk@47705 -
2020-12-06 22:16:55 +00:00
florian
8d238cfaa1
* limit min/max optimization to fastmath for now, as the NaN handling is not working yet
...
git-svn-id: trunk@47704 -
2020-12-06 20:22:39 +00:00
marco
36eaa6c9ae
* tried to apply patch of mantis #38169 in a more minimal way and fixing some of the omissions.
...
git-svn-id: trunk@47703 -
2020-12-06 20:17:48 +00:00
florian
d49453edba
* quick fix for llvm compilation
...
git-svn-id: trunk@47702 -
2020-12-06 19:31:03 +00:00
florian
1a9678f4c4
+ min/max support for x86
...
git-svn-id: trunk@47701 -
2020-12-06 18:09:30 +00:00
florian
c0d75c1c69
* patch Christo Crause: Use LDS for 8 bit references, resolves #38173
...
git-svn-id: trunk@47700 -
2020-12-06 16:40:30 +00:00
florian
4f3271500a
* (modified) patch by Christo Crause: ESP8266 doesn't support min/max instructions, resolves #38175
...
git-svn-id: trunk@47699 -
2020-12-06 16:37:54 +00:00
florian
92520c423e
* x86 change information updated
...
git-svn-id: trunk@47698 -
2020-12-06 16:22:38 +00:00
florian
a16b34d951
* test for min/max intrinsics
...
git-svn-id: trunk@47697 -
2020-12-06 14:19:00 +00:00
florian
19ce665b3d
* compilation fixed
...
git-svn-id: trunk@47696 -
2020-12-06 14:18:59 +00:00
florian
7da0284bfc
+ read 64-Bit ELF executable info correctly
...
git-svn-id: trunk@47695 -
2020-12-06 10:23:18 +00:00
florian
e60a367f1b
+ project file for PowerPC64LE
...
git-svn-id: trunk@47694 -
2020-12-06 10:23:17 +00:00
florian
57dc416d96
+ replace appropriate if statements by min/max intrinsics
...
+ support min/max intrinsic on xtensa
git-svn-id: trunk@47693 -
2020-12-05 22:00:59 +00:00
florian
6e4997265c
+ min/max intrinsics for internal use by the compiler
...
git-svn-id: trunk@47692 -
2020-12-05 22:00:58 +00:00
florian
28d248c9d4
* cleanup merge overlefts
...
git-svn-id: trunk@47691 -
2020-12-05 22:00:57 +00:00
pierre
19d5e43615
Avoid internalerror in RemoveCurrentP for arm compiler
...
git-svn-id: trunk@47690 -
2020-12-05 21:23:09 +00:00
pierre
0189276a12
Raise internalerror inside RemoveCurentP is called with p=hp1, because it leads to using a class instance after it has been freed
...
git-svn-id: trunk@47689 -
2020-12-05 21:22:18 +00:00
florian
4f3a21eeec
* don't do x*x -> optimziation for xtensa as it causes a recursive call in sqr(...)
...
git-svn-id: trunk@47688 -
2020-12-04 22:43:55 +00:00
svenbarth
deaff6f7fe
* fix for Mantis #38151 : when a Variant is passed by reference to a IDispatch property then invoke it using DISPATCH_PROPERTYPUTREF instead of DISPATCH_PROPERTYPUT
...
+ added test
git-svn-id: trunk@47687 -
2020-12-04 22:07:39 +00:00
svenbarth
69e6f3dcbb
* if a call inside a generic's code that involves generic type arguments can't be clearly determined then postpone it till specialization in the hope that the type will be clear then
...
+ added test
git-svn-id: trunk@47686 -
2020-12-04 22:07:34 +00:00
Mattias Gaertner
0be298802b
pastojs: filer: record values
...
git-svn-id: trunk@47684 -
2020-12-04 13:54:29 +00:00
yury
d72566169e
* The code generator of the exit statement must set the fc_gotolabel flag in flowcontrol for inlined routines/code blocks. It fixes the incorrect assumption that such exit statements terminate the main routine.
...
git-svn-id: trunk@47683 -
2020-12-04 12:33:47 +00:00
Mattias Gaertner
d1cfb15a2a
pastojs: filer: fixed checking signature in interface used unit referenced by implementation and needing indirect implementation unit
...
git-svn-id: trunk@47682 -
2020-12-04 11:06:42 +00:00
florian
9c6bdcfbb7
* fix in r47632 should be enabled for all targets as it is a stack tainting
...
parameter
git-svn-id: trunk@47680 -
2020-12-03 21:22:07 +00:00
Mattias Gaertner
b90504a458
pastojs: filer skip not fully specialized
...
git-svn-id: trunk@47679 -
2020-12-03 20:53:13 +00:00
Mattias Gaertner
988b67ae71
pastojs: filer: fixed specialize A<B<C>>
...
git-svn-id: trunk@47677 -
2020-12-03 16:20:21 +00:00