sergei
|
31edfdc05f
* i386: push references with size OS_F64 using less instructions.
|
11 năm trước cách đây |
sergei
|
0d3f36eebf
- Remove references to global variable 'cg' from methods of tcg and some of its descendants.
|
11 năm trước cách đây |
pierre
|
1cec09f979
Add -Caoldwin32gnu ABI option to cope with 'ret $4' issues in old GNU mingw32 C compiler (version below 4.7)
|
11 năm trước cách đây |
sergei
|
f2096de53a
* tcg386.g_proc_exit: instead of recalculating stack size, use current_procinfo.final_localsize which was calculated in g_proc_entry.
|
11 năm trước cách đây |
sergei
|
179586f589
+ SEH support for Win32. Enable by cycling with OPT=-dTEST_WIN32_SEH.
|
11 năm trước cách đây |
nickysn
|
85e1f444c5
* is_ecx_used modified to only check the callee side, but after a call to
|
12 năm trước cách đây |
nickysn
|
fbca7ee2cb
* check callerside if calleeside isn't available in is_ecx_used. Based on the
|
12 năm trước cách đây |
nickysn
|
a0723ccfd5
* also check if ECX is nonvolatile in is_ecx_used. Not strictly necessary for the current set of i386 calling conventions, but good as an extra safety precaution in case new calling conventions are added or the code is adapted and used on other platforms.
|
12 năm trước cách đây |
nickysn
|
378afb69b2
* optimization in tcg386.g_intf_wrapper: use the much more efficient case 1
|
12 năm trước cách đây |
nickysn
|
aca22a59f7
* optimizations in tcg386.g_copyvaluepara_openarray in order to avoid the
|
12 năm trước cách đây |
nickysn
|
bd0585274e
* tsettings.enablecld converted to a targetswitch ts_cld
|
12 năm trước cách đây |
nickysn
|
52fcc0a407
+ added a new x86-specific compiler option 'enablecld', which controls whether
|
12 năm trước cách đây |
nickysn
|
5c46e6f474
* emit a cld instruction before the rep movsXX in tcg386.g_copyvaluepara_openarray
|
12 năm trước cách đây |
sergei
|
5c4abfa75a
+ Implemented saving/restoring registers using PUSH/POP instructions on i386 targets with non-fixed stack. Provides some advantage in code size (e.g. the compiler becomes about 20KBytes smaller).
|
12 năm trước cách đây |
florian
|
94cf650d9a
* use lea to adjust stack pointer, this is equal or faster on all modern CPUs than add/sub
|
12 năm trước cách đây |
paul
|
51825b6f2e
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
|
12 năm trước cách đây |
pierre
|
5b5a5ab7af
+ Add EXTDEBUG warning if pi_needs_got was not set in pass_1
|
13 năm trước cách đây |
Jonas Maebe
|
b1dc518ac4
* removed systems_need_16_byte_stack_alignment and use target_info.stackalign instead
|
13 năm trước cách đây |
florian
|
3a9e3991be
* the switch -Oouseebp allows the i386 compiler to use ebp as normal register
|
13 năm trước cách đây |
Jonas Maebe
|
d6066ed51a
* fixed compilation for i386/m68k after r21878/21879
|
13 năm trước cách đây |
pierre
|
b9f8934d7e
* Fix for go32v2 specific failure in test/cg/tcalval5 with -Aas option
|
13 năm trước cách đây |
sergei
|
78c0215447
Preparations to native threadvar support:
|
13 năm trước cách đây |
florian
|
ce76ce8769
* fixed wrong tmpref usage as mentioned by Pierre on the mailing list
|
14 năm trước cách đây |
florian
|
69e7d8b02f
* generate correct PIC in tcg386.a_loadaddr_ref_cgpara, resolves #19464
|
14 năm trước cách đây |
florian
|
77f2d6cc0d
* introduce usage of TCGInt in the code generator units
|
14 năm trước cách đây |
svenbarth
|
35b47e491c
Rebase to revision 17306
|
14 năm trước cách đây |
sergei
|
c6accaba5c
* tcg386.g_copyvaluepara_openarray, improved generated code:
|
14 năm trước cách đây |
svenbarth
|
96116a6c3a
Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either.
|
14 năm trước cách đây |
paul
|
56bf42de57
compiler: implement record methods and class methods:
|
15 năm trước cách đây |
Jonas Maebe
|
8b0301409a
+ i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and
|
15 năm trước cách đây |