sergei
|
85f7914906
* Don't generate .seh_endprologue if SEH directives are present in the text of (pure assembler) procedure, as it results in duplicate .seh_endprologue.
|
14 years ago |
sergei
|
4c21beb48e
win64 unwinding, misc fixes:
|
14 years ago |
sergei
|
b997094755
+ Generate unwind bytecode for function prologues on win64.
|
14 years ago |
sergei
|
9608c4eabe
* Interface wrappers must be global when linking smart, Mantis #19462. Other targets already have this condition in place.
|
14 years ago |
svenbarth
|
35b47e491c
Rebase to revision 17306
|
14 years ago |
sergei
|
c939beee70
* Changed register allocation order for x86_64, putting first registers that don't need to be preserved by procedure. This way registers needing preservation are allocated less frequently (and for non-complex leaf functions not allocated at all), reducing amount of entry/exit code.
|
14 years ago |
svenbarth
|
96116a6c3a
Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either.
|
14 years ago |
paul
|
b317139006
compiler: fix compilation problems caused by tprocdef._class -> tprocdef.struct rename which was found by make fullcycle
|
14 years ago |
Jonas Maebe
|
15e9c54b44
* fixed ABI compliance for parameter passing and function returning on all
|
15 years ago |
Jonas Maebe
|
283018a3bf
* changed tprocdef.funcretloc[] from a tlocation into a tcgpara so it can
|
15 years ago |
Jonas Maebe
|
9bc15a5f61
* renamed a_param_* to a_load_*_cgpara
|
15 years ago |
florian
|
c1f3d8dcaa
* unified names of system_*/systems_* sets
|
15 years ago |
pierre
|
e67307aa66
* New constant system_needs_16_byte_stack_alignment
|
15 years ago |
Jonas Maebe
|
d1538ab023
o added ARM VPFv2/VFPv3 support:
|
15 years ago |
florian
|
515774b864
* merged armthum branch
|
16 years ago |
Jonas Maebe
|
7d459cf12a
* the compiler now explicitly keeps track of the minimally guaranteed
|
16 years ago |
Jonas Maebe
|
a6b9b3e00a
* fixed a_param_ref for source sizes < 8 bytes
|
17 years ago |
Jonas Maebe
|
3e63d3f1dd
- removed {$ifndef cpu64bit} code
|
17 years ago |
Jonas Maebe
|
3d89822bc4
* free saved_standard_registers and saved_mm_registers in
|
17 years ago |
Jonas Maebe
|
032352d98b
+ darwin/x86_64 support
|
18 years ago |
florian
|
00d6a03b2c
+ default code now preserves mm registers
|
18 years ago |
florian
|
fe69d19f9c
* align stack properly if no stack frame is generated, should resolve #8986
|
18 years ago |
florian
|
36a500c38c
* don't coalescate with frame/stack pointer
|
18 years ago |
florian
|
98d6014c73
* register saving on win64 fixed
|
18 years ago |
peter
|
658c46b903
* remove tdictionary and tindexarray
|
19 years ago |
florian
|
85d63d9fa9
* settings refactored
|
19 years ago |
florian
|
5eef73c1ab
* fixed passing of registers on x86-64_linux, should fix #7613
|
19 years ago |
florian
|
61d86150aa
* interface wrappers for win64 abi fixed
|
19 years ago |
florian
|
2d3d4a66f6
* keep stack aligned to 16 byte borders on winx64
|
19 years ago |
peter
|
0ec2921bbe
* split newasmsymbol to refasmsymbol and defineasmsymbol
|
19 years ago |