Commit Graph

46381 Commits

Author SHA1 Message Date
Károly Balogh
f0ccbc87f2 AROS/x86_64: enable syscalls code in the parser, fix EAX->RAX reference base while calculating syscall offset
git-svn-id: trunk@31172 -
2015-06-28 23:04:51 +00:00
marcus
b3abbf066f AROS: fixed inputevent (missing constants, wrong types)
git-svn-id: trunk@31171 -
2015-06-28 20:38:10 +00:00
florian
af6ffd751f + generate optimized code for shifts/rotates by constants
git-svn-id: trunk@31170 -
2015-06-28 20:28:51 +00:00
Károly Balogh
7ca62febcd AROS/x86_64: initial AROS/x86_64 support and implement syscalls for AROS/x86_64
git-svn-id: trunk@31169 -
2015-06-28 19:16:40 +00:00
marcus
09addc9e78 fcl-passrc: support for syscall functions, parameter location, HASAMIGA define
git-svn-id: trunk@31168 -
2015-06-28 18:49:53 +00:00
Károly Balogh
4eaf1ffa48 FPCMake: enable AROS on x86_64
git-svn-id: trunk@31167 -
2015-06-28 15:58:23 +00:00
marco
c9ae6b34c6 * initial support for INSTALL_BINDIR. If that option isn't used behaviour
should be the same as old. Mantis #27272

git-svn-id: trunk@31166 -
2015-06-28 15:06:04 +00:00
marcus
627d63e7af AROS: Startup code for x64
git-svn-id: trunk@31165 -
2015-06-28 14:51:50 +00:00
marcus
56ae2ad6bc AROS: removed readintags and readinlongs (just a bug function), Added missing functions in AmigaDos, GetAttr overloaded with var parameter
git-svn-id: trunk@31164 -
2015-06-28 07:20:56 +00:00
nickysn
4cbf484124 * update the ptc version number in the readme
git-svn-id: trunk@31162 -
2015-06-26 21:33:49 +00:00
michael
d0df1c6fbb * Empty string in case statement does not work
git-svn-id: trunk@31161 -
2015-06-26 09:24:10 +00:00
michael
33916f51d0 * Added logging demo
git-svn-id: trunk@31160 -
2015-06-26 09:12:31 +00:00
michael
4cc83ba03f * Fix typo
git-svn-id: trunk@31159 -
2015-06-26 09:08:33 +00:00
michael
ba506acf9f * Actually log new log types (ActualSQL and ParamValue)
git-svn-id: trunk@31158 -
2015-06-26 09:07:30 +00:00
michael
71ab58a2f1 * Added ActualSQL and ParamValue log types, correct SQLConnector so it passes log options on
git-svn-id: trunk@31157 -
2015-06-26 09:00:09 +00:00
michael
e209b1604f * Correct error message for unknown connector, add param value message
git-svn-id: trunk@31156 -
2015-06-26 08:58:28 +00:00
lacak
2f97bc7f60 fcl-db: fix parameter parsing in case, when in SQL follows two comments, where in 2nd commend is embeded quote char. Bug #22463
git-svn-id: trunk@31155 -
2015-06-26 08:02:49 +00:00
michael
3a746b76fa * Example to demonstrate how to create sql
git-svn-id: trunk@31154 -
2015-06-25 17:32:53 +00:00
marco
8b9daedf10 Patch by Lacak, mantis #28432
- adds missing Microsoft specific types (I am not sure if it is best add them to generic ODBC, but two MS specific types are alredy there so I added remaining 4)
- for conversion function I have added NtoLE to be sure that number are in little endian as expected by ODBC

