pierre
ac3b9ac979
Avoid placing COMPILER_UNITTARGETDIR in the prerequisite list of assmebler files,
...
as those directories are modified by any new file in that directory, which
lead to repeated (and useless) recompilation of assembler files on linux systems.
git-svn-id: trunk@36173 -
2017-05-10 13:06:39 +00:00
Mattias Gaertner
65d14ace38
pastojs: test invalid mode and modeswitch
...
git-svn-id: trunk@36172 -
2017-05-10 09:35:38 +00:00
Mattias Gaertner
2e80006c6d
fcl-passrc: check allowed modes, fixed po_KeepScannerError
...
git-svn-id: trunk@36171 -
2017-05-10 09:35:07 +00:00
marco
324ec4af58
* another sysctl fix. Original fixes were done in the assumption that the
...
sysctl param type change was merged. It wasn't. So from specific 3.0 versions
now all versions.
git-svn-id: trunk@36170 -
2017-05-10 09:09:59 +00:00
pierre
6416864997
Revert wrong patch, which lead to an endless loop on linux systems, as directories are modified by each file additions
...
git-svn-id: trunk@36169 -
2017-05-10 08:43:58 +00:00
maciej-izak
fa75f25fac
* Enabling crosscompiling from Windows towards Darwin. Patch from Alfred (mantis 31099). Thanks! :)
...
git-svn-id: trunk@36168 -
2017-05-10 07:53:43 +00:00
pierre
e6aa46f7f9
Add explicit dependency of gparmake and createlst executables to the units/FULL_TARGET subdirectory creation to avoid errors
...
git-svn-id: trunk@36167 -
2017-05-10 06:29:18 +00:00
florian
7b658f56dc
* compilation fixed after last cleanup
...
git-svn-id: trunk@36166 -
2017-05-09 20:06:36 +00:00
florian
b1dff29cbf
* removed unused units
...
git-svn-id: trunk@36165 -
2017-05-09 19:53:14 +00:00
florian
f93b784895
* make fullcycle for i8086 fixed
...
git-svn-id: trunk@36164 -
2017-05-09 19:53:06 +00:00
marco
b837f544de
* only rtl needed fix.
...
git-svn-id: trunk@36163 -
2017-05-09 17:10:42 +00:00
marco
818a64952c
* fix bootstrapping issue on freebsd x86_64
...
git-svn-id: trunk@36162 -
2017-05-09 17:07:44 +00:00
Mattias Gaertner
141238bb90
fcl-passrc: scanner property OnDirective, resourcestrings for IFOpt
...
git-svn-id: trunk@36161 -
2017-05-09 16:27:29 +00:00
Mattias Gaertner
de2aedade2
fcl-passrc: implemented $ifopt
...
git-svn-id: trunk@36160 -
2017-05-08 21:18:15 +00:00
florian
52d3756c26
* factored out OptPass1Movx and merged i386 and x86-64 version
...
git-svn-id: trunk@36159 -
2017-05-08 20:44:27 +00:00
florian
06c4c651fd
* factored out PrePeepholeOptSxx
...
+ x86-64 uses PrePeepholeOptSxx now as well
git-svn-id: trunk@36158 -
2017-05-08 20:44:24 +00:00
svenbarth
9fc420b546
- remove unused variable
...
git-svn-id: trunk@36157 -
2017-05-08 19:54:45 +00:00
Mattias Gaertner
f643d15078
pastojs: fixed typo
...
git-svn-id: trunk@36156 -
2017-05-08 19:20:21 +00:00
Mattias Gaertner
e3f525a109
fcl-passrc: scanner: change defines when switching modeswitches
...
git-svn-id: trunk@36155 -
2017-05-08 19:20:06 +00:00
Mattias Gaertner
b687247256
fcl-passrc: scanner: added property ReadOnlyModeSwitches
...
git-svn-id: trunk@36154 -
2017-05-08 12:22:48 +00:00
nickysn
504662826a
* fixed the rtl cpu ifdefs for the rol/ror/sar cpu support check
...
git-svn-id: trunk@36153 -
2017-05-08 10:16:15 +00:00
florian
74b338266d
* ifdef cmov optimization, as i8086 has no cpu_capabilities
...
git-svn-id: trunk@36150 -
2017-05-07 16:18:44 +00:00
florian
5c2c5d72a2
* use avx for copying data only on i386 for 8 byte chunks
...
git-svn-id: trunk@36149 -
2017-05-07 16:18:42 +00:00
florian
f8d517be70
* make TX86AsmOptimizer.IsExitCode usable for x86-64 as well
...
git-svn-id: trunk@36148 -
2017-05-07 16:18:40 +00:00
florian
dd69ab5488
* cleanup after all old code from PeepHoleOptPass2 of i386 was moved to the common x86 optimizer class
...
git-svn-id: trunk@36147 -
2017-05-07 16:18:37 +00:00
florian
cd134ea5bb
+ DebugMsg
...
git-svn-id: trunk@36146 -
2017-05-07 16:18:35 +00:00
florian
4a43d992f5
* unified usage of MatchOpType
...
* fixed generic MatchOpType
git-svn-id: trunk@36145 -
2017-05-07 16:18:33 +00:00
nickysn
4a8a7c210a
* fixed test on platforms that don't have 8-bit and 16-bit rol/ror
...
git-svn-id: trunk@36144 -
2017-05-07 13:34:26 +00:00
florian
7afe762d22
* factored out OptPass2Jcc assembler optimization
...
* OptPass2Jcc now used by x86-64 as well
* remove orphaned alignments if the label is not used anymore after cmov is used
git-svn-id: trunk@36143 -
2017-05-07 12:45:48 +00:00
florian
e3f0b338d4
* SkipLabels moved to aoptutils
...
* factored out OptPass2Jmp assembler optimization
* OptPass2Jmp now used by x86-64 as well
git-svn-id: trunk@36141 -
2017-05-06 21:07:02 +00:00
Mattias Gaertner
04807d1ac4
fcl-passrc: implemented $if
...
git-svn-id: trunk@36140 -
2017-05-06 20:11:26 +00:00
marco
6ed045a911
* encoding strings now CONST, minor optimization from mantis 028117
...
git-svn-id: trunk@36139 -
2017-05-06 18:47:50 +00:00
florian
f985971a62
* apply mov reg1, mem1; cmp x, mem1 to mov reg1, mem1; cmp x, reg1 also for test
...
git-svn-id: trunk@36138 -
2017-05-06 18:47:47 +00:00
florian
c7ba611bf9
* when explicitly casting a variable, it might be sufficient if it is const_regable
...
git-svn-id: trunk@36137 -
2017-05-06 18:47:45 +00:00
florian
52d40bb25b
* spacing fixed
...
git-svn-id: trunk@36136 -
2017-05-06 18:47:43 +00:00
florian
b3f889e028
* -Ox options are incremental, so disable all optimizations first in case testing is run with -O4
...
git-svn-id: trunk@36135 -
2017-05-06 18:47:41 +00:00
pierre
ded1fb23a2
Improve stack trace output with -Cr option, contributed by Colin Western
...
git-svn-id: trunk@36134 -
2017-05-06 13:54:50 +00:00
maciej-izak
631d4a2d53
* Move global variable in_preproc_comp_expr into tscannerfile class.
...
git-svn-id: trunk@36133 -
2017-05-06 12:12:50 +00:00
Mattias Gaertner
d493980bb2
fcl-passrc: scanner: implemented macros directive
...
git-svn-id: trunk@36131 -
2017-05-06 07:41:40 +00:00
Mattias Gaertner
72bc6e2692
fcl-passrc: scanner: undefine on macros too
...
git-svn-id: trunk@36130 -
2017-05-06 07:27:33 +00:00
Mattias Gaertner
9390bfb485
fcl-passrc: reverted scanner Macros change
...
git-svn-id: trunk@36129 -
2017-05-06 07:27:03 +00:00
maciej-izak
6d1ad52dc5
* for symbols used in preprocessor expressions, we don't want to increase references count (for smaller final binaries). Partial fix for problem presented in mantis 31675. Preprocessor functions like declared() in uses section will work only for symbols declared in implicytly included modules (for example like for heaptrc by option -gh, see example/test tw31675.pp)
...
+ added tests
git-svn-id: trunk@36128 -
2017-05-05 22:27:07 +00:00
Mattias Gaertner
fef47e05e0
fcl-passrc: scanner: accelerated Macros
...
git-svn-id: trunk@36127 -
2017-05-05 22:21:18 +00:00
Mattias Gaertner
76734070c4
fcl-passrc: parser: clean up
...
git-svn-id: trunk@36126 -
2017-05-05 17:47:48 +00:00
Mattias Gaertner
a60f3b26e6
fcl-passrc: parser: fixed forbid type t=ansistring[]
...
git-svn-id: trunk@36125 -
2017-05-05 17:42:26 +00:00
nickysn
c28d533bb0
+ support the cmpsd sse instruction in the at&t inline assembly reader
...
git-svn-id: trunk@36124 -
2017-05-05 15:46:47 +00:00
pierre
65fadcaa53
Disable threading and dynlibs features for msdos OS target by default
...
git-svn-id: trunk@36123 -
2017-05-05 15:03:47 +00:00
nickysn
98d2684368
+ correctly support the sse2 version of the cmpsd x86 instruction, when writing
...
at&t style asm output
git-svn-id: trunk@36122 -
2017-05-05 15:01:38 +00:00
Mattias Gaertner
1d1c310876
fcl-passrc: IsValidIdent for fpc 3.0
...
git-svn-id: trunk@36121 -
2017-05-05 14:31:27 +00:00
pierre
eb378c1b94
Replace __tls_used for win64 by an alias of _tls_used
...
git-svn-id: trunk@36120 -
2017-05-05 14:27:04 +00:00