Commit Graph

20583 Commits

Author SHA1 Message Date
florian
5b755661d8 + patch by Simon Ameis: adds all the STM32F091* microcontroller units to the list of supported ARM MCUs, resolves issue #32484
git-svn-id: trunk@37378 -
2017-10-01 18:59:01 +00:00
florian
ce7487b7de o patch by J. Gareth "Kit" Moreton, resolves partially issue #32037
o improves readibility of TX86AsmOptimizer.OptPass1MOV and fixes some spelling mistakes
  + Optimization MovAnd2Mov 2
  + extended Optimization MovTestJxx2TestMov and MovTestJxx2ovTestJxx to take care of and as well
  + Peephole Optimization: movq x,%reg -> movd x,%reg

git-svn-id: trunk@37377 -
2017-10-01 18:40:11 +00:00
florian
198c53a908 o patch by J. Gareth "Kit" Moreton, resolves partially issue #32037
* generate instructions with shorter imm on x86-64 if possible

git-svn-id: trunk@37376 -
2017-10-01 18:40:09 +00:00
florian
75e03a7e62 * avoid unneeded the generation of un-needed shift instructions thlcgobj.in a_load_subsetreg_reg
git-svn-id: trunk@37374 -
2017-10-01 16:13:22 +00:00
florian
6f338bb4b5 + tcgsubscriptnode.pass_generate_code makes use of a_loadmm_reg_intreg to avoid location_force_mem calls
git-svn-id: trunk@37373 -
2017-10-01 16:13:20 +00:00
florian
f0c237a159 + let a_load_loc_reg handle also LOC_*MMREGISTER as we have loadmm_*intreg*
git-svn-id: trunk@37372 -
2017-10-01 16:13:18 +00:00
florian
15b617546e + call TX86AsmOptimizer.OptPass1VOP for logical operations as well
git-svn-id: trunk@37367 -
2017-10-01 14:40:21 +00:00
svenbarth
9619576515 + add support for $SetPE{OS,SubSys,User}Version directives; Delphi compatible; Note: $SetPEUserVersion takes precedence to $Version
+ added test

git-svn-id: trunk@37364 -
2017-09-30 13:55:29 +00:00
svenbarth
5c447cba50 * fix for Mantis #32476: use the correct string to check i2
git-svn-id: trunk@37361 -
2017-09-30 11:22:02 +00:00
pierre
8b63f97173 Call ungetregister for NR_D2 at m68k-palmos syscall exit
git-svn-id: trunk@37351 -
2017-09-28 14:55:41 +00:00
svenbarth
b3ee9339b8 * also report the dynamic array "overloads" for the Insert() intrinsics
git-svn-id: trunk@37343 -
2017-09-27 21:18:04 +00:00
svenbarth
c5b33f51f9 * fix for Mantis #32412: correctly handle an incorrect parameter count for Delete() and Insert() intrinsics
+ added tests

git-svn-id: trunk@37342 -
2017-09-27 21:15:00 +00:00
svenbarth
a1c910d892 * fix for Mantis #32108: ensure that types are registered once there is no more specialization is going on
git-svn-id: trunk@37341 -
2017-09-27 20:47:16 +00:00
svenbarth
b765d661ce * when registering a def also register the syms and defs of its symtables
git-svn-id: trunk@37340 -
2017-09-27 20:34:38 +00:00
svenbarth
b322339758 + extend tstoredsymtable with method register_children to register all its symbols and defs
git-svn-id: trunk@37339 -
2017-09-27 20:27:05 +00:00
svenbarth
a52b675779 * fix that *annoying* search & replace remnant of incorrect casing
git-svn-id: trunk@37334 -
2017-09-27 19:42:47 +00:00
florian
1c69ae6a15 handle correctly "reg+const" operands in avr assembler, fixes issue #32016
git-svn-id: trunk@37328 -
2017-09-26 20:14:41 +00:00
nickysn
b3f7bce3a6 * check for CPUX86_HAS_SSE2 instead of CPUX86_HAS_SSEUNIT in Tcgx86.g_concatcopy
git-svn-id: trunk@37327 -
2017-09-26 16:05:23 +00:00
nickysn
aec03309ef + added CPUX86_HAS_SSE2 to x86 tcpuflags
git-svn-id: trunk@37326 -
2017-09-26 16:02:56 +00:00
pierre
3c8d38674f Change single/double/extended-str functions to methods
* Disable asd_cpu for wasm (generates errors as it disabled the .xmm added at start)
 - Remaining problem: 'DT inf' Error: not implemented ...

git-svn-id: trunk@37325 -
2017-09-25 22:04:41 +00:00
pierre
ccd8e6a78b Partial fix for watcom wasm
git-svn-id: trunk@37323 -
2017-09-25 20:47:31 +00:00
pierre
1aa731df63 Fix Absolute var symbol address (was failing for AVR cpu)
git-svn-id: trunk@37320 -
2017-09-25 18:44:16 +00:00
Károly Balogh
333316f356 less tab more spaces. no functional change.
git-svn-id: trunk@37317 -
2017-09-25 14:52:39 +00:00
florian
9ef646e3c5 * fix avr for new GetNextReg behaviour
* some wrong GetNextReg usage in the avr code generator fixed

