florian
|
84a1f614d9
* fix several double ;
|
5 jaren geleden |
florian
|
82a3877126
+ x86: track use of full ymm registers and generate vzeroupper if needed
|
5 jaren geleden |
florian
|
8f0a3cfce7
* x86-64: adjust stack by push/pop if possible
|
5 jaren geleden |
florian
|
ef3155c2ef
* there is no exit stackframe needed if a subroutine never returns
|
5 jaren geleden |
Jonas Maebe
|
1e3f72403e
* renamed getintparaloc to getcgtempparaloc
|
5 jaren geleden |
florian
|
ba203c0564
+ x86 makes use of fpu_capabilities
|
6 jaren geleden |
florian
|
367bc18bc5
* cfa for x86-64 fixed
|
6 jaren geleden |
florian
|
ded001753d
+ initial native x86-64 support
|
6 jaren geleden |
florian
|
64ad48e89e
* forgotten part of r39750
|
7 jaren geleden |
Jonas Maebe
|
4686f61002
* keep track of the temp position separately from the offset in references,
|
7 jaren geleden |
nickysn
|
518cdf9674
* replaced the saved_XXX_registers arrays with virtual methods inside
|
7 jaren geleden |
florian
|
b1dff29cbf
* removed unused units
|
8 jaren geleden |
Jonas Maebe
|
265c8e7bbc
+ support for specifying ms_abi_default, ms_abi_cdelc, sysv_abi_default, and
|
8 jaren geleden |
Jonas Maebe
|
880d438704
* renamed t<cpuname>procinfo to tcpuprocinfo for all targets, so we can
|
8 jaren geleden |
Jonas Maebe
|
a25ebbba3e
+ added volatility information to all memory references
|
8 jaren geleden |
sergei
|
eb86cd47c6
* tcgx86_64.g_proc_entry: Don't crash if 'list' is initially empty. Went unnoticed this far because ncgutil.gen_proc_entry_code adds some items before calling cg.g_proc_entry.
|
9 jaren geleden |
sergei
|
1b965e6766
* x86: Don't save/restore integer registers that are volatile per calling convention of current procedure. It implies that nothing will be saved for procedures with OLDFPCCALL, FAR16 and PASCAL and calling conventions. OLDFPCCALL restores behavior that was in effect before r25224.
|
10 jaren geleden |
Jonas Maebe
|
61e4a1b811
+ added tasmlist parameter to getintparaloc() (needed for llvm)
|
10 jaren geleden |
Jonas Maebe
|
67b8aceaee
* synchronized with privatetrunk till r30095
|
10 jaren geleden |
Jonas Maebe
|
79a06b1514
+ iphonesim/x86_64 target (64 bit iOS simulator)
|
10 jaren geleden |
florian
|
35a04ad095
* modified patch of Paul W to replace leave by mov/pop, resolves #26455
|
10 jaren geleden |
Jonas Maebe
|
d8c898742a
* handle the fact that records containing a single extended value are
|
11 jaren geleden |
Jonas Maebe
|
8244d366d0
- moved deallocation of NR_PIC_OFFSET_REG from the x86_64 to the i386 code
|
11 jaren geleden |
Jonas Maebe
|
b745dcc64c
* moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because
|
11 jaren geleden |
florian
|
d8c0f11ff9
+ cs_userbp optimizer switch, so on x86-64 the compiler can make use of rbp if it is not needed as frame pointer
|
11 jaren geleden |
sergei
|
f508442a7e
* Emit everything to the same asmlist (fixing copy-paste error).
|
12 jaren geleden |
sergei
|
409e176ded
* Factored reusable (SEH-related) piece of code into separate procedure.
|
12 jaren geleden |
sergei
|
da2887a4ec
* x86_64-win64: SEH finalization procedures have frame pointer set to RBP but since r25389 they save registers relative to RSP. Fixed offsets for .seh_savereg/.seh_savexmm directives.
|
12 jaren geleden |
sergei
|
e41149a7ec
* x86_64: reworked register saving/restoring to use PUSH/POP instructions for procedures with RSP-based frame and SEH finalization procedures. XMM registers are also saved/restored without involving tempgen in mentioned cases. This prevents SEH finalization procedures from saving registers in stack frame of their parent procedures, fixing incorrect unwind bytecode (Mantis #24791). It also reduces executable size (for compiler itself, by about 100Kb).
|
12 jaren geleden |
sergei
|
5dda96bdfe
- Tcgx86_64.init_register_allocators: removed 'preserved_by_proc' parameter, because it isn't used by RA in any way.
|
12 jaren geleden |