Commit Graph

56063 Commits

Author SHA1 Message Date
Jonas Maebe
eab079c7bd * fixed cbool "and" with full boolean evaluation, and cbool "xor"
(mantis #35272)

git-svn-id: trunk@42167 -
2019-06-02 20:04:06 +00:00
Jonas Maebe
dc681a75ec * properly return from the signal handler on ARM/Linux instead of calling
HandleErrorAddrFrame directly (fixes psabieh exception handling, and
    generally is cleaner)

git-svn-id: trunk@42166 -
2019-06-02 18:33:01 +00:00
Jonas Maebe
322a717c44 * support for handling subsetrefs with bitlen > AIntBits in a_load_subsetref_reg() and
a_load_const/reg_subsetref() (needed for handling 32 bit platforms using a purely
    high level code generator like LLVM's, and may also improve the situation for
    16 bit platforms)
   o can probably be optimized to split them into parts that cover partial word loads
     and complete word loads (to reduce useless merging)

git-svn-id: trunk@42165 -
2019-06-02 18:32:58 +00:00
Jeppe Johansen
ee7bc1d516 - Fix compilation on architectures without absolute call/jump instructions.
git-svn-id: trunk@42164 -
2019-06-02 15:50:41 +00:00
Jeppe Johansen
aa4961d06e - Add mov optimization for STS instruction.
git-svn-id: trunk@42163 -
2019-06-02 14:55:30 +00:00
Jeppe Johansen
dee0197890 - Add assembler implementation of integer division, patch by Christo Crause. For now there's a division by zero check added.
- Fix setjmp/longjmp handling on 3 byte PC AVRs.

git-svn-id: trunk@42162 -
2019-06-02 13:14:19 +00:00
Jeppe Johansen
5bdc635f50 Check if the current register was the last in the cgpara, to avoid running over the last register allocated.
git-svn-id: trunk@42159 -
2019-06-02 09:13:19 +00:00
Jeppe Johansen
cba4aeaca5 Fix division of constants on ARM thumb without long multiplication.
git-svn-id: trunk@42158 -
2019-06-01 20:30:09 +00:00
Jeppe Johansen
2f501be2a0 Fixed stack checking for embedded target. Based on work by Christo Crause
git-svn-id: trunk@42157 -
2019-06-01 19:18:31 +00:00
marco
be7b653fef * savetohhp from serbods git repo
git-svn-id: trunk@42156 -
2019-06-01 16:22:18 +00:00
Jeppe Johansen
009c87156a Add assembler implementation of Move.
git-svn-id: trunk@42155 -
2019-06-01 15:39:09 +00:00
Jeppe Johansen
c867d2b7f6 Generalize skip instruction optimization for both sbix and sbrx.
git-svn-id: trunk@42154 -
2019-06-01 15:20:34 +00:00
michael
833e00bfbd * Fix bug #35660, introduce prefervaluestonames
git-svn-id: trunk@42153 -
2019-06-01 09:42:27 +00:00
marco
4f447a4de0 * some more shlwapi translations
git-svn-id: trunk@42152 -
2019-05-31 16:03:06 +00:00
svenbarth
601f0bd6b1 * if the creation of the method implementation raises ENotImplemented we ignore the test as not all calling conventions might be supported currently (e.g. on i386 only "register" is for now)
git-svn-id: trunk@42151 -
2019-05-31 15:41:06 +00:00
svenbarth
4adce9b1bd + add function callback support for the Register calling convention on i386
git-svn-id: trunk@42150 -
2019-05-31 15:41:04 +00:00
nickysn
0f205470bc * set DL=0 in dos.setverify for compatibility with DOS 2.x
git-svn-id: trunk@42149 -
2019-05-31 13:58:19 +00:00
marco
4e70f12027 * strstria* and similar functions. mantis 035582, even though that is about legacy shellapi32
git-svn-id: trunk@42148 -
2019-05-31 12:13:38 +00:00
marco
646d7c2a95 * helper in record to make setting parameters a bit denser.
git-svn-id: trunk@42147 -
2019-05-31 10:40:54 +00:00
marco
9313ddea78 * fix mantis 035656
git-svn-id: trunk@42146 -
2019-05-31 10:32:49 +00:00
olivier
353da84b74 + Added test object files for x86_64-haiku.
git-svn-id: trunk@42145 -
2019-05-31 10:10:05 +00:00
marco
455cb6758f * freetype windows compat patch from Pascal Riekenberg, mantis #35644
git-svn-id: trunk@42144 -
2019-05-31 09:41:28 +00:00
marco
6d65a8f1e3 * mantis #35586
git-svn-id: trunk@42143 -
2019-05-31 09:38:45 +00:00
marco
553da0e126 * some locale support rescued from serbods heavily reformatted github branch
git-svn-id: trunk@42142 -
2019-05-30 21:35:41 +00:00
marco
3d8c5d6eb8 * toplevel name (e.g. "active") is now also redirected.
* cleaned redirection up a bit,

git-svn-id: trunk@42141 -
2019-05-30 21:11:43 +00:00
marco
5ab2ffcdbe * first check for s=''. Strange that this wasn't needed on windows
git-svn-id: trunk@42140 -
2019-05-30 18:40:33 +00:00
michael
8c303d666b * Remove debug file writing
git-svn-id: trunk@42139 -
2019-05-30 16:24:20 +00:00
marco
ad44f618da * check for redirects also on other level. Fixes tbufdataset.active in the FCL index
git-svn-id: trunk@42138 -
2019-05-30 15:46:36 +00:00
marco
8ba75c847a * fix reading binary toc. Lazarus depends on it, and it name,local change changed order, and thus added empty names.
git-svn-id: trunk@42137 -
2019-05-30 10:44:52 +00:00
nickysn
2fdef04a28 * invoke _csu_finish before __init in the OpenBSD i386 C library startup code
git-svn-id: trunk@42132 -
2019-05-28 15:39:43 +00:00
marco
62a572e484 * add a dummy property to keep lazarus CHM compiling for now.
git-svn-id: trunk@42129 -
2019-05-27 07:48:45 +00:00
nickysn
40e6c06f67 * fixes to the compiler util exe search routines, which caused the compiler to
erroneusly find '/usr/bin/ld' instead of '/usr/bin/ld.bfd' on OpenBSD, which
  silently produced broken executables, which made this bug even more "fun" to
  find. :)