git-svn-id: trunk@31153 -
2015-06-24 18:57:20 +00:00
Károly Balogh
cdfe930c31 Amiga-likes: fix the same header issues in Amiga and AROS, which was fixed for MorphOS in r30917
git-svn-id: trunk@31151 -
2015-06-23 23:22:22 +00:00
Jonas Maebe
7866bae173 * don't crash when trying to access the call_self_node in case it doesn't
exit, but instead give an error (bug introduced in r30950, mantis #28338)

git-svn-id: trunk@31150 -
2015-06-23 21:23:29 +00:00
Jonas Maebe
b21610050f * don't store reusable defs based on other defs from localsymtables into the
static/globalsymtable. The static/global symtable is stored to the PPU
    while the localsymtables are not, which means we get dangling references
    when reloading such defs from the ppu afterwards

git-svn-id: trunk@31149 -
2015-06-23 21:23:25 +00:00
Jonas Maebe
508828958c * changed getprocaddressprocvar() into a tprocvardef.getreusableprocaddr()
class method

git-svn-id: trunk@31148 -
2015-06-23 21:23:22 +00:00
Jonas Maebe
f40ea04540 * changed getarraydef() into a tarraydef.getreusable() class method
git-svn-id: trunk@31147 -
2015-06-23 21:23:18 +00:00
lacak
ef00cefa0a fcl-db: cleanup (remove unused parts of code)
git-svn-id: trunk@31146 -
2015-06-23 10:27:36 +00:00
marco
8d145ce706 * initialize secalign before case statement to avoid warning. Mantis #28326
git-svn-id: trunk@31145 -
2015-06-22 11:48:42 +00:00
Jonas Maebe
f402b0d7df * changed getpointerdef() into a tpointerdef.getreusable() class method
o allows removing the ugly x86 hacks

git-svn-id: trunk@31144 -
2015-06-22 08:17:49 +00:00
Károly Balogh
37af6b227d rtl-console/amicommon/video: instead of disabling it for AROS, decide runtime based on the allocated bitmap's attributes, which rendering mode to use
git-svn-id: trunk@31143 -
2015-06-22 00:37:54 +00:00
marcus
5f5b1ed607 rtl-console/amicommon: comment improvements in video unit
git-svn-id: trunk@31141 -
2015-06-21 18:20:33 +00:00
Károly Balogh
df0ac8cb02 powerpc: MorphOS recently started supporting the G5s, and it runs the G5s in non-G4-compatible mode much like Linux, therefore the DCBZ code seems to fail on them. So disable DCBZ usage for MorphOS as well.
git-svn-id: trunk@31132 -
2015-06-20 22:51:53 +00:00
marco
5f52ae8fbf * link to libc using initc instead of manual $linklib.
Allows to change name of libc library and $linklib in one place.

git-svn-id: trunk@31115 -
2015-06-18 09:04:28 +00:00
lacak
5e8d1078a7 fcl-db: sqlite: bind boolean parameters according to SQLite expectation:
"Boolean values are stored as integers 0 (false) and 1 (true)."
Until now True was stored as -1 instead of 1. (Reading is correct as "True" is "<>0").
This is potentialy breaking change, DO NOT BACKPORT IT!

git-svn-id: trunk@31086 -
2015-06-17 12:24:58 +00:00
Jonas Maebe
62784ef902 * copy the vmt_entry node in tcallnode.dogetcopy (mantis #28313)
o mention why it doesn't have to be compared in tcallnode.docompare

git-svn-id: trunk@31071 -
2015-06-16 21:24:55 +00:00
Jonas Maebe
d60f60154a * fixed the def used to load non-objc loadvmtaddr nodes (for llvm)
git-svn-id: trunk@31064 -
2015-06-13 22:48:48 +00:00
Jonas Maebe
3597e710b6 * fixed several VMT element types to correspond to the types used to
construct the VMT def in the VMT builder in r30950

git-svn-id: trunk@31063 -
2015-06-13 22:48:46 +00:00
Jonas Maebe
4c11d34169 * fixed loading the address of the string data of an ansi/unicodestring
constant in the llvm code generator (the constant is a record rather than
    a pointer to a record -> not indirect)

git-svn-id: trunk@31062 -
2015-06-13 22:48:43 +00:00
Jonas Maebe
b176ed9f80 * ensure that the llvmst is initialised before using a field's llvmfieldnr
(and at the same time take advantage of this to perform a sanity check)

git-svn-id: trunk@31061 -
2015-06-13 22:48:40 +00:00
Jonas Maebe
89c4bd8522 * index the llvm shadow symtable with a fieldvarsym rather than with the
index of the corresponding llvm fieldvar, as this index is a member
    of the fieldvarsym that only gets initialised once the llvm shadow
    symtable gets built, which in turn is triggered by trying to access
    it for the first time -> if fieldvarsym.llvmfieldnr got loaded by
    the compiler before evaluating the llvmst expression and if the
    llvmst hadn't been built yet, this llvmfieldnr was not yet initialized

git-svn-id: trunk@31060 -
2015-06-13 22:48:37 +00:00
Jonas Maebe
494206fd6a * use queue_is_active() method to determine whether the complex typed
expression queue is active rather than the existing ad hoc check,
    which failed when no item had been added to the queue yet

git-svn-id: trunk@31059 -
2015-06-13 22:48:34 +00:00
Jonas Maebe
8d0c5ecf5a * added protected queue_is_active() function to determine whether the
complex typed constant expressions queue is currently active

git-svn-id: trunk@31058 -
2015-06-13 22:48:31 +00:00
Jonas Maebe
bcd04953c2 * fixed open array constructors for llvm
git-svn-id: trunk@31057 -
2015-06-13 22:48:28 +00:00
Jonas Maebe
b9d4d9b141 * corrected type passed to a_bit_test_reg_loc_reg() (we force left into
a register of size opdef before)

git-svn-id: trunk@31056 -
2015-06-13 22:48:26 +00:00
Jonas Maebe
9175809d5d * use correct llvm type conversion operator when loading a "named register"
with a pointer value into an integer register or vice versa

git-svn-id: trunk@31055 -
2015-06-13 22:48:23 +00:00
Jonas Maebe
cf2e46c2c1 * reworked external symbol handling on llvm to deal with the fact that
a single external symbol may be used with multiple declarations that
    have different types:
   o always declare an alias with the Pascal-mangled name that aliases the
     external symbol, with the type of that Pascal declaration
   o if the external symbol is not actually external but in the same unit,
     we will determine the type of that symbol via its declaration and
     insert type conversions in the alias declarations in case they use a
     different type
   o if it is external (so there is no declaration from which we can determine
     its real type) and there are nevertheless multiple aliases for it with
     different types, we just take the type of the first alias and insert
     type conversions for the other aliases. LLVM will take care of the
     conflicting types in multiple modules when performing WPO if necessary

git-svn-id: trunk@31054 -
2015-06-13 22:48:20 +00:00
Jonas Maebe
b39bc5888a * moved the import name handling entirely to hlcgobj so it can be
overridden

git-svn-id: trunk@31053 -
2015-06-13 22:48:17 +00:00
Jonas Maebe
54dd25b448 * support llvm aliases for defs other than procdef
git-svn-id: trunk@31052 -
2015-06-13 22:48:14 +00:00
Jonas Maebe
4eea652576 * fixed writing non-default linkage and visibility of llvm alias declarations
git-svn-id: trunk@31051 -
2015-06-13 22:48:11 +00:00
Jonas Maebe
1019a6b090 * use the def of the paraloc rather than the parasym's vardef in
gen_load_para_value(), as this may be different depending on
    the calling conventions
  * adapt llvm's gen_load_cgpara_loc() to use this passed def rather
    than hardcoding the para's def (although these will normally match)

git-svn-id: trunk@31050 -
2015-06-13 22:48:08 +00:00
Jonas Maebe
b9c9422fa7 * fixed type of reference used to store an ansichar that was converted
inline to a shortstring

git-svn-id: trunk@31049 -
2015-06-13 22:48:05 +00:00
Jonas Maebe
2cdf969649 * don't define asmsymbols for weak external functions as local/global
git-svn-id: trunk@31048 -
2015-06-13 22:48:02 +00:00