nickysn
f0edd62b88
+ Z80: report flags register information in TCpuAsmOptimizer.RegLoadedWithNewValue for 16-bit ADD,ADC,SBC,INC and DEC
...
git-svn-id: trunk@45373 -
2020-05-16 00:03:54 +00:00
florian
b239365479
* improved LeaLea2Lea
...
git-svn-id: trunk@45372 -
2020-05-15 21:25:30 +00:00
marcus
252a329100
Amiga, MorphOS: fixed Syscall offset for AddAppWindowA
...
git-svn-id: trunk@45371 -
2020-05-15 16:51:49 +00:00
svenbarth
f0e8d5dfa6
* fix for Mantis #37043 : apply patch by Bi0T1N (including test) to add additional overloads for IntToHex including a rerouting of the ordinal helpers' ToHexString to use these overloads
...
git-svn-id: trunk@45370 -
2020-05-15 15:14:19 +00:00
Mattias Gaertner
0548ac5549
pas2js: split ReadElement, add to parent before reading resolver data
...
git-svn-id: trunk@45369 -
2020-05-15 13:13:05 +00:00
michael
08cb5b7665
* Max len 3 per number in dotted quad
...
git-svn-id: trunk@45368 -
2020-05-15 11:23:14 +00:00
michael
a0c403f445
* Fix bug ID #37080 : too permissive val() on supplied quads
...
git-svn-id: trunk@45367 -
2020-05-15 10:47:48 +00:00
nickysn
37b607143a
+ handle the flags register bits for many Z80 instructions in TCpuAsmOptimizer.RegLoadedWithNewValue
...
git-svn-id: trunk@45366 -
2020-05-14 22:44:48 +00:00
florian
4559620efa
* patch by Reynaldo to generate kernel image for the raspi2 embedded port, resolves #27052
...
git-svn-id: trunk@45365 -
2020-05-14 21:16:12 +00:00
Károly Balogh
1df56495b7
* fix a typo in a comment. no functional change
...
git-svn-id: trunk@45364 -
2020-05-14 15:23:27 +00:00
michael
032f3aa11a
* Fix visibility warning
...
git-svn-id: trunk@45363 -
2020-05-14 09:31:05 +00:00
michael
b2abcba6d9
* Generic list mode, allow use of record instead of class
...
git-svn-id: trunk@45362 -
2020-05-14 09:29:36 +00:00
Jonas Maebe
a2174753c1
- removed tabstractrecorddef.get_unit_symtable, which did not always return the unit
...
symtable (when you had a local recorddef in a procdef)
* modified tdef.get_top_level_symtable() so you can specify whether you want to
skip procdefs or not
* changed tobjectdef.vmt_def() to no longer require a typesym for the tobjectdef
(based on patch by Blaise)
git-svn-id: trunk@45361 -
2020-05-13 21:46:29 +00:00
florian
7a60e044e3
* simplify constant expressions after re-ordering, resolves #37062
...
git-svn-id: trunk@45360 -
2020-05-13 20:26:04 +00:00
michael
84bffbe75e
* Fix bug #37064 : missing stdcall calling convention modifier
...
git-svn-id: trunk@45359 -
2020-05-13 19:20:34 +00:00
pierre
a414997a84
Use 0 instead of 0xffffffff to disable page width
...
git-svn-id: trunk@45358 -
2020-05-13 16:20:48 +00:00
pierre
db0f0be3ba
Use 0 instead of 0xffffffff to disable page width
...
git-svn-id: trunk@45357 -
2020-05-13 15:03:35 +00:00
pierre
c77ef7d6dd
Regenerate all Makefile's after change in utils/fpcm/fpcmake.ini to better support use of i386 compiler on x86_64 machines
...
git-svn-id: trunk@45356 -
2020-05-13 13:53:15 +00:00
michael
0333677ac3
* Fix from Bart Broersma, small optimization (bug ID 37061)
...
git-svn-id: trunk@45355 -
2020-05-13 10:10:02 +00:00
pierre
ae91ff00b9
Do not add -Fl$GCCLIBDIR to FPCMAKEOPT as this is now handled by fpcmake
...
git-svn-id: trunk@45354 -
2020-05-13 09:17:11 +00:00
pierre
406d17a4b6
Update fpcmake.inc and revision.inc after previous commit #45352
...
git-svn-id: trunk@45353 -
2020-05-13 09:14:42 +00:00
pierre
5ffc1b8152
Use GCCLIBDIR variable for FPCMAKEGCCLIBDIR if FPCFPMAKE has same target cpu as CPU_TARGET
...
git-svn-id: trunk@45352 -
2020-05-13 09:12:19 +00:00
pierre
3aa253c11d
Allow system unit to be compiled without RTTI feature
...
git-svn-id: trunk@45351 -
2020-05-13 09:10:23 +00:00
michael
71e322d058
* Patch from Noel Duffy to improve IPV6 address parsing (bug ID tw37013)
...
git-svn-id: trunk@45350 -
2020-05-13 07:19:03 +00:00
Mattias Gaertner
6ffba8e2b6
pas2js: filer: add specs to gen type
...
git-svn-id: trunk@45349 -
2020-05-12 21:12:14 +00:00
florian
7dbab3a78f
* handle OP_XOR for a full mm register correctly in tcgx86.opmm_loc_reg
...
git-svn-id: trunk@45348 -
2020-05-12 20:43:15 +00:00
nickysn
4beb4bf8b2
+ Z80: support the flags subregisters in the registers_interfere function
...
git-svn-id: trunk@45347 -
2020-05-12 01:58:10 +00:00
nickysn
c6c834949f
+ Z80: support all the flags subregisters in super_registers_equal
...
git-svn-id: trunk@45346 -
2020-05-12 01:47:58 +00:00
nickysn
fe12026959
+ support the LD instruction in TCpuAsmOptimizer.RegLoadedWithNewValue
...
git-svn-id: trunk@45345 -
2020-05-11 23:55:23 +00:00
nickysn
bb4d7a7a50
+ Z80: implemented TCpuAsmOptimizer.InstructionLoadsFromReg
...
git-svn-id: trunk@45344 -
2020-05-11 22:24:20 +00:00
florian
05091cf0dd
+ MovAndTest2Test optimization
...
git-svn-id: trunk@45343 -
2020-05-11 21:14:06 +00:00
nickysn
4abc498f2f
+ added the Z80 individual flag bits as subregisters
...
git-svn-id: trunk@45342 -
2020-05-11 19:17:31 +00:00
nickysn
b98cc1ebff
+ added subregisters for the Z80 flags
...
git-svn-id: trunk@45341 -
2020-05-11 18:03:29 +00:00
nickysn
1f8a9c708e
* use RegistersInterfere instead of SuperRegistersEqual in TAoptBase.RegInOp and TAoptBase.RegInRef
...
git-svn-id: trunk@45340 -
2020-05-11 17:18:00 +00:00
nickysn
531cc0ab0d
+ introduced TAOptBase.RegistersInterfere (which might not always be equivalent to SuperRegistersEqual)
...
git-svn-id: trunk@45339 -
2020-05-11 16:00:27 +00:00
nickysn
4263ff44c1
+ Z80: added a registers_interfere helper function
...
git-svn-id: trunk@45338 -
2020-05-11 15:29:42 +00:00
nickysn
5947adcd7b
+ added a correct implementation of TAOptBase.SuperRegistersEqual for the Z80
...
git-svn-id: trunk@45337 -
2020-05-11 14:21:26 +00:00
michael
50261464da
* Patch from N. Neumann, implement some delphi compatible StrToUint functions (bug id 37049)
...
git-svn-id: trunk@45336 -
2020-05-11 13:14:47 +00:00
Mattias Gaertner
4afe1de02f
pas2js: fixed arrayRef
...
git-svn-id: trunk@45335 -
2020-05-11 10:59:30 +00:00
michael
4fed12553a
* Fix bug id #0037048 (wrong count sometimes), upstream fix
...
git-svn-id: trunk@45334 -
2020-05-11 07:13:04 +00:00
nickysn
06a728df24
+ added the alternate Z80 register pairs BC', DE' and HL'
...
git-svn-id: trunk@45333 -
2020-05-11 04:23:02 +00:00
nickysn
9ce97e6ba5
+ also recognize alternate registers in the Z80 inline asm scanner. This allows
...
the "EX AF,AF'" instruction to be accepted and assembled as well.
git-svn-id: trunk@45332 -
2020-05-11 00:55:32 +00:00
nickysn
b581751ef3
- cleaned up some x86-specific code from the Z80 inline asm reader
...
git-svn-id: trunk@45331 -
2020-05-11 00:46:24 +00:00
svenbarth
0fbd418cb7
* generate CFI data only if we're either using it for exception handling or if debug output is enabled (or should this only be generated for targets that in theory support DWARF exception handling?). This removes unnecessary bloat from e.g. Windows binaries
...
git-svn-id: trunk@45330 -
2020-05-10 20:46:08 +00:00
svenbarth
3c79a8dd81
* GetLoadErrorStr (currently) returns a ShortString, so avoid a useless conversion to AnsiString
...
git-svn-id: trunk@45329 -
2020-05-10 20:46:04 +00:00
florian
2a2ec77b10
* improved heuristics for auto-inlining
...
git-svn-id: trunk@45328 -
2020-05-10 19:41:13 +00:00
florian
e5e386f94a
* cosmetics
...
git-svn-id: trunk@45327 -
2020-05-10 18:41:10 +00:00
florian
ebcae70d72
* avoid unncessary conversions of constants in 64 bit ints when doing constant folding
...
git-svn-id: trunk@45326 -
2020-05-10 15:25:31 +00:00
florian
7a6bd84bc0
* cast only the longint
...
git-svn-id: trunk@45325 -
2020-05-10 12:52:17 +00:00
florian
b48c8d8596
* fixed test for 32 Bit targets
...
git-svn-id: trunk@45324 -
2020-05-10 09:04:13 +00:00