git-svn-id: trunk@37316 -
2017-09-24 20:51:05 +00:00
pierre
8614a38ad3 Fix cross-compiler with soft 80bit with external assembler
git-svn-id: trunk@37306 -
2017-09-23 20:52:57 +00:00
nickysn
e701fa8de1 * converted the x86 instruction flags to a set, so they can be extended more
easily and so that all the values are now available to the compiler
  (previously, there were several, which were mapped to the same value and thus
  were only used to make x86ins.dat easier to read)

git-svn-id: trunk@37299 -
2017-09-21 15:48:27 +00:00
pierre
b14feadfe1 Fix cycle failure after last commit
git-svn-id: trunk@37298 -
2017-09-21 15:47:49 +00:00
pierre
735f9363d8 Add code for writing 80-bit data with soft 80-bit extended when FPC_SOFT_FPUX80 is defined
git-svn-id: trunk@37297 -
2017-09-21 14:40:23 +00:00
pierre
59edd81a26 Disable some code using bestrealrec if macro FPC_SOFT_FPUX80 is defined
git-svn-id: trunk@37296 -
2017-09-21 14:39:14 +00:00
pierre
2a49627d48 Allow compilation of ppc386 compiler using FPC_SOFT_FPUX80, i.e. soft float 80-bit extended float
git-svn-id: trunk@37295 -
2017-09-21 14:36:48 +00:00
nickysn
ab62e2237b * mark the sldt,syscall,sysenter,sysexit,sysret,andn,bextr,rorx,sarx,shlx and
shrx instructions as protected mode only

git-svn-id: trunk@37275 -
2017-09-20 15:43:23 +00:00
pierre
ce332eb2e2 Fix failures for rtl ppudump on sparc cpu
git-svn-id: trunk@37250 -
2017-09-18 14:10:19 +00:00
pierre
91fa2999ee Add aarch64 and sparc64 linux targets to help output
git-svn-id: trunk@37249 -
2017-09-18 11:58:45 +00:00
pierre
bd428ce6ad Use getptruint for pointer type const, fixes i8086 ppudump problems
git-svn-id: trunk@37242 -
2017-09-17 20:44:08 +00:00
pierre
97241c46b2 Move getptruint/putptruint methods to tentfile class to allow use with ppudump
git-svn-id: trunk@37241 -
2017-09-17 20:41:51 +00:00
Károly Balogh
fd00920006 m68k-palmos: internal sysinit, and patch target support so it works prc-tools-remix on a modern system
git-svn-id: trunk@37230 -
2017-09-16 21:34:55 +00:00
Károly Balogh
e1501c86bf m68k: fix no FPU support
git-svn-id: trunk@37227 -
2017-09-16 18:13:57 +00:00
svenbarth
90bd408de4 * fix for Mantis #32355: adjust the meaning of the typehelpers modeswitch for Delphi modes in that it enables the "type helper" syntax as it is in the non-Delphi modes; extending primitive types with record helpers is now always enabled in Delphi modes
+ added test

git-svn-id: trunk@37225 -
2017-09-15 21:09:21 +00:00
svenbarth
83f5b27e02 * check helpertype instead of the extendeddef to judge whether inherited should be allowed or not
git-svn-id: trunk@37224 -
2017-09-15 20:52:42 +00:00
pierre
efcb10f537 Handle arm-palmos syscall modifier
git-svn-id: trunk@37223 -
2017-09-15 20:29:02 +00:00
pierre
f7fd137787 Accept syscall procedure modifier for arm-palmos
git-svn-id: trunk@37222 -
2017-09-15 20:27:57 +00:00
pierre
fee49a3e40 Disable threading feature for arm-palmos (like it is done for m68k-palmos)
git-svn-id: trunk@37221 -
2017-09-15 20:27:03 +00:00
pierre
d0f8ea7969 Add arm-palmos target to list supporting po_syscall
git-svn-id: trunk@37220 -
2017-09-15 20:25:59 +00:00
Károly Balogh
93910c60be palmos: register the linker at least, although it's probably not functional with current RTL
git-svn-id: trunk@37211 -
2017-09-15 11:33:40 +00:00
pierre
89b3f6c86a Fix the RTL directory for old OSes that use OS_TARGET only for rtlppulogs rule
git-svn-id: trunk@37210 -
2017-09-15 11:24:06 +00:00
pierre
e1dbb5edcb Fix crash for GenConstraints handling
git-svn-id: trunk@37209 -
2017-09-15 08:43:17 +00:00
pierre
8b0df68a81 Use installed ppudump instead of trying to recompile it, to be able to test cross-compiled RTL units
git-svn-id: trunk@37208 -
2017-09-14 15:57:25 +00:00
pierre
8bdd161805 Fix error for jvm compiler
git-svn-id: trunk@37207 -
2017-09-14 15:13:31 +00:00
pierre
6a09a68156 Fix failures in rtlppulogs
git-svn-id: trunk@37206 -
2017-09-14 13:41:06 +00:00
svenbarth
a6821c63e0 * store the type of the helper that had been encountered during parsing in the objectdef and by extension the PPU
git-svn-id: trunk@37202 -
2017-09-13 21:24:06 +00:00