Jeppe Johansen
a7d3d2d298
Fixed internal error in case inline assembler constants are used.
...
git-svn-id: trunk@37859 -
2017-12-29 11:50:36 +00:00
Jeppe Johansen
4a169e6b1a
Changed subarch of at90pwm161
...
git-svn-id: trunk@37858 -
2017-12-29 11:30:35 +00:00
florian
5e9ae7f062
* update of german message files by Karl-Michael Schindler, second try, resolves #31921
...
git-svn-id: trunk@37843 -
2017-12-28 14:59:08 +00:00
florian
94de872927
* fix compilation for llvm as proposed by Karl-Michael Schindler, resolves #31969
...
git-svn-id: trunk@37842 -
2017-12-28 14:57:35 +00:00
florian
cd9e18fab4
* made lazarus project names more systematic
...
git-svn-id: trunk@37841 -
2017-12-28 14:34:04 +00:00
florian
3dd488114b
* project name fixed
...
git-svn-id: trunk@37840 -
2017-12-28 14:25:36 +00:00
florian
9a860db7df
+ lazarus project for ppcx86_64llvm
...
git-svn-id: trunk@37839 -
2017-12-28 14:23:55 +00:00
florian
0f51cf8546
* avr: correctly write references to nil, resolves #32821
...
git-svn-id: trunk@37838 -
2017-12-28 10:32:16 +00:00
florian
5bedaf11f4
* fpcmake.inc and Makefiles renerated after last commit
...
git-svn-id: trunk@37834 -
2017-12-27 15:08:18 +00:00
Károly Balogh
ad1742373a
atari: remove -sd vlink option. this stops the linker from merging the bss segment into the data segment shaving off about 8K from the Hello, world! size. the data segment is merged into a single one on atari anyway, so this argument is not needed
...
git-svn-id: trunk@37826 -
2017-12-27 01:01:41 +00:00
florian
8df58981cf
* update of german message files by Karl-Michael Schindler, resolves #31921
...
git-svn-id: trunk@37811 -
2017-12-25 23:01:32 +00:00
nickysn
65c2575883
+ added win16stub const array (small dos exe, which prints 'This program
...
requires Microsoft Windows.'). Will be used by the future win16 internal
linker.
git-svn-id: trunk@37775 -
2017-12-21 15:00:43 +00:00
nickysn
125360ca16
* fixed the amount of bytes in the 'data' section, reported by the compiler,
...
when compiling an msdos executable in the huge memory model with the internal
linker (previously it would always print "0 bytes data" in the huge memory
model)
git-svn-id: trunk@37771 -
2017-12-20 17:55:03 +00:00
pierre
5780c608be
Also generate FPC_HAS_FEATURE_XXX macros for programs, libraries and packages
...
git-svn-id: trunk@37732 -
2017-12-14 22:53:32 +00:00
nickysn
0119e7afb3
* changed the codepointer type in the i8086 small and compact memory models from
...
nearpointer to nearcspointer
git-svn-id: trunk@37730 -
2017-12-14 17:36:15 +00:00
nickysn
ae52295232
* fixes for Seg(proc) for i8086
...
git-svn-id: trunk@37727 -
2017-12-13 16:56:01 +00:00
svenbarth
0bf71958f2
* ensure that the correct RTTI data is written for "array of const" parameters as well
...
git-svn-id: trunk@37725 -
2017-12-12 19:55:24 +00:00
svenbarth
916ff0b92c
+ extend Concat() with support for dynamic arrays
...
+ added test
git-svn-id: trunk@37723 -
2017-12-12 19:54:08 +00:00
nickysn
8d18dafe34
* in the i8086 load node, when generating static/global var access to variables
...
in the default data segment, set their treference.segment to NR_DS, in order
to avoid creating redundant segment relocations to the default data segment
(which is a problem with win16 multiple instance applications). Redundant
segment overrides are stripped later anyway, so it doesn't hurt the generated
code.
git-svn-id: trunk@37715 -
2017-12-11 20:06:42 +00:00
nickysn
04f0029b77
- don't generate addr_seg relocations for the Seg() directive on i8086, if the
...
load node didn't fill the segment value in the treference record; instead,
just use the default segment for the reference
git-svn-id: trunk@37713 -
2017-12-11 17:18:07 +00:00
nickysn
ed4a5acb31
+ added -Twin16 (the 16-bit windows target) to the i8086 crosscompiler help screen
...
git-svn-id: trunk@37710 -
2017-12-11 14:11:25 +00:00
florian
b41cb26727
+ write selected features in ppu of the system unit and load them further on
...
* ppu version update
* -Sf might be used only during system unit compilation
* loadsystemunit factored out so the system unit can be loaded earlier than other units to get features set
git-svn-id: trunk@37708 -
2017-12-10 16:32:56 +00:00
Károly Balogh
0d15323c29
also add solaris-sparc64 to ppudump, fix build breakage after r37701
...
git-svn-id: trunk@37702 -
2017-12-08 17:16:32 +00:00
pierre
ce13d8a698
Fix fullcycle on x86_64-solaris machine by adding system_sparc64_solaris system constant
...
git-svn-id: trunk@37701 -
2017-12-08 16:53:37 +00:00
pierre
901f7ba81c
handle system_i386_netbsd for default_target_set
...
git-svn-id: trunk@37695 -
2017-12-07 16:27:26 +00:00
nickysn
1c8b607d92
- disable threading on win16
...
git-svn-id: trunk@37669 -
2017-12-03 15:37:50 +00:00
nickysn
ef6cc202cd
* corrected check for f_variants, introduced in r37660 (it was incorrectly
...
checking for f_threading instead)
git-svn-id: trunk@37668 -
2017-12-03 15:20:45 +00:00
florian
0b10193660
* use dwarf-3 for avr-embedded by default as it makes the size of DW_FORM_ref_addr target indepented
...
git-svn-id: trunk@37661 -
2017-12-02 17:37:11 +00:00
florian
0725bfcdf0
* do not generate references to the variant type, if the variants feature is not available
...
git-svn-id: trunk@37660 -
2017-12-02 17:16:32 +00:00
nickysn
7763942907
* fixed the 'Unsupported fixup location type' error messages in the MZ internal
...
linker
git-svn-id: trunk@37631 -
2017-11-28 02:29:28 +00:00
nickysn
b571f48735
* fixed the return type of FarAddr(), so that it is assignment compatible to
...
typed far pointers as well
git-svn-id: trunk@37629 -
2017-11-27 19:42:36 +00:00
nickysn
78e0f6c68b
+ added an i8086-specific FarAddr() function, similar to Addr(), but always
...
returns a far pointer, regardless of the current memory model
git-svn-id: trunk@37628 -
2017-11-27 16:41:48 +00:00
florian
46ab35edb3
* apply MovOpMov2Op also to inc and dec
...
* made core more readable
git-svn-id: trunk@37624 -
2017-11-26 15:28:44 +00:00
florian
2be94d3c78
* fix building on win64 with FPC_SOFT_FPUX80 defined, resolves #32502
...
git-svn-id: trunk@37621 -
2017-11-26 15:16:37 +00:00
nickysn
c464f7fa56
* fixed the SEG inline asm directive when used with 32-bit registers on the i8086 target
...
git-svn-id: trunk@37613 -
2017-11-22 15:04:30 +00:00
pierre
c63981e5b5
Fix msdos failure due to copy/paste error in previous commit
...
git-svn-id: trunk@37611 -
2017-11-20 21:45:29 +00:00
florian
cb087279d6
* do not generate an andi if the constant is 255
...
git-svn-id: trunk@37608 -
2017-11-19 18:05:21 +00:00
florian
366360d36c
* LdiMov/Cp2Ldi/Cpi may not be performed if reg0=reg1
...
* cleanup of MovOp2Op
* fixed MovMov2Mov
git-svn-id: trunk@37607 -
2017-11-19 18:05:19 +00:00
florian
010a6f5016
+ shift by 8 and 16 on 8 and 16 bit cpus by simple register moves
...
git-svn-id: trunk@37606 -
2017-11-19 18:05:18 +00:00
florian
ad01f059e8
* after a LdiMov/Cp2Ldi/Cpi optimization, the compiler should not continue to optimize this instruction because then reg. alloc info is wrong
...
git-svn-id: trunk@37604 -
2017-11-19 18:05:14 +00:00
nickysn
4fc2fa7899
* alloc/dealloc NR_DEFAULTFLAGS in the a_cmp_* methods in the i8086 code
...
generator
git-svn-id: trunk@37601 -
2017-11-17 19:28:37 +00:00
Károly Balogh
4b113579a5
some tabs to spaces indentation cleanup. no functional change
...
git-svn-id: trunk@37599 -
2017-11-17 11:31:49 +00:00
Károly Balogh
e6aed467b5
renamed script unit to cscript to avoid namespace conflict with univint package on Darwin. this makes it possible to build the textmode IDE on Darwin
...
git-svn-id: trunk@37598 -
2017-11-17 11:27:19 +00:00
florian
7fa9d267e3
* correctly set cpu defines after r37582, even if architecture and cpu type defines are equal (like CPUMIPS32), resolves #32687
...
git-svn-id: trunk@37590 -
2017-11-13 21:13:53 +00:00
florian
f22a6629c1
* set types correctly for char -> shortstring conversions, resolves #32686
...
git-svn-id: trunk@37585 -
2017-11-12 22:14:23 +00:00
florian
826f208e45
* define CPU and FPU type macros before the second parsing of the parameters so they can be used in config files
...
git-svn-id: trunk@37582 -
2017-11-12 22:14:18 +00:00
florian
674398c5a5
* i8086 compilation fixed after r37572
...
git-svn-id: trunk@37573 -
2017-11-11 13:25:02 +00:00
florian
73fda1ccb6
* factored out OptPass1Sub
...
+ make use of OptPass1Sub on x86_64 and i8086 as well
git-svn-id: trunk@37572 -
2017-11-10 20:55:22 +00:00
nickysn
ae92973196
+ added support for the retw, retnw, retfw, retd, retnd, retfd, retq, retnq and
...
retfq x86 instructions. These are variants of the ret instruction with the
return offset size set explicitly, e.g. retfw is a 16-bit far ret (i.e. pops
a 16-bit offset and a 16-bit segment), retfd is a 32-bit far ret (pops a
32-bit offset, followed by a 16-bit segment), etc.
git-svn-id: trunk@37571 -
2017-11-10 16:53:29 +00:00
pierre
ba3afefa4c
Regenerate register include files after commit 37564: Fix value of NR_DR6 and NR_DR7
...
git-svn-id: trunk@37565 -
2017-11-07 07:30:42 +00:00