Commit Graph

42822 Commits

Author SHA1 Message Date
sergei
db621780d5 * x86_64-win64: fixed handling of RELOC_RELATIVE_1..RELOC_RELATIVE_5 COFF relocations, they were off by 4 bytes, causing failure in tests/test/tcalext.pp.
git-svn-id: trunk@27430 -
2014-04-01 16:26:56 +00:00
pierre
f35860b33a Update revision.inc after fpcmake.ini change 27428
git-svn-id: trunk@27429 -
2014-04-01 15:39:28 +00:00
pierre
fcc7dc82fc Fix typo error in previous fpcmake.ini change
git-svn-id: trunk@27428 -
2014-04-01 15:38:27 +00:00
pierre
64b1dce92b iUpdate revision.inc after fpcmake.ini change 27426
git-svn-id: trunk@27427 -
2014-04-01 15:32:45 +00:00
pierre
2161b5e2e4 Fix syntax error in previous fpcmake.ini change
git-svn-id: trunk@27426 -
2014-04-01 15:31:12 +00:00
pierre
7b28fb4c0e Makefile update to suppport use of -sh option
git-svn-id: trunk@27425 -
2014-04-01 15:26:28 +00:00
pierre
4bb05e6c16 Version updated due to fpcmake.ini change rev 27421
git-svn-id: trunk@27424 -
2014-04-01 15:25:19 +00:00
pierre
0801538080 Regenerated from fpcmake.ini
git-svn-id: trunk@27423 -
2014-04-01 15:24:30 +00:00
pierre
8f9268d808 Add missing EXECPPAS for explicit COMPILER calls, needed for -sh option
git-svn-id: trunk@27422 -
2014-04-01 15:12:30 +00:00
pierre
b213d2624a Handle -sh option (generate script to link on host)
git-svn-id: trunk@27421 -
2014-04-01 15:09:26 +00:00
pierre
e0a04bdd1c Add data2inc call to update fpcmake.inc from fpcmake.ini
git-svn-id: trunk@27420 -
2014-04-01 15:08:20 +00:00
nickysn
e4d4dd9d81 * replaced tabs with spaces, fixes identation
git-svn-id: trunk@27419 -
2014-04-01 12:46:46 +00:00
nickysn
85c6ffa102 * setup a true far data memory layout in the compact and large models with
stack, heap and static data being all in different segments

git-svn-id: trunk@27418 -
2014-03-31 22:03:48 +00:00
florian
73cf0b62f2 * relaxed conditions for floats in int registers, this improved softfloat code significantly
git-svn-id: trunk@27417 -
2014-03-31 21:14:16 +00:00
marco
3d5b177f68 * win64 printer unit added.
git-svn-id: trunk@27416 -
2014-03-31 18:26:24 +00:00
sergei
7f9c65d4c1 * x86_64-linux: include startup units into build.
git-svn-id: trunk@27415 -
2014-03-31 15:58:22 +00:00
sergei
eb30da60a6 * x86_64-linux: fixed existing Pascal startup code (syntax only, operation not tested yet) and added missing files.
git-svn-id: trunk@27414 -
2014-03-31 15:57:11 +00:00
nickysn
c0cb3643f8 + support i8086 far data memory models in fpc_longJmp
git-svn-id: trunk@27413 -
2014-03-31 15:53:12 +00:00
sergei
1643c175f2 + .so startup code for sparc-linux.
git-svn-id: trunk@27412 -
2014-03-31 15:45:16 +00:00
sergei
68b97bee5a * ARM: Implemented floating-point negation and abs() for softfloat using integer instructions. Fixes webtbs/tw4534.pp, and also yields much faster code than existing implementation.
Background: these operations are defined as flipping or clearing the upper bit of number, respectively, and never result in precision loss or raise floating-point exceptions.

git-svn-id: trunk@27411 -
2014-03-31 15:03:15 +00:00
nickysn
d24cfbcc8e + implemented InterLockedCompareExchange for i8086
git-svn-id: trunk@27410 -
2014-03-31 13:36:30 +00:00
marco
796be2656c * removed printer
git-svn-id: trunk@27409 -
2014-03-31 11:07:55 +00:00
sergei
fff45fa1d3 - Don't compile fpc_abs_real and fpc_sqr_real if they are already defined (Mantis #25342).
git-svn-id: trunk@27408 -
2014-03-31 10:10:04 +00:00
reiniero
b2813cc627 fcl-db: cosmetic:
* Rename deceptively named GetLogEvent
* Typos

