Commit Graph

54942 Commits

Author SHA1 Message Date
Jonas Maebe
3b7efb5123 * only free the temp holding the function result after we've loaded it into
the function return register (so we won't load from an already freed
    temp once we emit lifetime info for temps on LLVM)

git-svn-id: trunk@40501 -
2018-12-08 15:31:48 +00:00
Jonas Maebe
14f3676b2a + llvm_lifetime_start/llvm_lifetime_end intrinsic declarations
git-svn-id: trunk@40500 -
2018-12-08 15:31:45 +00:00
Jonas Maebe
8a4947dba2 * don't do anything in thlcgllvm.allocallcpuregisters() like in
deallocallcpuregisters()

git-svn-id: trunk@40499 -
2018-12-08 15:31:41 +00:00
yury
ad269dedd4 * If ds_dwarf_cpp (C++ emulation) is enabled, add DW_AT_linkage_name attribute for methods.
LLDB uses it to display fully qualified method names. Add a simple C++ mangled name without params to achieve at least "Class::Method()" instead of just "Method" in LLDB.

git-svn-id: trunk@40498 -
2018-12-07 20:55:50 +00:00
marcus
1bde958889 arosunits, morphunits, os4units: serial, CreateExtIO(), DeleteExtIO() for all amiga systems
git-svn-id: trunk@40497 -
2018-12-07 19:28:12 +00:00
marcus
5881516cf4 amunits: fixed pack and checked against SDK serial unit
git-svn-id: trunk@40496 -
2018-12-07 18:56:19 +00:00
Mattias Gaertner
1e15e35eab pastojs: checked writeln
git-svn-id: trunk@40495 -
2018-12-07 17:16:14 +00:00
Mattias Gaertner
ca95175b1a pastojs: fixed initial pcu flags
git-svn-id: trunk@40494 -
2018-12-07 17:11:37 +00:00
Mattias Gaertner
8080b53489 pastojs: fixed storing procedurre scope references
git-svn-id: trunk@40493 -
2018-12-07 16:52:00 +00:00
yury
f0d42db82d * When ds_dwarf_cpp option is enabled, use dwarf2 implementation of strings debug info. It makes LLDB happy.
git-svn-id: trunk@40492 -
2018-12-07 16:14:02 +00:00
Mattias Gaertner
6e50894d6f pastojs: fixed searching pcu files
git-svn-id: trunk@40491 -
2018-12-07 15:19:22 +00:00
Mattias Gaertner
fe628565fb pastojs: enabled pcu tests
git-svn-id: trunk@40489 -
2018-12-07 09:45:42 +00:00
Mattias Gaertner
8d3c133caa pastojs: added $i %EnvVar%
git-svn-id: trunk@40488 -
2018-12-07 08:09:50 +00:00
Mattias Gaertner
58e50ef07e pastojs: added $i %file%
git-svn-id: trunk@40487 -
2018-12-07 07:57:49 +00:00
Mattias Gaertner
a82e5bab50 pastojs: added $i %linenum%
git-svn-id: trunk@40486 -
2018-12-07 07:26:26 +00:00
Károly Balogh
09d6b1129d tosunits: added a few more VDI functions
git-svn-id: trunk@40485 -
2018-12-07 00:03:14 +00:00
Mattias Gaertner
1b4c201a68 pas2js: fixed not existsing default config
git-svn-id: trunk@40484 -
2018-12-07 00:00:13 +00:00
Mattias Gaertner
4fc633b13e pastojs: comments, nicer uses sections
git-svn-id: trunk@40483 -
2018-12-06 23:47:08 +00:00
pierre
2c64982f82 Fix compilation of installer for win32 target
git-svn-id: trunk@40481 -
2018-12-06 17:06:45 +00:00
Mattias Gaertner
29e0fef792 pastojs: fixed assert to raise on false, bug #34643
git-svn-id: trunk@40479 -
2018-12-06 14:29:43 +00:00
Mattias Gaertner
148cc6e157 pas2js: cleaned up lpi
git-svn-id: trunk@40478 -
2018-12-06 09:34:31 +00:00
Mattias Gaertner
711065cf78 pastojs: restored built in function debugger
git-svn-id: trunk@40477 -
2018-12-06 09:34:04 +00:00
Mattias Gaertner
e64b098e7f pastojs: restored built in function debugger, less hints
git-svn-id: trunk@40476 -
2018-12-06 09:33:42 +00:00
Mattias Gaertner
0fe9e24297 fcl-passrc: started anonymous methods
git-svn-id: trunk@40475 -
2018-12-06 09:32:49 +00:00
Mattias Gaertner
b82026dcf8 fcl-passrc: clean up
git-svn-id: trunk@40474 -
2018-12-06 09:31:28 +00:00
Mattias Gaertner
c75d0ab3bd fcl-passrc: less hints
git-svn-id: trunk@40473 -
2018-12-06 09:30:18 +00:00
yury
44facc15fa * Since Android 8 the net.dnsX properties can't be read. Use Google Public DNS servers.
git-svn-id: trunk@40472 -
2018-12-05 16:12:56 +00:00
michael
fd609fe19c * Web browser compiler, initial implementation
git-svn-id: trunk@40471 -
2018-12-04 21:42:53 +00:00
michael
231b86dcdf * Reset also resets main program src
git-svn-id: trunk@40470 -
2018-12-04 21:40:32 +00:00
michael
a38e67dfde * Add FindIncludeFileName at higher level, virtual
git-svn-id: trunk@40469 -
2018-12-04 21:39:59 +00:00
florian
32121de8ae * do not call InitTLS when a compiler is used which does not include the abi tag section
git-svn-id: trunk@40468 -
2018-12-04 21:25:48 +00:00
Jonas Maebe
8846041b23 * use volatile() to prevent wrong optimizations by llvm
git-svn-id: trunk@40466 -
2018-12-04 19:53:23 +00:00
Jonas Maebe
122d0d36d6 + volatile() expression that marks an expression as volatile
* disable matching volatile references in the assembler optimisers, so they
    can't be removed (more conservative than needed, but better than removing
    too many)
   o the CSE optimiser will ignore them by default, because they're an unknown
     inline node for it
  * also removed no longer used fpc_in_move_x and fpc_in_fillchar_x inline node
    identifiers from rtl/inc/innr.inc, and placed fpc_in_unaligned_x at the
    right place

