Commit Graph

37956 Commits

Author SHA1 Message Date
florian
25b80bedf9 * get rid of tabs with wrong size
git-svn-id: trunk@21913 -
2012-07-15 14:04:50 +00:00
florian
3d76823929 * load StackTop and StackBottom correctly on windows, also in libraries
git-svn-id: trunk@21912 -
2012-07-15 14:03:45 +00:00
masta
aa4fe66153 Fix ARM ASM-reader for MVN/CMP/CMN/TST/TEQ
Like MOV these instructions support 2 operands, with the second beeing a
shifterop.

Without this patch the asm reader would fail on something like

cmp r0, r1, lsr 16

with

Error: Unknown identifier "LSR"

git-svn-id: trunk@21911 -
2012-07-15 01:03:08 +00:00
michael
607b86f582 * Parse program without program header and with complete header
git-svn-id: trunk@21910 -
2012-07-13 18:17:52 +00:00
michael
f32b9fd572 * Use container to create statement elements so they get sourcefile information
git-svn-id: trunk@21909 -
2012-07-13 13:37:39 +00:00
Tomas Hajny
2bcfe75ea8 * correction for copy&paste error in previous commit
git-svn-id: trunk@21908 -
2012-07-12 23:32:51 +00:00
Tomas Hajny
4dccf2d321 * GetLoadErrorStr implemented
git-svn-id: trunk@21907 -
2012-07-12 23:30:19 +00:00
Jonas Maebe
7717e43929 * moved setting the call result to a separate method, so it can still be
used across multiple levels of inheritance such as on MIPS (and the code
    has to be reusable for a_call_ref/reeg in the future anyway)

git-svn-id: trunk@21906 -
2012-07-12 20:56:25 +00:00
sergei
e5ee1c9f67 * Don't access tcfilestream.size 3 times in sequence, as each access costs two seeks (syscalls).
+ made size of tobjectreader data available via property.

git-svn-id: trunk@21905 -
2012-07-12 16:10:34 +00:00
pierre
dd59db1bba * Set retun value of get_frame method to nil
git-svn-id: trunk@21904 -
2012-07-12 14:16:24 +00:00
Jonas Maebe
56fcc87cb2 * add get_frame as an internal symbol for the jvm target because that target
defines INTERNAL_BACKTRACE (which assumes get_frame to be internal rather
    than a system unit procedure)
  * changed fpc_assert() declaration for jvm to be the same as for other
    targets, so the same code can be used to call it in ninl now that's
    called from the first pass

