Jonas Maebe
|
7a0ae38700
+ also specify the parameter def when allocating a parameter via
|
13 rokov pred |
Jonas Maebe
|
708a2532fc
* consistently define empty saved_mm_registers arrays as containing a single
|
13 rokov pred |
Jonas Maebe
|
f2c82e32cd
- removed g_indirect_sym_load() from hlcgobj/hlcg2ll because this cgobj
|
13 rokov pred |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
13 rokov pred |
Jonas Maebe
|
641b259aed
* adjusted thlcg.g_rangecheck() implementation so it can be used for all
|
13 rokov pred |
Jonas Maebe
|
003a30db6b
- reverted r21246, it breaks tcalext3/5 on x86
|
13 rokov pred |
Jonas Maebe
|
9568693664
* removed superfluous sign extension from a_load_subsetreg_reg() (the value
|
13 rokov pred |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 rokov pred |
sergei
|
5f93d9992a
* Ignore FPU/MM registers in tcg.(de)allocallcpuregisters if they are not used in current procedure. This is consistent with logic of tcgcallnode and removes a lot of useless xmm regallocs on win64.
|
13 rokov pred |
Jonas Maebe
|
b512744bfb
* don't overwrite the reg to load in a parameter in tcg.a_load_reg_cgpara()
|
13 rokov pred |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 rokov pred |
Jonas Maebe
|
dc70db9402
* parameter passing support for AIX:
|
13 rokov pred |
Jonas Maebe
|
260958eb45
* changed last parameter of g_indirect_sym_load() to a set and also
|
13 rokov pred |
Jonas Maebe
|
dabcfc2806
+ LOC_(C)LOC_SUBSETREF/G support for tcg.a_loadmm_loc_reg()
|
13 rokov pred |
sergei
|
06192a8137
Values of managed variables are never ever used after decrementing reference on the variable, so there is no point of having a 'decrement reference' as a separate operation. We can always do 'finalize', i.e. clear the contents after decref.
|
13 rokov pred |
sergei
|
8c9ad67682
+ tcgexitnode,tcgbreaknode,tcgcontinuenode: added possibility to generate specialized code for leaving unwind-protected regions.
|
14 rokov pred |
sergei
|
a32fdc3ae6
+ Added a simple helper tcg.g_call, intended to replace allocallcpuregisters+a_call_name+deallocallcpuregisters sequence which is used all over the place.
|
14 rokov pred |
sergei
|
6e23565edf
+ Initialize/finalize variants using dedicated helpers, produces both smaller (no RTTI loading necessary) and faster (direct path taken) code.
|
14 rokov pred |
florian
|
4868b09844
* patch by alexvin to replace $ifopt by $push/$pop, resolves #20332
|
14 rokov pred |
florian
|
6d996bf832
* made a_call_ref of PowerPC generic, we need to allocate a register after all on risc platforms
|
14 rokov pred |
Jonas Maebe
|
7f22a2f223
+ support for range checking calculations with hlcgobj
|
14 rokov pred |
florian
|
77f2d6cc0d
* introduce usage of TCGInt in the code generator units
|
14 rokov pred |
florian
|
fb84cb865b
* rebase to trunk@17295
|
14 rokov pred |
florian
|
8cfbb70326
+ generic a_cmp_const_reg_label
|
14 rokov pred |
sergei
|
7f62d5cfb0
* tcg.g_array_rtti_helper: if high-value is a constant, handle it without using a register.
|
14 rokov pred |
sergei
|
37d5a6c354
* tcg.g_array_rtti_helper(): When converting 'high' to 'length', use an intermediate register to do the increment, so that the original value of 'high' parameter is preserved regardless of platform and optimization settings. Should fix regressions introduced by r17068.
|
14 rokov pred |
sergei
|
54bc8efa0b
* Fixed reference counting of open array parameters passed by value. RTTI of the array itself is useless in this case, as it does not provide correct element count. Now using dedicated helpers which take RTTI of array element and the element count. Resolves #18859.
|
14 rokov pred |
florian
|
726b24c591
* (d)allocallcpuregisters must not handle fpu registers on avr
|
14 rokov pred |
florian
|
26fbfaf5a7
+ introduce the usage of asizeint/asizeuint for cpus with sizeof("alu")<>sizeof(pointer)
|
14 rokov pred |
paul
|
dad8313512
compiler: handle dispinterfaces the same way as com interfaces because they are IDispatch descendants: increment/decrement they references in assignments and parameters passing by _AddRef, _Release
|
14 rokov pred |