sergei
|
d93d36e6d3
* Win64: Use separate implementation of CaptureBacktrace that calls RtlCaptureStackBackTrace. This way it does not require non-optimized code to work correctly.
|
преди 10 години |
svenbarth
|
2d454dc8fa
Move DynLibs support to System unit using a manager approach like for Threads, WideStrings, etc.. This is needed so that we can support features like "delayed" and loading of dynamic packages.
|
преди 10 години |
florian
|
43515ab109
* explicitly add asmmode, resolves #27255
|
преди 10 години |
sergei
|
ae68a4962f
- RTL: merged functionality of InitWideStringManager into InitUnicodeStringManager and removed the former.
|
преди 11 години |
sergei
|
3a5e6485b5
- RTL: removed InitVariantManager, it was an empty procedure since day 1.
|
преди 11 години |
sergei
|
3a55c4301e
* Since StackTop=StackBottom+StackLength, any two variables are sufficient to describe stack, the third one is redundant.
|
преди 11 години |
sergei
|
c83f4c5ddc
* Windows targets: removed 'errno' threadvar, OS error codes can be passed directly to Errno2InOutRes().
|
преди 11 години |
sergei
|
489b23cecd
* Made TStartupInfo type common for win32 and win64 and updated as suggested by Mantis #23074.
|
преди 11 години |
pierre
|
3ab1762d92
Use new GetExceptionPointer nostackframe assembler function to avoid 32bit relocation on .bss problem
|
преди 12 години |
sergei
|
6788fd6433
+ Win64 SEH: install a top-level exception handler around thread functions. This was a missing puzzle piece of SEH support. Now behavior of unhandled exceptions in non-main threads is consistent with that of main thread, and, in general, behavior of SEH-enabled RTL is consistent with one without SEH.
|
преди 12 години |
sergei
|
bc4c1149c3
+ Native threadvar implementation for Win32 and Win64 (most of it, but not yet complete).
|
преди 12 години |
florian
|
0e9139c914
* retrieve stack size correctly
|
преди 13 години |
florian
|
a6a1f2a0a1
* properly retrieve the stacktop on win64
|
преди 13 години |
Tomas Hajny
|
d442d14e0c
+ FileNameCasePreserving added - see #18066 in Mantis
|
преди 13 години |
sergei
|
cd44c5f45c
Win32 and Win64, fixed DLL exit sequence, resolves #14603:
|
преди 13 години |
sergei
|
ea37d71f67
- win64: removed empty procedures remove_exception_handlers and fpc_cpucodeinit.
|
преди 13 години |
sergei
|
cbad0abab5
+ Platform-specific exception support for x86_64-win64. Enable by cycling with OPT=-dTEST_WIN64_SEH.
|
преди 13 години |
florian
|
562932a2c9
* change dllparam into PtrInt, this is required for 64 bit systems, patch based on Gennadiy's patch in #21089, resolves #21089
|
преди 13 години |
sergei
|
cd347e40b2
* Moved existing exception-related definitions into separate include file seh64.inc, and added some more WinAPI definitions needed for SEH.
|
преди 14 години |
sergei
|
ebb2205c63
* Moved TExceptionRecord definition to sysos.inc, it is identical for all Windows targets.
|
преди 14 години |
sergei
|
bcbd25568e
* Call InitHeap before InitSystemThreads in TLS callback (necessary because InitSystemThreads calls RelocateHeap), and skip both of them in initialization section of system.pp if they have been called from TLS callback. This restores correct initialization sequence which was broken by r19779, resulting in lots of debug messages about corrupted heap when running tests/test/theapthread.pp
|
преди 14 години |
sergei
|
32094761ef
* win32/system.pp, win64/system.pp: Moved duplicated declarations of WinAPI functions to sysos.inc (Florian's comment about include ordering is no longer true, wstrings.inc comes after sysos.inc these days).
|
преди 14 години |
paul
|
1ccf16358c
rtl: init widestring and unitcodestring managers before initialization of Standard IO files (stdin,stdout,stderr)
|
преди 14 години |
sergei
|
8e41ecfd54
* Made a stupid mistake in r19460: restoring rbp from rbp-relative reference will obviously crash. This went unnoticed however, because PASCALMAIN does not return and wrong code is never executed. Fixed by storing rbp in non-volatile register instead of local var.
|
преди 14 години |
sergei
|
1404b7397a
- Win64, EXE_Entry: removed messing with gs:[0], it won't work anyway.
|
преди 14 години |
sergei
|
268d8685e7
- Removed SysResetFPU/SysInitFPU from win32/win64 system unit initialization. It is redundant here because it is called from fpc_initializeunits->fpc_cpuinit (on win64) or from fpc_cpucodeinit (on win32).
|
преди 14 години |
sergei
|
ad5d2ccabb
* Moved command line handling and randomize() to syswin.inc, so a single copy of code is used for both win32 and win64. This implies that apostrophe is no longer supported as quoting symbol in win64.
|
преди 14 години |
sergei
|
f35a8179b1
* Status codes are identical for win32 and win64, moved them to syswin.inc.
|
преди 14 години |
sergei
|
ad94e5e719
* Link TLS directory and callbacks only into executables. It is not necessary for DLLs, because callback functionality is contained in DllMain. Moreover, DLLs with TLS directory cannot be dynamically loaded in Windows versions prior to Vista.
|
преди 14 години |
sergei
|
50952945e1
* Moved WideString-related code, which is identical for Win32 and Win64, into syswin.inc
|
преди 14 години |