git-svn-id: trunk@40465 -
2018-12-04 19:53:20 +00:00
Jonas Maebe
b7da7cd654 * ensure the generic version of tcgshlshrnode gets used for llvm
git-svn-id: trunk@40464 -
2018-12-04 19:53:16 +00:00
Jonas Maebe
2109612fa3 - disable cs_opt_use_load_modify_store because for llvm because it is
apparently buggy as far as type information is concerned, and it also
    results in tons of spilling

git-svn-id: trunk@40463 -
2018-12-04 19:53:13 +00:00
yury
1cc3c199c8 * pas2jni: TClass helper must be generated only for the system unit.
git-svn-id: trunk@40462 -
2018-12-04 13:07:05 +00:00
michael
78b3b8ee4e * Modifications so it compiles for target browser
git-svn-id: trunk@40461 -
2018-12-03 21:46:36 +00:00
michael
1fba127e21 * Fix tests after latest batch of changes
git-svn-id: trunk@40460 -
2018-12-03 19:42:25 +00:00
Mattias Gaertner
8b912d0fea pastojs: restored test built-in debugger;
git-svn-id: trunk@40459 -
2018-12-03 16:43:47 +00:00
Mattias Gaertner
ada75392aa pas2js: lpi removed default suite
git-svn-id: trunk@40458 -
2018-12-03 16:43:10 +00:00
Mattias Gaertner
3c8c833234 pastojs: restored built-in function debugger
git-svn-id: trunk@40457 -
2018-12-03 16:41:45 +00:00
Mattias Gaertner
ca7d187654 pastojs: restored built-in function debugger
git-svn-id: trunk@40456 -
2018-12-03 16:23:55 +00:00
michael
ec782c522e * No more basedir
git-svn-id: trunk@40455 -
2018-12-03 08:51:08 +00:00
florian
eeadf618b8 + abi tag for i386
* arm abi tag moved into pascal file

git-svn-id: trunk@40454 -
2018-12-02 22:56:12 +00:00
Károly Balogh
6629e72d79 m68k: reinstate the inc/dec tempregister type hack again in an isolated way (it was removed in r40385, as it was breaking llvm target)
git-svn-id: trunk@40453 -
2018-12-02 18:54:04 +00:00
michael
b9905f6a2c * Instantiate FS compiler
git-svn-id: trunk@40452 -
2018-12-02 18:44:34 +00:00
michael
2c7f401bf7 * Instantiate PCU compiler
git-svn-id: trunk@40451 -
2018-12-02 18:44:21 +00:00
michael
07f98847ca * Refactored so compiler itself is filesystem agnostic
git-svn-id: trunk@40450 -
2018-12-02 18:41:38 +00:00
florian
90557f2e62 * properly calcualte aligncount as proposed by Jeppe, should resolve #33323
git-svn-id: trunk@40449 -
2018-12-02 14:49:24 +00:00
florian
31ae109a31 * properly initialize phdr and phnum
git-svn-id: trunk@40448 -
2018-12-02 08:49:03 +00:00