Commit Graph

49611 Commits

Author SHA1 Message Date
yury
8e8521c43e * pas2jni: Fixed memory leaks when using inherited TP-style objects.
git-svn-id: trunk@34842 -
2016-11-07 21:19:17 +00:00
yury
d9e00bf43c * pas2jni: Use mswindows define instead of windows to be Delphi compatible.
git-svn-id: trunk@34841 -
2016-11-07 20:31:13 +00:00
yury
df95a73993 * pas2jni: Do not hard code record sizes in Java part. Instead get actual record sizes from the native code. It allows to use the same generated Java code for native libraries compiled for different CPU architectures.
git-svn-id: trunk@34840 -
2016-11-07 20:28:15 +00:00
marcus
f6e1411ddb Amiga: HookEntryPas to interface
git-svn-id: trunk@34839 -
2016-11-07 18:13:19 +00:00
nickysn
77dedfdcf5 - removed tai_const.create_pint and .create_pint_aligned, because they use the
pint type, which is now deprecated (as it does not always represent the
  correct pointer type in all i8086 memory models); replacements methods, which
  should be used instead are .create_sizeint, .create_int_dataptr or
  .create_int_codeptr (or their _unaligned counterparts)

git-svn-id: trunk@34838 -
2016-11-07 15:52:52 +00:00
nickysn
5bba79afb3 * use create_int_dataptr_unaligned instead of create_pint_unaligned in TDebugInfoDwarf.appendsym_absolute
git-svn-id: trunk@34837 -
2016-11-07 15:41:44 +00:00
nickysn
594290a16e + added *_unaligned counterparts to taiconst.create_[int|nil]_[code|data]ptr
git-svn-id: trunk@34836 -
2016-11-07 15:28:52 +00:00
nickysn
88ba9269ca * use .create_int_dataptr instead of .create_pint in the remaining two places where .create_pint is used
git-svn-id: trunk@34835 -
2016-11-07 15:09:07 +00:00
michael
32ec90dccf * Fix wrong index check for insert, border is different
git-svn-id: trunk@34834 -
2016-11-07 13:39:56 +00:00
pierre
e78cc24ca3 Regenerate Makefile with fpcmake
git-svn-id: trunk@34833 -
2016-11-07 12:56:52 +00:00
pierre
bbedd8ae68 Regenerate Makefile with fpcmake
git-svn-id: trunk@34832 -
2016-11-07 12:55:52 +00:00
pierre
686634d563 Regenerate Makefile with up-to-date fpcmake
git-svn-id: trunk@34831 -
2016-11-07 11:11:32 +00:00
pierre
0fe99558ef Makefile regenerated with up-to-date fpcmake after:
r34825 | pierre | 2016-11-06 19:12:49 +0100 (Sun, 06 Nov 2016) | 6 lines

  * 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@34830 -
2016-11-07 07:42:26 +00:00
Károly Balogh
f31cefd240 amunits: new HookEntryPas function, to support hooks using the Register calling convention. It is actually advised to use cdecl functions instead.
git-svn-id: trunk@34829 -
2016-11-06 23:32:19 +00:00
Károly Balogh
38837ee973 m68k: make the new register calling convention the default
git-svn-id: trunk@34828 -
2016-11-06 22:01:25 +00:00
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