Commit Graph

49818 Commits

Author SHA1 Message Date
pierre
a82a134be8 * Set REVSTR to empty if 'svnversion -c .' outputs 'exported'
git-svn-id: trunk@34899 -
2016-11-14 10:57:49 +00:00
Jonas Maebe
e1e3ad15f0 * escape all occurrences of '$' in function-level inline assembly
o temporarily encode the uses of '$' for references to function-level inline
     assembly arguments as '^', because those have to remain/become a single
     '$'

git-svn-id: trunk@34898 -
2016-11-13 22:10:00 +00:00
Jonas Maebe
43e599d6be * fixed function-level inline assembly constraints in case there are no
parameters

git-svn-id: trunk@34897 -
2016-11-13 22:09:57 +00:00
florian
6d6a45c034 * add/sub nodes with nf_internal set should not do overflow checking, resolves #30889
* do not convert succ/pred into add/sub nodes if nf_internal is set

git-svn-id: trunk@34896 -
2016-11-13 21:18:39 +00:00
marcus
3207a346e1 AROS: arm needs AROS_FLAVOUR_BINCOMPAT defines
git-svn-id: trunk@34895 -
2016-11-13 21:05:12 +00:00
Jonas Maebe
0117602b6e * reset unitimportsymsderefs in tppumodule.reset, hopefully fixes
mantis #30289 (no feedback)

git-svn-id: trunk@34894 -
2016-11-13 16:42:04 +00:00
Jonas Maebe
7a57161b6d * in x:=f(..), we only checked for aliasing between x and any parameters of
f(..) before using x directly as function result for f(..) (instead of a
    temp) in case the function result of temp is passed via a hiddel
    call-by-reference parameter. After all, if the result is returned by
    value, then any changes to the function result inside the callee code
    won't affect whatever we will assign the result to until the callee
    has returned. However, this is not true in case of inlining: then
    the replaced function result node will be substituted directly in the
    inlined code -> also check for aliasing in that case.
   o fixes test/toperator5.pp on x86-64

git-svn-id: trunk@34893 -
2016-11-13 16:06:35 +00:00
Jonas Maebe
c3aa9e2890 * generate LLVM function-level inline assembly blocks, replacing
references to local variables and parameters with references to
    assembler block constraints/parameters

git-svn-id: trunk@34892 -
2016-11-13 16:06:32 +00:00
Jonas Maebe
c4ae040258 + support for writing LLVM function-level inline assembly blocks
git-svn-id: trunk@34891 -
2016-11-13 16:06:29 +00:00
Jonas Maebe
f3409b4c9d + new la_asm LLVM pseudo-instruction to represent function-level inline
assembly blocks

git-svn-id: trunk@34890 -
2016-11-13 16:06:26 +00:00
Jonas Maebe
d2873e433e + top_asmlist operand type for LLVM inline assembly "call" instructions
git-svn-id: trunk@34889 -
2016-11-13 16:06:23 +00:00
Jonas Maebe
1c23218375 * pass the parameter list directly to getparas()
git-svn-id: trunk@34888 -
2016-11-13 16:06:20 +00:00
Jonas Maebe
bdfd588b47 * free the temporary assembler writer created for writing the code of pure
assembler routines

git-svn-id: trunk@34887 -
2016-11-13 16:06:17 +00:00
Jonas Maebe
b28221349e - removed aoptcs unit and (dummy) units that used it
o remenants of a long abandoned attempt at adding a generic
     assembler CSE optimiser