git-svn-id: trunk@27407 -
2014-03-31 09:54:46 +00:00
nickysn
6cac29e1b5 + implemented InterLockedExchangeAdd for i8086
git-svn-id: trunk@27406 -
2014-03-31 09:49:37 +00:00
nickysn
d6cb55297c + symx86.pas added to ppc8086.lpi
git-svn-id: trunk@27405 -
2014-03-31 09:24:55 +00:00
nickysn
5b71ad3e3b + i8086 InterLockedExchange reimplemented in asm, added locking with cli
git-svn-id: trunk@27404 -
2014-03-31 09:24:23 +00:00
nickysn
3b2cc1baf5 - rm unused local vars from SysInitFPU and SysResetFPU
git-svn-id: trunk@27403 -
2014-03-30 23:03:51 +00:00
nickysn
8eaf8938f4 + support i8086 far data memory models in InterLockedDecrement and
InterLockedIncrement

git-svn-id: trunk@27402 -
2014-03-30 22:49:40 +00:00
nickysn
14ecc118ec + disable interrupts as a form of 'locking' in InterLockedDecrement and
InterLockedIncrement

git-svn-id: trunk@27401 -
2014-03-30 22:41:48 +00:00
nickysn
2dd9a36bdc * use si, instead of bp in InterLockedDecrement and InterLockedIncrement
git-svn-id: trunk@27400 -
2014-03-30 22:38:30 +00:00
Jonas Maebe
8364232049 + symx86 unit, forgot to commit (part of r27397)
git-svn-id: trunk@27399 -
2014-03-30 22:03:55 +00:00
nickysn
e86e108dc5 + added the newly added source files from r27379 to ppc8086.lpi
git-svn-id: trunk@27398 -
2014-03-30 21:25:33 +00:00
Jonas Maebe
338c064beb * moved x86-specific tpointerdef functionality to architecture-specific
descendants

git-svn-id: trunk@27397 -
2014-03-30 21:04:36 +00:00
Jonas Maebe
dae5d1ff62 + added class reference types of the architecture-specific t*def/t*sym
classes

git-svn-id: trunk@27396 -
2014-03-30 21:04:32 +00:00
Jonas Maebe
43992495cb * moved jvm tprocdef name mangling to jvm-specific descendant class
git-svn-id: trunk@27395 -
2014-03-30 21:04:29 +00:00
Jonas Maebe
f4c0daddb4 * moved jvm-specific exprasm field from tprocdef to jvm-specific descendant
git-svn-id: trunk@27394 -
2014-03-30 21:04:25 +00:00
nickysn
0a9f738167 + tcg8086.g_copyvaluepara_openarray: support source to be in a different segment
git-svn-id: trunk@27393 -
2014-03-30 19:55:11 +00:00
nickysn
4763723c75 + support compact, large and huge memory models in x86/cpubase.segment_regs_equal()
git-svn-id: trunk@27392 -
2014-03-30 19:36:21 +00:00
nickysn
1f8280e8f1 * load the destination segment in tcg8086.g_copyvaluepara_openarray from SS
instead of DS, because the destination is on the stack, but in some memory
  models DS may be different than SS

git-svn-id: trunk@27391 -
2014-03-30 19:10:21 +00:00
nickysn
070955bcd0 * fixed 'data element too large' error in i8086 far data memory models
git-svn-id: trunk@27390 -
2014-03-30 18:17:37 +00:00
nickysn
096bba90da * fixed Tcgx86.g_concatcopy not using the correct push instruction size when
pushing the source segment

git-svn-id: trunk@27389 -
2014-03-30 18:09:15 +00:00
nickysn
f4a0c08736 * fixed nested access to parent local variables in i8086 far data memory models
git-svn-id: trunk@27388 -
2014-03-30 17:50:35 +00:00
florian
8dfcc2b399 * do not reuse tmp. registers in tbasecgarm.handle_load_store
git-svn-id: trunk@27387 -
2014-03-30 17:28:45 +00:00
Jonas Maebe
11c7d5223c * moved ifdef'd jvm code from tprocvardef to jvm-specific descendant
git-svn-id: trunk@27386 -
2014-03-30 17:15:57 +00:00
Jonas Maebe
a05b078fa0 * made ppuload_platform() virtual (should have been part of r27378)
git-svn-id: trunk@27385 -
2014-03-30 17:15:53 +00:00
Jonas Maebe
721fd887c3 * moved all jvm-specific code from symsym to jvm/symcpu
git-svn-id: trunk@27384 -
2014-03-30 16:55:09 +00:00
Jonas Maebe
4a7e6b8b8f * instantiate the cpu-specific version of all defs/syms when loading them
from ppu (was only done for absolutevarsym until now)

git-svn-id: trunk@27383 -
2014-03-30 16:55:06 +00:00
Jonas Maebe
54964d92eb + forgot to commit, part of r26472
git-svn-id: trunk@27382 -
2014-03-30 16:55:03 +00:00
Jonas Maebe
49ccedbff1 * r27142 for the JVM target, so its system unit compiles again
git-svn-id: trunk@27381 -
2014-03-30 16:54:59 +00:00