florian
|
af6ffd751f
+ generate optimized code for shifts/rotates by constants
|
10 سال پیش |
Jeppe Johansen
|
03880c2f74
Added some peephole optimizations, and fixed generic unconditional jump optimizations, for AVR.
|
10 سال پیش |
florian
|
9a5b458d4e
* allocate registers properly before icall
|
10 سال پیش |
florian
|
5c8d0d87cd
o better code generation for avr:
|
10 سال پیش |
florian
|
1969abec77
* improved code generation in a_op_const_reg_internal and a_op_const_reg_reg
|
10 سال پیش |
florian
|
7f1585b99a
* do not save registers for subroutines which never return
|
10 سال پیش |
florian
|
9e51283ae0
+ initial a_op_const_reg_reg and a_op_reg_reg_reg implementations to generate optimized 16 Bit multiplications on avr
|
10 سال پیش |
florian
|
8b7a449cf1
* clear r1 after 8 Bit multiplication, resolves #27838
|
10 سال پیش |
florian
|
4d01271944
* due to avr's harvard architecture, loads of code labels need to use the gs(...) macro
|
10 سال پیش |
florian
|
bd803769b8
* fix compilation
|
10 سال پیش |
florian
|
9559dabe51
* function result is in r24:r25
|
10 سال پیش |
florian
|
1ef7e36f3c
* some fixes for handling parameters passed on the stack
|
10 سال پیش |
florian
|
03fa8336de
o several avr fixes
|
10 سال پیش |
florian
|
6a032bee1b
* improved code generation for a_load_const_reg and a_op_const_reg
|
10 سال پیش |
florian
|
63bf17440c
* use volatile registers first
|
10 سال پیش |
Jonas Maebe
|
61e4a1b811
+ added tasmlist parameter to getintparaloc() (needed for llvm)
|
10 سال پیش |
Jeppe Johansen
|
8c105d4c97
Fix off by 8 error.
|
10 سال پیش |
florian
|
873d88ba57
* fix 8 Bit*8 Bit multiplication according to #27737 using modified code supplied by Georg Hieber
|
10 سال پیش |
florian
|
ad995eb121
* use correctly CALL/RCALL and JMP/RJMP on avr, resolves #27738
|
10 سال پیش |
Jonas Maebe
|
b745dcc64c
* moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because
|
11 سال پیش |
sergei
|
e4fea2ebc8
* Dummy implementations of a_bit_scan_reg_reg and g_stackpointer_alloc in tcg, removes the need to override these methods in every descendant code generator solely to avoid "constructing a class with abstract method" warning.
|
11 سال پیش |
Jeppe Johansen
|
10522e9779
Disabled a_adjust_sp optimized steps for now.
|
11 سال پیش |
Jeppe Johansen
|
2227045e23
Replace forbidden chars in more places in the GAS assembler writer.
|
11 سال پیش |
Jeppe Johansen
|
e33550b67d
Added support for X,Y,and Z register aliases plus low/high forms, and post-incrementation in AVR assembler reader.
|
11 سال پیش |
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.
|
11 سال پیش |
florian
|
cb48c2afca
* some fixes for parameter handling on avr
|
11 سال پیش |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
11 سال پیش |
Jonas Maebe
|
69c29a415f
* pass the procdef to getintparaloc instead of only the proccalloption, so
|
12 سال پیش |
florian
|
a3dff44489
+ support of 64 bit operations on avr
|
12 سال پیش |
Jonas Maebe
|
7a0ae38700
+ also specify the parameter def when allocating a parameter via
|
13 سال پیش |