git-svn-id: trunk@34886 -
2016-11-13 16:06:14 +00:00
florian
9bff3ac624 * copy also pushedparasize when copying call nodes, resolves #30923
git-svn-id: trunk@34885 -
2016-11-13 14:46:55 +00:00
michael
8b2d858ba5 * Fix bug ID #30672, patch by Silvio Clecio
git-svn-id: trunk@34884 -
2016-11-13 11:02:09 +00:00
michael
1415d86f86 * String of length 1 is character (bug ID 30723)
git-svn-id: trunk@34883 -
2016-11-12 22:59:18 +00:00
michael
58d0239558 * Fix some bordercases for if..then (bug ID 30717)
git-svn-id: trunk@34882 -
2016-11-12 22:47:14 +00:00
michael
62e8807ebd * Handle DispID methods (bug ID 30782)
git-svn-id: trunk@34881 -
2016-11-12 22:24:20 +00:00
michael
16d8435fde * Fix generic as record field name, bug ID #30718
git-svn-id: trunk@34880 -
2016-11-12 22:07:15 +00:00
michael
5d4f605a39 * Fix bug #30720, } is processed wrongly when scanning and PPIsSkipping
git-svn-id: trunk@34879 -
2016-11-12 21:55:43 +00:00
michael
1f498123c6 * ReadOnly DispID property (bug 30780)
git-svn-id: trunk@34878 -
2016-11-12 21:25:57 +00:00
marco
1458243b33 * fix uuchar rule for file to compile outside default directory, also for NetBSD. OpenBSD was already ok
git-svn-id: trunk@34877 -
2016-11-11 14:51:20 +00:00
marco
9844b86480 * fix uuchar rule for file to compile outside default directory.
git-svn-id: trunk@34876 -
2016-11-11 14:43:37 +00:00
michael
5e6026b020 * Added KeepConnection by Silvio Clecio (Bug ID 30788)
git-svn-id: trunk@34875 -
2016-11-11 12:28:44 +00:00
michael
f648bdecba * Made some additional functions inlined (Bug ID 30909)
git-svn-id: trunk@34874 -
2016-11-11 10:28:19 +00:00
michael
2e3ab0d37e * Introduce TFPList.CheckIndex (bug ID 30887)
git-svn-id: trunk@34873 -
2016-11-11 10:26:05 +00:00
michael
aa6a8acb72 * Introduce TFPSList checkindex (bug ID 30886)
git-svn-id: trunk@34872 -
2016-11-11 10:16:57 +00:00
michael
5af24e94ae * Patch from wp to add BOM detection to CSV reader (bug ID 30897)
git-svn-id: trunk@34871 -
2016-11-11 10:03:14 +00:00
michael
66b07b045b * Delete Value/Path must set Modified flag (Bug ID 30907)
git-svn-id: trunk@34870 -
2016-11-11 09:49:44 +00:00
michael
65469ebd4d * Inline some functions, bugreport ID 30906
git-svn-id: trunk@34869 -
2016-11-11 09:40:41 +00:00
michael
9b21d9a87e * Inline some functions, bug ID #30905
git-svn-id: trunk@34868 -
2016-11-11 09:33:28 +00:00
michael
6cccd87f16 * Patch from Laco to add some widechar ODBC functions
git-svn-id: trunk@34867 -
2016-11-11 09:22:49 +00:00
michael
ab566789a8 * Fix bug ID #30762
git-svn-id: trunk@34866 -
2016-11-11 09:14:25 +00:00
joost
89b471a8d6 * Added ability to add a repository with available packages which does not
need to be installed. (Instead another repository with installed 
   packages is added to the same location.
 * Added the ability to couple a repository with available packages
   to a repository in which the packages should be installed

git-svn-id: trunk@34865 -
2016-11-10 20:59:34 +00:00
pierre
3919ffccf2 Fix calcsavesize for cross-compilation from aarch64 to arm, by forcing 64-bit computation also on min<low(longint) part
git-svn-id: trunk@34864 -
2016-11-10 17:04:31 +00:00
yury
565ad7f852 * pas2jni: Do not generate unneeded imports.
git-svn-id: trunk@34863 -
2016-11-10 15:43:13 +00:00
yury
78914d9b20 * pas2jni: Do not include array element types from arrays, which is not processed.
git-svn-id: trunk@34862 -
2016-11-10 14:39:58 +00:00
michael
860ad25430 * Add some comments about used algorithms for increasing/decreasing list sizes
git-svn-id: trunk@34861 -
2016-11-09 21:28:20 +00:00
michael
d2ebb94fa3 * Fix for failing COMP tests from Luiz Americo (bug ID 30878)
git-svn-id: trunk@34860 -
2016-11-09 21:21:49 +00:00
michael
6bf0ec2de1 * Patch from Luiz Americo to add const to some strings
git-svn-id: trunk@34859 -
2016-11-09 21:17:40 +00:00
Jonas Maebe
1ac51d5cd1 * initialise for-loop variables before the loop
o the intiialization code of a for-loop used to do that, but no longer
     does so since their automatic transformation to a while-loop. Even
     though the code did not read the value of the for-loop variable
     in case the loop was not entered, the JVM's verifier is not
     sophisticated enough to be able to detect that (it's protected by
     a boolean set in the loop)

git-svn-id: trunk@34858 -
2016-11-09 19:51:39 +00:00
Jonas Maebe
86876ed114 * MaybeRecordOffset: initialise "mangledname" variable
git-svn-id: trunk@34857 -
2016-11-09 19:51:36 +00:00
Jonas Maebe
e730da9c1a * turned resolveref from a local procedure into a virtual method
git-svn-id: trunk@34856 -
2016-11-09 19:51:33 +00:00
Jonas Maebe
af297e849c + function-level LLVM inline assembly decorator
git-svn-id: trunk@34855 -
2016-11-09 19:51:30 +00:00
Jonas Maebe
646385e966 * support for overriding the line ending character in external assembler
writer decorators (for LLVM function-level inline assembly: there
    newline has to be replaced by the character sequence '\0A')

git-svn-id: trunk@34854 -
2016-11-09 19:51:27 +00:00
Jonas Maebe
20a152d4e9 * simplified TExternalAssemblerOutputFile.AsmLn
git-svn-id: trunk@34853 -
2016-11-09 19:51:24 +00:00
Jonas Maebe
74a49b5f91 * restructured the the TExternalAssembler constructors so that the
hack for the Jasmin descendent is no longer needed

git-svn-id: trunk@34852 -
2016-11-09 19:51:20 +00:00
michael
8bbc792a4f * Patch from Mattias Gaertner for pas2js:
jsbase: Changed TJSString from WideString to UnicodeString to use ref counting on Windows.
  jsbase: Added TJSValue.CustomValue.
  fppas2js: Changed context from pas to js context. 
            The pas context is already in the resolver values. 
  fppas2js: Support for type alias
  fppas2js: Built in functions inc/dec for integers

git-svn-id: trunk@34851 -
2016-11-09 16:26:21 +00:00
Tomas Hajny
ff02b2dfb5 + added test based on bug #24504
git-svn-id: trunk@34850 -
2016-11-08 22:24:22 +00:00