Commit Graph

48214 Commits

Author SHA1 Message Date
florian
e1546303f8 + enable use of vfma and friends on arm when doing fastmath optimizations
git-svn-id: trunk@33188 -
2016-03-06 13:33:27 +00:00
florian
ad71b8348e * S1..S15 do not need to be marked as volatile as they are sub-registers of double size registers
git-svn-id: trunk@33187 -
2016-03-06 13:33:26 +00:00
florian
6207a53f5d * never allocate odd numbered single-sized registers
git-svn-id: trunk@33186 -
2016-03-06 13:33:24 +00:00
florian
234990b73c + fma test program extended to support arm
git-svn-id: trunk@33185 -
2016-03-06 13:33:22 +00:00
florian
84bb46a35d + cpu unit for arm (linux only so far)
git-svn-id: trunk@33184 -
2016-03-06 13:33:20 +00:00
florian
d13246cea4 + handle FMA instructions in taicpu.spilling_get_operation_type
git-svn-id: trunk@33183 -
2016-03-06 13:33:18 +00:00
florian
1c067e96bf * fix VFPv4 support
git-svn-id: trunk@33182 -
2016-03-06 13:33:16 +00:00
florian
43746685a5 + fma support for arm
git-svn-id: trunk@33181 -
2016-03-06 13:33:14 +00:00
Jonas Maebe
096e1c45d6 * don't keep records in registers if they contain a field that spans the
boundary between two awords, as our subscript code does not handle
    them correctly (second part of mantis #29669)

git-svn-id: trunk@33180 -
2016-03-06 13:20:25 +00:00
Jonas Maebe
7a966345e5 * don't recalculate the regable info when dereferencing a symbol's vardef:
o avoid having to save and restore the original info
   o avoids problems in case determining the regable state depends on variables
     that may not have been initialised yet at that point (such as
     voidpointertype/voidcodepointertype in case the size of procvardefs needs
     to be calculated by the regable-determining code)

git-svn-id: trunk@33179 -
2016-03-06 13:20:22 +00:00
Jonas Maebe
2483ad5939 * factored out code to set the "regable" information from setvardef, and
removed outdated comment regarding unsupported static fpu regvars

git-svn-id: trunk@33178 -
2016-03-06 13:20:19 +00:00
Jonas Maebe
9788bb1316 * fixed check regarding whether a field is in the first or second word of
of 2*sizeof(aword) bitpacked record that's kept in registers
    (mantis #29669)

git-svn-id: trunk@33177 -
2016-03-06 13:20:16 +00:00
michael
3ee5661ff1 * Fix 2.6.4 compilation
git-svn-id: trunk@33176 -
2016-03-06 10:36:53 +00:00
michael
94f8db4951 * Patch from Silvio Clecio to remove some hints/warnings
git-svn-id: trunk@33175 -
2016-03-06 10:34:48 +00:00
michael
ecd8e21443 * Fix bug #29788
git-svn-id: trunk@33174 -
2016-03-06 08:58:44 +00:00
sergei
feeb50be4f * Changed signature of frexp() to match one in Math unit, so eventually a duplicate implementation in Math can be removed. Currently this frexp() remains private to unit System.
git-svn-id: trunk@33173 -
2016-03-06 00:43:54 +00:00
michael
e88285a257 * Fix bug ID #29296 (again)
git-svn-id: trunk@33172 -
2016-03-06 00:21:11 +00:00
michael
9271f17a45 * Output XML list when XML is asked
git-svn-id: trunk@33171 -
2016-03-05 22:24:17 +00:00
michael
920b93a121 * Fix lists of test(suites)
git-svn-id: trunk@33170 -
2016-03-05 22:24:01 +00:00
michael
67ac09b69f * Moved some types to sqltypes unit so they can be reused outside of sqldb. Added GetObjectList to datadict using new types
git-svn-id: trunk@33169 -
2016-03-05 20:57:08 +00:00
michael
2ab3458074 * Added IOTimeout
git-svn-id: trunk@33168 -
2016-03-05 19:21:36 +00:00
Jonas Maebe
29daae5d6d - removed duplicated code from all numlib examples (patch by Lychee,
mantis #29765)

git-svn-id: trunk@33167 -
2016-03-05 19:16:54 +00:00
michael
a10190530a * Added IOTimeout parameter
git-svn-id: trunk@33166 -
2016-03-05 19:15:51 +00:00
Jonas Maebe
4039c1835c + test from mantis #29547, fixed in r30168 as mantis #27580
git-svn-id: trunk@33164 -
2016-03-05 19:01:47 +00:00
michael
edcc251c76 * Added file attachments to possible enhancements
git-svn-id: trunk@33163 -
2016-03-05 18:22:23 +00:00
michael
5eb691f2c9 * Added fcl-pdf
git-svn-id: trunk@33162 -
2016-03-05 17:13:07 +00:00
Jonas Maebe
3526fb27a7 * take current value of DefaultSystemCodePage into account in
fpc_unicodestr_to_chararray() for the JVM target

git-svn-id: trunk@33161 -
2016-03-05 15:52:32 +00:00
Jonas Maebe
87f46dcafd * updated pos() for Java with an offset parameter (equivalent of r31464 etc)
(mantis #29626)

git-svn-id: trunk@33160 -
2016-03-05 15:32:25 +00:00
Jonas Maebe
a100309350 * made utf8tostring() Delphi-compatible (mantis #29585):
o removed utf8string overload
   o always ignore any code page information from the input, and interpret the
     contents of the input directly as utf8-encoded bytes
 * made utf8tostring() compatible with the JVM backend (mantis #29497)

git-svn-id: trunk@33159 -
2016-03-05 15:32:22 +00:00
Jonas Maebe
531ce3be61 * fixed initialising an array of ansichar typed constant using a string
constant: directly encode the character values in the constant, rather
    than letting unicodestr_to_chararray handle the conversion (which
    implies a codepage conversion)

git-svn-id: trunk@33158 -
2016-03-05 15:32:18 +00:00
Jonas Maebe
599426f2f0 * fixed UTF8Decode for JVM:
o pass length of result array as maximum length instead of that of an empty
     string
   o the returned length of Utf8ToUnicode() includes a terminating #0 char,
     subtract that again when creating a new unicode string with the
     characters

git-svn-id: trunk@33157 -
2016-03-05 15:32:15 +00:00
Jonas Maebe
74eb0de460 * fixed mangled names for nested procedures on the JVM platform after r32153
git-svn-id: trunk@33156 -
2016-03-05 15:31:51 +00:00
marcus
0a763a9a83 Amiga: correct type for IntuitionsBase
git-svn-id: trunk@33155 -
2016-03-05 15:03:16 +00:00
michael
c0487d7ef9 * Fix bug ID #29784
git-svn-id: trunk@33154 -
2016-03-05 15:00:40 +00:00
michael
5568ee5513 * Bug ID #29779, add DWord versions of StrToInt
git-svn-id: trunk@33153 -
2016-03-05 13:50:59 +00:00
marco
b38b3a7c1e * patch from Ondrej to fix splitrecttype aliasing on windows. Mantis #29557
added alias of tarray4integertype too.

git-svn-id: trunk@33152 -
2016-03-05 13:50:02 +00:00
michael
4ed0c07ea3 * Fix bug #29772
git-svn-id: trunk@33151 -
2016-03-05 13:41:26 +00:00
michael
81c4fe28bf * Added CopyFromDataset, Clear
git-svn-id: trunk@33150 -
2016-03-05 10:15:45 +00:00
marcus
d3b8483cef Amiga: Syscallified last units, Open Library in initialization, Close Library in Finalization
git-svn-id: trunk@33149 -
2016-03-05 10:09:36 +00:00
marcus
fedfdbba6c Amiga, AROS, MorphOS: Enable NumLib
git-svn-id: trunk@33148 -
2016-03-04 21:48:04 +00:00
marcus
a55016bf93 MorphOS: added unicodedata and unicodenumtable
git-svn-id: trunk@33147 -
2016-03-04 21:08:43 +00:00
marcus
e0732cf9d7 MorphOS: Enable character unit
git-svn-id: trunk@33146 -
2016-03-04 20:36:47 +00:00
marcus
6f60221927 MorphOS: Open Library in initialization and Close Library in finalization, InitLibrary stays for backward compatibility
git-svn-id: trunk@33145 -
2016-03-04 19:58:09 +00:00
marco
eb1d895718 * fix reexport of record types in classesh, bug #29776 patch by Ondrej.
git-svn-id: trunk@33144 -
2016-03-04 10:42:40 +00:00
marco
1ae1e9310b * defined -A and -W structs and callback for a couple of functions Mantis #0029762
git-svn-id: trunk@33143 -
2016-03-02 13:46:37 +00:00
nickysn
87baa8c43f * in the internal assembler writer, when starting a new object file, set the
cputype to current_settings.cputype, instead of cpu_none (which indicates no
  restrictions)

git-svn-id: trunk@33142 -
2016-03-02 01:12:56 +00:00
nickysn
c061a98e93 * made the i8086 internal assembler cpu instruction set checking follow the
asd_cpu directive (and thus, respect the {$asmcpu XXX} directive)

git-svn-id: trunk@33141 -
2016-03-02 01:03:52 +00:00
nickysn
843aee8f4a * base the CPU name, written in the beginning of each NASM assembler file on the
nasm_cpu_name const array, which is used by the asd_cpu directive as well.
+ also enable writing this directive on i386 and x86_64 as well.

git-svn-id: trunk@33140 -
2016-03-01 00:45:51 +00:00
nickysn
ca868b0bc6 * fixed indentation in TX86NasmAssembler.WriteHeader
git-svn-id: trunk@33139 -
2016-03-01 00:40:35 +00:00
nickysn
06b9789928 + implemented a new {$ASMCPU XXX} directive, allowing to specify a different
CPU target for inline assembler blocks. In addition to the different CPUs
  (as listed under 'Supported CPU instruction sets:' in the output of 'fpc -i'),
  it also supports the special values 'ANY' and 'CURRENT'. 'ANY' means no
  restrictions (i.e. all instructions are available). 'CURRENT' means the
  current CPU target (as specified with the '-Cp' command line option). For
  backward compatibility, the default value is 'ANY' for all CPU targets, except
  i8086, where it defaults to 'CURRENT'.

  This directive requires support for the new asd_cpu directive in the assembler
  writer. This is currently implemented only for NASM, but will be supported in
  some of the other assembler writers as well (incl. the x86 internal assembler
  writer).

git-svn-id: trunk@33138 -
2016-02-29 22:25:25 +00:00