git-svn-id: trunk@42128 -
2019-05-26 16:57:08 +00:00
nickysn
0c471494e8 * use explicitly GNU LD ('ld.bfd') on OpenBSD, instead of the default 'ld'
linker, because in OpenBSD 6.5, it has been replaced with the LLVM linker and
  the LLVM linker produces broken position independent executables with FPC.

git-svn-id: trunk@42127 -
2019-05-26 16:51:51 +00:00
marco
3092b1169a * redone sitemap to support multiple name,local pairs for index.
* rewritten binary index generation. Use natural sort for index.
 * updated html scanning for ID= tags as anchor, reduces warnings with more modern html code.
 
Still work to do, ags helpfile still has 70 differences. Possibly however due to case sensitive anchors on index level.

git-svn-id: trunk@42124 -
2019-05-25 16:41:18 +00:00
michael
205be75320 * Added simple example for AssignStream
git-svn-id: trunk@42123 -
2019-05-25 15:55:43 +00:00
michael
f515c70a40 * Example to demonstrate exit code forms in TCustomApplication
git-svn-id: trunk@42122 -
2019-05-25 15:52:33 +00:00
Jonas Maebe
77658b925b * disable regular array -> dynamic array type coversion support unless
{$modeswitch arraytodynarray} is active (mantis #35576)
   o changed compiler to compile without this modeswitch
   o added the modeswitch to a test that depends on it

git-svn-id: trunk@42118 -
2019-05-25 12:31:32 +00:00
pierre
c752aa5cf5 Avoid incomplete case warning when compiled with -dTEST_WIN32_SEH
git-svn-id: trunk@42115 -
2019-05-24 10:14:51 +00:00
michael
3fe77a8ff5 * Add to OpenSSLGetVersion to interface
git-svn-id: trunk@42114 -
2019-05-22 11:34:51 +00:00
michael
3c0805d6a2 * Add OpenSSL_Version
git-svn-id: trunk@42113 -
2019-05-22 10:52:24 +00:00
Jonas Maebe
41f36233ea * more fpc_lib_exit change compilation fixes
git-svn-id: trunk@42112 -
2019-05-21 06:24:12 +00:00
pierre
769f85783a List TSettings partially and improve generic output
git-svn-id: trunk@42111 -
2019-05-20 22:06:57 +00:00
pierre
dd418f24b5 Add DEBUG_PPU conditional code to be able to debug ppu changes (only useful for debugging purposes)
git-svn-id: trunk@42110 -
2019-05-20 12:48:12 +00:00
pierre
669e705b54 Change lib_exit to fpc_lib_exit in missed sources (to fix breakages after commit #42104)
git-svn-id: trunk@42109 -
2019-05-20 09:35:28 +00:00
Jonas Maebe
23428dbf4c * replaced non-breaking space with space (patch by J. Gareth Moreton,
mantis #35602)

git-svn-id: trunk@42105 -
2019-05-19 19:20:51 +00:00
Jonas Maebe
aad87820e6 * abstracted registration of library init/fini routines (to be able to add
LLVM support)

git-svn-id: trunk@42104 -
2019-05-19 19:20:47 +00:00
Jonas Maebe
a418dc6c91 * made the fields array parameter of llvmgettemprecorddef "const", as it
doesn't get modified and hence doesn't need to be copied

git-svn-id: trunk@42103 -
2019-05-19 19:20:42 +00:00
Jonas Maebe
15532e5277 * disabled low-level hack test for LLVM
git-svn-id: trunk@42102 -
2019-05-19 19:20:38 +00:00
Jonas Maebe
4c34b7b67d * fixed memory leak
git-svn-id: trunk@42101 -
2019-05-19 19:20:34 +00:00
Jonas Maebe
eb0f02348d * fixed loading parent frame pointer for nested procvars on targets that
that use explicit parentfp structs (fixes webtbs/tw17379 for llvm)

git-svn-id: trunk@42100 -
2019-05-19 19:20:29 +00:00