Jonas Maebe
|
708a2532fc
* consistently define empty saved_mm_registers arrays as containing a single
|
13 سال پیش |
Jonas Maebe
|
f2c82e32cd
- removed g_indirect_sym_load() from hlcgobj/hlcg2ll because this cgobj
|
13 سال پیش |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
13 سال پیش |
Jonas Maebe
|
641b259aed
* adjusted thlcg.g_rangecheck() implementation so it can be used for all
|
13 سال پیش |
Jonas Maebe
|
003a30db6b
- reverted r21246, it breaks tcalext3/5 on x86
|
13 سال پیش |
Jonas Maebe
|
9568693664
* removed superfluous sign extension from a_load_subsetreg_reg() (the value
|
13 سال پیش |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 سال پیش |
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 سال پیش |
Jonas Maebe
|
b512744bfb
* don't overwrite the reg to load in a parameter in tcg.a_load_reg_cgpara()
|
13 سال پیش |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 سال پیش |
Jonas Maebe
|
dc70db9402
* parameter passing support for AIX:
|
13 سال پیش |
Jonas Maebe
|
260958eb45
* changed last parameter of g_indirect_sym_load() to a set and also
|
13 سال پیش |
Jonas Maebe
|
dabcfc2806
+ LOC_(C)LOC_SUBSETREF/G support for tcg.a_loadmm_loc_reg()
|
13 سال پیش |
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 سال پیش |
sergei
|
8c9ad67682
+ tcgexitnode,tcgbreaknode,tcgcontinuenode: added possibility to generate specialized code for leaving unwind-protected regions.
|
14 سال پیش |
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 سال پیش |
sergei
|
6e23565edf
+ Initialize/finalize variants using dedicated helpers, produces both smaller (no RTTI loading necessary) and faster (direct path taken) code.
|
14 سال پیش |
florian
|
4868b09844
* patch by alexvin to replace $ifopt by $push/$pop, resolves #20332
|
14 سال پیش |
florian
|
6d996bf832
* made a_call_ref of PowerPC generic, we need to allocate a register after all on risc platforms
|
14 سال پیش |
Jonas Maebe
|
7f22a2f223
+ support for range checking calculations with hlcgobj
|
14 سال پیش |
florian
|
77f2d6cc0d
* introduce usage of TCGInt in the code generator units
|
14 سال پیش |
florian
|
fb84cb865b
* rebase to trunk@17295
|
14 سال پیش |
florian
|
8cfbb70326
+ generic a_cmp_const_reg_label
|
14 سال پیش |
sergei
|
7f62d5cfb0
* tcg.g_array_rtti_helper: if high-value is a constant, handle it without using a register.
|
14 سال پیش |
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 سال پیش |
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 سال پیش |
florian
|
726b24c591
* (d)allocallcpuregisters must not handle fpu registers on avr
|
14 سال پیش |
florian
|
26fbfaf5a7
+ introduce the usage of asizeint/asizeuint for cpus with sizeof("alu")<>sizeof(pointer)
|
14 سال پیش |
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 سال پیش |
florian
|
5dae691c96
* implementation of bit scan intrinsics by Richard Vida, resolves #17592
|
15 سال پیش |