marcus
328772cc46
AROS: return code and comments in startupcode
...
git-svn-id: trunk@34827 -
2016-11-06 19:23:28 +00:00
Károly Balogh
6a856f109e
m68k: made setjmp and longjmp code work when register calling convention is the default
...
git-svn-id: trunk@34826 -
2016-11-06 19:10:47 +00:00
pierre
6557ccbc84
* Separate x86 register inc files into regdatx86 target
...
+ Add regdatmips target to regenerate mips register inc files.
+ Add regdat target, analog of insdat, to generate register inc files
for all CPUs.
git-svn-id: trunk@34825 -
2016-11-06 18:12:49 +00:00
pierre
3df9ac43a5
* cpubase unit, function findreg_by_number and dwarf_reg:
...
Set subreg type to R_SUBFS for fpu register
and R_SUBD for integer register.
git-svn-id: trunk@34824 -
2016-11-06 18:04:50 +00:00
pierre
fd6d3b4971
Regenerated after change in mipsreg.dat
...
git-svn-id: trunk@34823 -
2016-11-06 18:01:52 +00:00
pierre
f870b0f8fc
Fix stabs number for FPU register, which start at 38 instead of 32
...
git-svn-id: trunk@34822 -
2016-11-06 18:01:08 +00:00
Károly Balogh
4ee4099fca
m68k: introduce a register calling convention, inspired by VBCC. volatile registers are used to pass arguments
...
git-svn-id: trunk@34821 -
2016-11-06 18:00:29 +00:00
marcus
f8a7708741
AROS: startupcode for arm-aros
...
git-svn-id: trunk@34820 -
2016-11-06 17:32:40 +00:00
michael
01550dd625
* Solution for solidus character, bug ID #30870
...
git-svn-id: trunk@34819 -
2016-11-06 17:27:36 +00:00
michael
5693bbf9ad
* Remove unused unit from uses clause
...
git-svn-id: trunk@34818 -
2016-11-06 17:26:56 +00:00
michael
9926d37dda
* Fix bug #30869 , introduce CheckIndex in TStringList
...
git-svn-id: trunk@34817 -
2016-11-06 17:04:37 +00:00
florian
a27b07b342
+ more restrictions on pred/succ to dec/inc optimization
...
o check if the argument can be used as a call by reference parameter
o check if the argument has no side-effects
+ tests
git-svn-id: trunk@34816 -
2016-11-06 16:36:02 +00:00
Károly Balogh
a02ac161d6
aros: enable arosunits on ARM
...
git-svn-id: trunk@34815 -
2016-11-06 16:10:46 +00:00
Károly Balogh
ee3274166f
fpmkunit: enable AROS on arm
...
git-svn-id: trunk@34814 -
2016-11-06 15:41:27 +00:00
florian
a705525e9b
* allow prec/succ on non-consecutive enums if pred/succ are generated internally
...
git-svn-id: trunk@34813 -
2016-11-06 15:22:39 +00:00
florian
f4d1331bbe
* fpcmake has been updated
...
git-svn-id: trunk@34812 -
2016-11-06 15:20:55 +00:00
Károly Balogh
7c1c964c28
arm-aros: enabled basic AROS on ARM build
...
git-svn-id: trunk@34811 -
2016-11-06 14:40:02 +00:00
florian
9553e8b5a8
* fix building of ppudump
...
git-svn-id: trunk@34810 -
2016-11-06 14:35:32 +00:00
Károly Balogh
657aa06360
arm: arm-aros syscall support
...
git-svn-id: trunk@34809 -
2016-11-06 14:31:42 +00:00
pierre
89c1b68b14
* Delete regvars unit.
...
This unit was empty unless OLDREGVARS macro was set,
but this does not compile and no change has been made since 2011.
* Remove regvars from all _USES clauses.
git-svn-id: trunk@34808 -
2016-11-06 14:01:39 +00:00
Károly Balogh
ce5ff8ecd5
forgotten file, this should have been part of the previous commit
...
git-svn-id: trunk@34807 -
2016-11-06 12:44:01 +00:00
Károly Balogh
c7c37f66ed
* refactored syscall types for unified naming,first bits of ARM AROS syscall support
...
git-svn-id: trunk@34806 -
2016-11-06 12:41:56 +00:00
marcus
86940dfb32
AROS: added arm-aros target to compiler and fpcmake
...
git-svn-id: trunk@34805 -
2016-11-06 10:51:45 +00:00
michael
c822e07f91
* Some minor changes:
...
- Added some utility methods: TPDFPage.SetLineStyle, TPDFDocument.Reset
- Expose PDFTomm, PDFtoCM, PDFtoInches
git-svn-id: trunk@34804 -
2016-11-06 10:36:20 +00:00
marcus
e54fdc3853
m68k: fixed compilation without FPU after 34785
...
git-svn-id: trunk@34803 -
2016-11-06 08:42:41 +00:00
florian
0bc1e7e23b
* "inherit" the nf_internal flag in tinlinenode.getaddsub_for_incdec
...
git-svn-id: trunk@34802 -
2016-11-05 23:06:06 +00:00
florian
4242949453
* write more information into the interference graph
...
git-svn-id: trunk@34801 -
2016-11-05 23:06:04 +00:00
florian
ef81009362
* set nf_internal for nodes being generated by constant folding
...
git-svn-id: trunk@34800 -
2016-11-05 23:06:03 +00:00
florian
834d58f54c
* better execution weighting for while loops: the condition must be evaluated with an increased execution weight as well
...
* ensure that the weight is always increased
git-svn-id: trunk@34799 -
2016-11-05 23:06:01 +00:00
florian
64e2c2b914
+ simplify succ/pred(<const>/x+/-x<const>)
...
git-svn-id: trunk@34798 -
2016-11-05 23:06:00 +00:00
florian
4862e64b53
* type conversions of constants require that unneeded bits are cut off
...
git-svn-id: trunk@34797 -
2016-11-05 23:05:58 +00:00
florian
96858dd64d
+ additional tests which ensure that constant propagation is off
...
as the compiler optimizes the original tests too much with constant propagation
to keep them useful
git-svn-id: trunk@34796 -
2016-11-05 23:05:57 +00:00
florian
8471e02e40
* call simplify after typechecking for nodes
...
git-svn-id: trunk@34795 -
2016-11-05 23:05:54 +00:00
florian
6b84a1e1b8
+ do constant propagation into arguments of inline nodes if possible
...
+ do constant propagation into inc/dec nodes, if the node being identified as constant, is inc'ed/dec'ed
git-svn-id: trunk@34794 -
2016-11-05 23:05:53 +00:00
florian
000cffa8e3
* make more use of nf_internal to avoid range check errors
...
git-svn-id: trunk@34793 -
2016-11-05 23:05:51 +00:00
florian
e4d60b2048
* factored out tinlinenode.getaddsub_for_incdec from first_IncDec so it can be used independently
...
* get varstate right of inc/dec nodes which are converted into add/sub nodes
git-svn-id: trunk@34792 -
2016-11-05 23:05:49 +00:00
florian
509f6839fe
+ replace i:=succ/pred(i) by inc/dec(i)
...
git-svn-id: trunk@34791 -
2016-11-05 23:05:48 +00:00
florian
8bbd2e4030
+ test for issue #27744
...
git-svn-id: trunk@34790 -
2016-11-05 23:05:46 +00:00
florian
5df9b994d1
* fix warnings which were caused by last changes to for node generation
...
git-svn-id: trunk@34789 -
2016-11-05 23:05:44 +00:00
florian
0610187878
+ transform for loop into equivalent while loop during pass 1 to simplify code generation
...
git-svn-id: trunk@34788 -
2016-11-05 23:05:43 +00:00
florian
82e6e1eb34
+ tempinfo flag ti_no_final_regsync which prevents that the final reg. sync. is emitted
...
git-svn-id: trunk@34787 -
2016-11-05 23:05:41 +00:00
florian
8c701eaa7b
* reset c in dir_include if it will be re-read
...
git-svn-id: trunk@34786 -
2016-11-05 23:05:39 +00:00
Károly Balogh
7293bb7fdb
m68k: reworked setjmp/longjmp to also save the FPU registers (when compiled with HW FPU support), and to only save the nonvolatile registers
...
git-svn-id: trunk@34785 -
2016-11-05 22:02:50 +00:00
Károly Balogh
37f43d3604
m68k: cleanup of the BuildRefExpression method in the assembler reader
...
git-svn-id: trunk@34784 -
2016-11-05 19:58:06 +00:00
Károly Balogh
64650261d1
m68k: refactor of the reglist and the regpair support in the assembler reader. also added support for float register lists for FMOVEM
...
git-svn-id: trunk@34783 -
2016-11-05 18:53:20 +00:00
Károly Balogh
5237a4d5e2
m68k: support register pair operands in assembler reader and writer, as used by some instructions (mainly DIVS/DIVU and friends) so we don't have to hack them as three operand instructions
...
git-svn-id: trunk@34782 -
2016-11-05 17:07:18 +00:00
michael
8833a6fbba
* Patch from Graeme Geldenhuys to add rotation support
...
git-svn-id: trunk@34781 -
2016-11-04 19:59:28 +00:00
michael
2a39d8c9b7
* Added DefaultUnitOfMeasure
...
git-svn-id: trunk@34780 -
2016-11-03 19:55:15 +00:00
michael
9992d4b118
* SaveToStream and introduced published section
...
git-svn-id: trunk@34779 -
2016-11-03 19:21:39 +00:00
michael
a125d06c07
* Patches from Graeme Geldenhuys:
...
* Added some primitives:
DrawPolygon (= Polyline with closing path)
ClosePathStroke
FillStrokePath
FillEvenOddStrokePath
* Origin by default now at the bottom of the page.
git-svn-id: trunk@34778 -
2016-11-03 08:39:26 +00:00