git-svn-id: trunk@21903 -
2012-07-12 13:25:02 +00:00
pierre
54bfc8156d Fix termios constants for mips cpu, mostly using octal prefix
git-svn-id: trunk@21902 -
2012-07-12 13:11:13 +00:00
pierre
68c8383254 Add support for binary/octal/hexadecimal constants
git-svn-id: trunk@21901 -
2012-07-12 13:09:32 +00:00
pierre
a311c53167 Replace HandleErrorFrame calls by HandleErrorAddrFrameInd where possible in common code (to allow correct backtrace for mips cpu)
git-svn-id: trunk@21900 -
2012-07-12 11:53:59 +00:00
pierre
ca8cc759ac Add HandleErrorAddrFrameInd to restore same behavior for RTEs as for 2.6.0, i.e. avoid an additional line at fpc_XXX level in stack dump
git-svn-id: trunk@21899 -
2012-07-12 10:19:58 +00:00
pierre
edcb02b571 Use need system macro FPC_LOCALS_ARE_STACK_REG_RELATIVE for mips support
git-svn-id: trunk@21898 -
2012-07-12 09:15:20 +00:00
pierre
426d21fbd1 Use need system macro FPC_LOCALS_ARE_STACK_REG_RELATIVE for mips support
git-svn-id: trunk@21897 -
2012-07-12 09:13:31 +00:00
pierre
bb7f443c53 Use two parameter version of get_caller_frame
git-svn-id: trunk@21896 -
2012-07-12 09:12:02 +00:00
pierre
c89992f6bb Regenerate after change: Add ../compiler/mips unit directory for mipsel
git-svn-id: trunk@21895 -
2012-07-12 09:11:05 +00:00
pierre
2566809146 Add ../compiler/mips unit directory for mipsel
git-svn-id: trunk@21894 -
2012-07-12 09:10:39 +00:00
pierre
ecddfb7838 + Added FPC_LOCALS_ARE_STACK_REG_RELATIVE system macro for MIPS cpu
git-svn-id: trunk@21893 -
2012-07-12 08:54:06 +00:00
michael
8e00e50965 * Fix 64-bit compilation (Bug ID 21874)
git-svn-id: trunk@21892 -
2012-07-12 08:42:06 +00:00
michael
1f25547903 * Fixed compilation (mantis #22413)
git-svn-id: trunk@21891 -
2012-07-12 08:37:40 +00:00
masta
f9cdf3d4ca Be more specific in spilling debug messages
Output "Spilling: " instead of "XXX: " in front of spilling debug
messages. This makes the output easier to process.

git-svn-id: trunk@21890 -
2012-07-12 01:11:29 +00:00
masta
e2a744e19b Consolidate do_spill_read/do_spill_written on arm
ARM can not reference an arbitrary offset so it needs some special
handling if the offset goes beyond abs(4095).

The code for do_spill_read and do_spill written used to be very similar.
I've partially factored out the code into spilling_create_load_store.

The former code loaded the offset from a constant pool, which is a waste
of memory-bandwidth and cache lines. The new code tries to find a way to
adjust the baseregister so the memory location can be reached more
easily, this allows us to handle at least +-1MB with just a single
additional ADD or SUB instruction. If that fails we'll resort to the normal
constant loading code, which on it's own will fallback to loading the
constant from a constant-pool.

So instead of:
ldr r1, =16388
ldr r0, [r13, r1]

which will at least uses 4 cycles (2 Instruction cycles + 2 stall
cycles) on most cores.

We try to generate:
add r1, r13, #16384
ldr r0, [r1, #4]

which most armv5+ cores will execute in 2 cycles. We'll also save on
DCache usage.

git-svn-id: trunk@21889 -
2012-07-12 01:11:23 +00:00
pierre
bf8ec92b5c * Use two parameter get_caller_frame function to get correct result on mips
git-svn-id: trunk@21888 -
2012-07-11 22:17:37 +00:00
pierre
324c5ad29d * Use two parameter get_caller_frame function to get correct result on mips
git-svn-id: trunk@21887 -
2012-07-11 22:16:49 +00:00
pierre
d93282e16d Values of TIOGWINSZ, TIOCSWINSZ, TIOCGPGRP and TIOCSPGRP for mipsel
git-svn-id: trunk@21886 -
2012-07-11 22:15:54 +00:00
florian
701a5d76bb * remove unneeded movs
git-svn-id: trunk@21885 -
2012-07-11 20:58:52 +00:00
Jonas Maebe
d6066ed51a * fixed compilation for i386/m68k after r21878/21879
git-svn-id: trunk@21884 -
2012-07-11 17:41:18 +00:00
sergei
083f0a7137 + Added a flag to tarobjectreader constructor that allows it to work as regular tobjectreader if archive signature is missing.
git-svn-id: trunk@21883 -
2012-07-11 17:39:36 +00:00
michael
a8e634d506 * Added option to remove brackets from menu header From AndrewH (Bug ID 21676)
git-svn-id: trunk@21882 -
2012-07-11 17:13:40 +00:00
michael
153f59a38a * Fixed bug ID #22045
git-svn-id: trunk@21881 -
2012-07-11 16:51:50 +00:00
michael
8eeb22720b * Added GetLoadErrorStr function by Mark Morgan Loyd (Bug ID 22321)
git-svn-id: trunk@21880 -
2012-07-11 15:31:09 +00:00
Jonas Maebe
be8f8fec76 * converted tcg.g_releasevaluepara_openarray() to thlcg
git-svn-id: trunk@21879 -
2012-07-11 15:23:18 +00:00
Jonas Maebe
9197ce100e * converted tcg.g_copyvaluepara_openarray() to thlcg
git-svn-id: trunk@21878 -
2012-07-11 15:23:08 +00:00
Jonas Maebe
596d359e02 * use current code page when converting ansichar to unicodestring
git-svn-id: trunk@21877 -
2012-07-11 15:22:31 +00:00
michael
2bb5a1ba7b * Patch from Ludo Brands to test Modified behaviour
git-svn-id: trunk@21876 -
2012-07-11 15:20:11 +00:00
michael
c10901e460 * Patch from Ludo Brands to fix Modified behaviour (bug ID 22381)
git-svn-id: trunk@21875 -
2012-07-11 15:18:37 +00:00
michael
d28eeaee48 * Patch from Ludo Brands to fix late binding for com servers (bug 22378)
git-svn-id: trunk@21874 -
2012-07-11 15:15:28 +00:00
michael
53186644a7 * Added option to fetch all errors
git-svn-id: trunk@21873 -
2012-07-11 15:08:13 +00:00
michael
bcf3dde7eb * Initialize QueryString
git-svn-id: trunk@21872 -
2012-07-11 14:54:26 +00:00
michael
ffc3164594 * Do not decode the URL before passing it on
git-svn-id: trunk@21871 -
2012-07-11 13:54:07 +00:00
michael
8dc7313374 * Added decode parameter to parseuri
git-svn-id: trunk@21870 -
2012-07-11 13:53:25 +00:00
Jonas Maebe
89c230c035 * moved assert handling from second to first pass, so that the code generator
knows that the frame pointer needs to be available (and the code is also
    much simpler this way), fixes test/units/system/tassert7 after r21843

git-svn-id: trunk@21869 -
2012-07-11 11:49:47 +00:00
michael
093748402e * Only one result section for overloaded functions
git-svn-id: trunk@21868 -
2012-07-11 11:15:09 +00:00
michael
789a6452c9 * Implemented overloaded variant of fileage function
git-svn-id: trunk@21867 -
2012-07-11 10:42:23 +00:00
michael
597483610b * Added UniversalTimeToLocal LocalTimeToUniversal as per bug #17435
git-svn-id: trunk@21866 -
2012-07-11 10:15:25 +00:00
michael
64ab9c06d3 * Added GetLocalTimeOffset function
git-svn-id: trunk@21865 -
2012-07-11 09:56:34 +00:00
sergei
21524c56c6 * If subtrahend symbol belongs to current section, generate a RELATIVE relocation instead of PIC_PAIR. Now the corresponding relative expressions in assembler operands compile correctly on all i386 targets (and x86_64 too, although such feature is less important there).
+ Test.

git-svn-id: trunk@21864 -
2012-07-11 09:05:21 +00:00