Jonas Maebe
2f2f394bee
* fixed wrong opcode size
...
git-svn-id: trunk@22855 -
2012-10-27 08:12:31 +00:00
Tomas Hajny
c5ad42e82f
* fix for missing space in emxbind parameters for resource files linking
...
git-svn-id: trunk@22854 -
2012-10-26 20:52:53 +00:00
Tomas Hajny
9a935fb172
* fix for missing space in emxbind parameters for resource files linking
...
git-svn-id: trunk@22853 -
2012-10-26 20:52:11 +00:00
michael
520d51cf7c
* Patch from Ludo brands to add IsLibraryLoaded sqlite/src/sqlite3.inc
...
git-svn-id: trunk@22852 -
2012-10-26 17:10:35 +00:00
reiniero
307b617372
* Deal with DataSize of TStringField being larger than dsMaxStringSize
...
Patch by Laco, mantis 19940
git-svn-id: trunk@22851 -
2012-10-26 12:24:57 +00:00
lacak
3aedcd11f3
fcl-db test: rename obsolete test plus comment why it is safe to remove him at all. See also bug #22124
...
git-svn-id: trunk@22850 -
2012-10-26 08:43:48 +00:00
florian
8c73b0b17b
* disable broken MvnAnd2Bic optimization
...
git-svn-id: trunk@22847 -
2012-10-25 17:51:25 +00:00
sergei
4f201bb826
+ Handle R_X86_64_PLTOFF64 relocation (same as R_X86_64_GOTOFF64 but requests creation of PLT entry).
...
git-svn-id: trunk@22846 -
2012-10-25 16:24:29 +00:00
florian
f142019343
* set default cpu type to armv7a when compiling for armhf
...
git-svn-id: trunk@22845 -
2012-10-24 19:09:16 +00:00
michael
1f3870cc84
* Added NGINX instructions
...
git-svn-id: trunk@22842 -
2012-10-24 07:14:54 +00:00
svenbarth
58d9b0853c
* rtl/m68k/m68k.inc, move:
...
add a check for "count = 0" which happens e.g. inside of System.Assign if called with '' as filename (which is the case inside OpenStdIO)
git-svn-id: trunk@22841 -
2012-10-24 05:03:08 +00:00
svenbarth
842bb90283
* m68k/cgcpu.pas, tcg68k.a_load_ref_reg:
...
"sign_extend" expects the old size, not the new size. This fixes the handling of "InOutRes" which is a Word...
git-svn-id: trunk@22840 -
2012-10-24 05:01:27 +00:00
florian
5e1e42ec2b
* fixes support for cpus with cpunodefaultint for unary minus nodes
...
git-svn-id: trunk@22838 -
2012-10-23 20:27:07 +00:00
florian
d1b2a7732a
+ GetOffsetReg64
...
git-svn-id: trunk@22837 -
2012-10-23 20:16:13 +00:00
florian
a3dff44489
+ support of 64 bit operations on avr
...
git-svn-id: trunk@22836 -
2012-10-23 20:15:47 +00:00
florian
ecd0749d73
* class name in comment fixed
...
git-svn-id: trunk@22835 -
2012-10-23 20:14:34 +00:00
florian
f76ba05758
* avoid useless GetNextReg calls in second_cmp for avr
...
git-svn-id: trunk@22834 -
2012-10-23 20:13:28 +00:00
Jonas Maebe
fd8827d379
* prevent compiler crash caused by double freeing after reporting not
...
overloaded operator errors
git-svn-id: trunk@22833 -
2012-10-23 16:50:30 +00:00
sergei
6023f73e2a
* ELF linker: improved dynamic symbol handling.
...
+ Read .gnu.version sections and ignore local symbols and symbols with non-current version.
+ Check that external symbols are actually present in dynamic objects.
git-svn-id: trunk@22832 -
2012-10-23 15:16:10 +00:00
sergei
f94ba86bb9
* ModulesLinkToLibc: another fix. We also have to look in ImportLibraryList because items contained there aren't yet merged into linkothersharedlibs when this function is called.
...
git-svn-id: trunk@22831 -
2012-10-23 14:51:35 +00:00
sergei
90d564e6a5
+ ELF linker: handle R_386_GOTOFF and R_X86_64_GOTOFF64 relocations
...
git-svn-id: trunk@22830 -
2012-10-23 14:13:31 +00:00
svenbarth
65a4d8baa2
Revert 22814. While this revision might fix compiler linking for Coldfire it breaks running any Coldfire up during OpenStdIO... I prefer running apps instead of a linking compiler.
...
Seems that I need to think this "fixref" stuff for symbols through a bit more...
git-svn-id: trunk@22826 -
2012-10-23 05:14:17 +00:00
florian
eeef57a2a1
* merging more of Jeppe Johansen's arm-embedded branch
...
git-svn-id: trunk@22824 -
2012-10-22 21:12:29 +00:00
masta
e91b15b2a4
Disabled MulAdd2MLA and MulSub2MLS Peephole optimizers for thumb2
...
According to Jeppe Johansen these are currently broken and emit the
operands in the wrong order.
git-svn-id: trunk@22822 -
2012-10-22 15:30:24 +00:00
masta
b047a80b14
Small fixes to ARM-Embedded RTL from Jeppe Johansen
...
Added FSMC register definitions(from Anton Rieckert)
Fixed faulty NVIC definitions
git-svn-id: trunk@22820 -
2012-10-22 11:59:28 +00:00
michael
82f03f0e40
* added comment to explain the DefaultFileModuleClass purpose
...
git-svn-id: trunk@22819 -
2012-10-22 11:20:52 +00:00
masta
e327b4581c
Use TRegNameTable instead of array[tregisterindex] of string[10]
...
TRegNameTable is defined in compiler/rgbase.pas and is an array of
strings, limited to the maximum length of the used register names.
r22792 added a long register name but did not scale the string-size
enough, resulting in the compiler built breaking for arm.
git-svn-id: trunk@22817 -
2012-10-22 10:23:21 +00:00
lacak
65a8b90356
Char-case is not guaranteed to be always upper-case, so use LowerCase like others sqlDB connections.
...
git-svn-id: trunk@22816 -
2012-10-22 08:07:07 +00:00
florian
7150832ec9
+ Cortex-M3 special registers, resolves #23185
...
git-svn-id: trunk@22815 -
2012-10-21 20:06:07 +00:00
svenbarth
cb8db8fa23
* m68k/cgcpu.pas, tcg68k.fixref:
...
always handle the symbol if base is set
git-svn-id: trunk@22814 -
2012-10-21 19:46:41 +00:00
Jeppe Johansen
628d46f2d3
Fixed Bsf* functions on platforms that support RBIT
...
Fixed stackframe epilogue code for Thumb2 to allow proper processing of interrupts
git-svn-id: branches/laksen/arm-embedded@22813 -
2012-10-21 19:13:59 +00:00
florian
970405c0f3
o merging r22801 of Jeppe Johansen
...
git-svn-id: trunk@22812 -
2012-10-21 19:05:59 +00:00
Jonas Maebe
8097697362
* added jvm to fullcycle now that all warnings are fixed
...
git-svn-id: trunk@22811 -
2012-10-21 17:56:59 +00:00
Jonas Maebe
4dd2aff6c6
* explicitly disable overflow checking because that blows up the code far
...
beyond the 64kb per method limit (so that all tests can be compiled/run
with the -Co command line parameter to check that functionality against
false positives)
git-svn-id: trunk@22810 -
2012-10-21 17:56:50 +00:00
Jonas Maebe
027776a708
+ test for range checking (and against false positives for overflow checking)
...
git-svn-id: trunk@22809 -
2012-10-21 17:56:42 +00:00
Jonas Maebe
29263eb343
+ full support for overflow checking on the JVM target (note: significantly
...
increases code size, because not natively supported by the JVM)
git-svn-id: trunk@22808 -
2012-10-21 17:56:33 +00:00
Jonas Maebe
1adeec6212
* fixed unaryminus overflow check for high level targets (call helper via
...
hlcg, and use compproc name)
* fixed unaryminus overflow check for targets that use the generic code
for both 32 and 64 bit integers even if their "native" integer size
is 32 bit (by not checking against low(aint), but opsize.low)
git-svn-id: trunk@22807 -
2012-10-21 17:56:28 +00:00
Jonas Maebe
6abc6106e1
- removed unused local variable
...
git-svn-id: trunk@22806 -
2012-10-21 17:56:20 +00:00
Jonas Maebe
7cf8bcd7eb
* initialise dollarsign field of jasmin tasminfo
...
git-svn-id: trunk@22805 -
2012-10-21 17:56:16 +00:00
Jonas Maebe
1a8128fa72
* initialize ovloc.loc in a_op*checkoverflow
...
git-svn-id: trunk@22804 -
2012-10-21 17:56:07 +00:00
Jonas Maebe
439741178d
* test has to fail: add { %fail } and moved to webtbf
...
git-svn-id: trunk@22803 -
2012-10-21 17:28:20 +00:00
svenbarth
5d28872a21
* m68k/cgcpu.pas, tcg68k.fixref:
...
also make m68k's fixref apply to the assumption that a register isn't modified in the cg
git-svn-id: trunk@22802 -
2012-10-21 17:19:09 +00:00
Jeppe Johansen
4e84431dde
Fix some optimizations which assume that there are 3 operands
...
Add simple Mul+Sub/Mul+Add into MLS/MLA optimizations
Fix some other small issues in the optimizer
Implement Interlocked* functions with proper use of LDREX/STREX
git-svn-id: branches/laksen/arm-embedded@22801 -
2012-10-21 16:20:52 +00:00
florian
86429c634f
- remove definition of QWord as suggested by Simon Ameis in #22465
...
git-svn-id: trunk@22800 -
2012-10-21 14:47:59 +00:00
svenbarth
a34f28c067
The compiler inserts ".balign 4" directives before some jump labels, but sometimes the instruction before the align is not a "JMP". In that case we encounter an illegal instruction, because m68k-as does not seem to generate "NOP" instruction in such cases.
...
So we need to do this manually by changing (in that case) from ".balign" to ".balignw" and passing the opcode of the "NOP" instruction as a argument. The Coldfire manual suggests here to use the "TPF" instruction, but somehow QEMU does not interpret that correctly.
aggas.pas, tgnuassembler.writetree:
* keep track of the last "tai" and pass that to "doalign"
* doalign: do the special handling mentioned above for m68k
git-svn-id: trunk@22799 -
2012-10-21 14:18:08 +00:00
svenbarth
f0aad6dbc4
* m68k/n68kadd.pas, t68kaddnode.second_cmpordinal:
...
for "CMP" it is important to note that the first operand (which can be basically a register, a constant or a reference) is substracted from the second operand (which needs to be a data register) and not the other way round
git-svn-id: trunk@22798 -
2012-10-21 13:59:05 +00:00
svenbarth
a266d73409
* rtl/m68k/setjump.inc:
...
correctly dummy out setjump as "d0 <> 0" means that longjmp was executed (and d0 could be set from the calling function)
git-svn-id: trunk@22797 -
2012-10-21 13:56:48 +00:00
svenbarth
05fc3bc427
* m68k/ra68kmot.pas, tm68kmotreader.gettoken:
...
if "firsttoken" isn't set we must not take the possibility into account that the token could be an opcode
git-svn-id: trunk@22796 -
2012-10-21 13:54:55 +00:00
Jonas Maebe
1822c46d8a
* don't crash when parsing exit(xxx) in a constructor (mantis #23110 )
...
git-svn-id: trunk@22795 -
2012-10-21 13:43:03 +00:00
Jonas Maebe
6497d3c994
- removed no longer used/supported af_allowdirect flag (direct assembler
...
reader support)
git-svn-id: trunk@22794 -
2012-10-21 13:42:58 +00:00