#
90d62fd9 |
|
29-Aug-2022 |
Augustin Cavalier <waddlesplash@gmail.com> |
TLS.h: Drop inline assembly from the header. This was a holdover from BeOS, which did this as inline assembly. We do not on any platform other than 32-bit x86, and even there we may have preferred to do things a little differently on non-BeOS ABIs. Most things ported from other systems, or even native apps, are going to use _Thread_local variables anyway, which will bypass this system altogether.
|
#
34464374 |
|
05-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
libroot/x86_64: minor improvements in TLS code * less inline asm * std::atomic<> instead of obsolete atomic_*()
|
#
44c0c4d3 |
|
03-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
runtime_loader: add support for ELF based TLS This patch introduces support of ELF based TLS handling with lazy allocation and initalization of TLS block for each DSO and thread. The implementation generally follows the official ABI except that generation counter in dtv is in fact a pointer to Generation object that contains both generation counter and size of the dtv. That simplified the implementation a bit, but could be changed later. The ABI requirements regariding in memory position of TLS block is not honoured what results in static TLS model being unsupported. However, that should not be a problem as long as "executables" in Haiku are in fact shared objects and optimizations which require specific TLS block in memory layout are not possible anyway.
|
#
634bc98a |
|
02-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
libroot/x86[_64]: relax asm constraints in tls_*() functions
|
#
03add8e7 |
|
29-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Implemented TLS for x86_64.
|
#
bd8b78e6 |
|
28-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Added a dumb TLS implementation rather than printing an error. Will properly implement TLS soon, for now a "working" implementation is needed for anything to work properly.
|
#
fd9f32c0 |
|
22-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Added some libroot bits for x86_64. Still some parts missing (the glibc bits + fenv.c), plus the TLS functions are only stubs.
|
#
344643740a95c2e3bcdc2286c3310527bcbb5844 |
|
05-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
libroot/x86_64: minor improvements in TLS code * less inline asm * std::atomic<> instead of obsolete atomic_*()
|
#
44c0c4d3d0d68c3c3db23858b1089d3cf51bdf16 |
|
03-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
runtime_loader: add support for ELF based TLS This patch introduces support of ELF based TLS handling with lazy allocation and initalization of TLS block for each DSO and thread. The implementation generally follows the official ABI except that generation counter in dtv is in fact a pointer to Generation object that contains both generation counter and size of the dtv. That simplified the implementation a bit, but could be changed later. The ABI requirements regariding in memory position of TLS block is not honoured what results in static TLS model being unsupported. However, that should not be a problem as long as "executables" in Haiku are in fact shared objects and optimizations which require specific TLS block in memory layout are not possible anyway.
|
#
634bc98a3cbfaa922443a3b9351f83f524592ea6 |
|
02-May-2014 |
Pawel Dziepak <pdziepak@quarnos.org> |
libroot/x86[_64]: relax asm constraints in tls_*() functions
|
#
03add8e7c216a9ba83a2c565cb82962d6cdc53c4 |
|
29-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Implemented TLS for x86_64.
|
#
bd8b78e6eedb24ab48771d18db6e091488cf53d3 |
|
28-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Added a dumb TLS implementation rather than printing an error. Will properly implement TLS soon, for now a "working" implementation is needed for anything to work properly.
|
#
fd9f32c0db56a5cebdda79c329b479355bdde87c |
|
22-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Added some libroot bits for x86_64. Still some parts missing (the glibc bits + fenv.c), plus the TLS functions are only stubs.
|