florian
|
8dfcc2b399
* do not reuse tmp. registers in tbasecgarm.handle_load_store
|
před 11 roky |
florian
|
9464dad2b4
* handle vldr/vstr references with offsets correctly
|
před 11 roky |
florian
|
686a2d2f3f
+ Support omitting the frame pointer on arm even in procedures with incoming parameters
|
před 11 roky |
florian
|
6deb0b35b5
* handle fpu_vfpv3_d16 properly for thumb2
|
před 11 roky |
masta
|
2d2cab0e7a
Fix some internalerror codes in the ARM CG
|
před 11 roky |
sergei
|
9c1f917e3a
* a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around.
|
před 11 roky |
Jeppe Johansen
|
07b2982e77
Don't do ARM FoldShiftLdrStr peephole optimization if there's an offset in the reference.
|
před 11 roky |
masta
|
0736bf4ded
Try to change typical constant AND-masking operations into shifts for ARM
|
před 11 roky |
nickysn
|
85dd9e5789
+ added a size parameter to optimize_op_const and do a sign extension of the 'a' parameter up from the specified size, so that things like (i and $ffffffff) get optimized away the same way as (i and -1)
|
před 11 roky |
masta
|
3ab665e554
Try to split constant XORs into two shiftimms on ARM.
|
před 11 roky |
masta
|
f8889e3d6d
Use optimize_op_const in ARM cg
|
před 11 roky |
florian
|
561ec1f782
* unified internal errors
|
před 11 roky |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
před 12 roky |
Jonas Maebe
|
555634b755
* (re)set upper bits of register when appropriate for all operations in
|
před 12 roky |
florian
|
8fb7cf822b
* unified internal errors
|
před 12 roky |
florian
|
e0f48b9f02
* calculate stack correction on exit correctly if stack parameters are passed
|
před 12 roky |
florian
|
36e6f99843
* fix tthumbcgarm.g_flags2reg, mov reg,#imm for thumb updates the flags
|
před 12 roky |
florian
|
e2ec3bbcb0
* do shifts for sign/zero extensions correctly
|
před 12 roky |
florian
|
333e84202f
* fixed a_load_reg_reg for thumb
|
před 12 roky |
Károly Balogh
|
86cb4d0c12
use a TSuperRegister instead of an aint
|
před 12 roky |
Károly Balogh
|
c677f1fd69
trying harder to follow the code style (no functional changes)
|
před 12 roky |
Károly Balogh
|
cb4d01627f
save an extra reg if it's required to keep 64bit stack alignment on ARM
|
před 12 roky |
florian
|
d4968e054b
+ arm: tsettings.instructionset
|
před 12 roky |
florian
|
f34bee1df7
* arm thumb does not support ror reg1,reg2,#imm
|
před 12 roky |
florian
|
3ebe708574
* do not use r13/r15 for certain data processing operations
|
před 12 roky |
florian
|
bb73a2891b
* prevent generation of mul/mla statements with illegal registers
|
před 12 roky |
Jonas Maebe
|
4ec9ec2009
+ PIC support for Darwin/ARM:
|
před 12 roky |
florian
|
6606955b88
+ basic support for pic on arm-linux
|
před 12 roky |
Jonas Maebe
|
57cdd8c106
* set symbol type/binding of data referred by ppc and arm/darwin stubs (part
|
před 12 roky |
Jonas Maebe
|
3b9b6a0cd7
* explicitly define the asmsymbols for Darwin call stubs as local
|
před 12 roky |