History log of /haiku/src/system/libroot/os/arch/x86_64/Jamfile
Revision Date Author Comments
# 936e89e1 04-Apr-2019 Augustin Cavalier <waddlesplash@gmail.com>

libroot/os: Reshuffle stack_trace.cpp a little more.

* Add missing "generic" inclusion on x86; fixes the build there.
* Name the file the same way as the other files in its directory.


# 2f2d56e2 01-Apr-2019 PulkoMandy <pulkomandy@pulkomandy.tk>

Move stack_trace.cpp to generic directory.

4 architectures are using it, so it is generic enough.
Make it error out for platforms where the stack grows in the other
direction. Another implementation can be added for them.

Change-Id: Ia52b5dd34da7b5ebcca0782af079c43d72ba3a8e
Reviewed-on: https://review.haiku-os.org/c/1340
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# b3e749b0 28-May-2018 Jérôme Duval <jerome.duval@gmail.com>

kernel,libroot,boot: remove c++11 and gnu++11 flags.

* c++14 is the default with current GCC
* remove pragmas for x86intrin.h


# c012e7e9 11-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

libroot: Add private __arch_get_stack_trace().

It can be used to get a stack trace of the current thread. Note that
this works by walking frame pointers and will not produce anything
useful if an application is compiled with the frame pointers omitted.

The stack base and end addresses have to be provided as arguments and
are used to check that the frame pointers fall within that range. These
values are thread specific and can be retrieved with get_thread_info().
No other sanity checks (like checking for loops in the linked list) are
done.

This is a simplified rewrite of the stack trace code from the kernel
debugger.

As this code is common to x86 and x86_64 but is not generic across
architectures I introduced x86_common as a directory to put such
sources.


# 6d70d75a 26-Aug-2014 Paweł Dziepak <pdziepak@quarnos.org>

libroot/x86_64: rewrite system_time[_nsecs]() to C++

No functional change intended, just code deobfuscation.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>


# d3b1caa6 25-Aug-2014 Paweł Dziepak <pdziepak@quarnos.org>

kernel, libroot: use C++11 atomics in atomic_*()

The less assembler in our sources the better. These functions wouldn't
be used very much since SupportDef.h inlines them, but the symbols should
be available.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>


# ea7e57c9 05-May-2014 Pawel Dziepak <pdziepak@quarnos.org>

libroot: enable c++11 in os/arch/x86_64


# b0944c78 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 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.


# c012e7e9305fa8acbf3ead9f8b1ca19b7c677b06 11-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

libroot: Add private __arch_get_stack_trace().

It can be used to get a stack trace of the current thread. Note that
this works by walking frame pointers and will not produce anything
useful if an application is compiled with the frame pointers omitted.

The stack base and end addresses have to be provided as arguments and
are used to check that the frame pointers fall within that range. These
values are thread specific and can be retrieved with get_thread_info().
No other sanity checks (like checking for loops in the linked list) are
done.

This is a simplified rewrite of the stack trace code from the kernel
debugger.

As this code is common to x86 and x86_64 but is not generic across
architectures I introduced x86_common as a directory to put such
sources.


# 6d70d75a8e4f7c15eee4bc7ef666e62b48297631 26-Aug-2014 Paweł Dziepak <pdziepak@quarnos.org>

libroot/x86_64: rewrite system_time[_nsecs]() to C++

No functional change intended, just code deobfuscation.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>


# d3b1caa62d83444c7c95a73cdc2094d2087fb818 25-Aug-2014 Paweł Dziepak <pdziepak@quarnos.org>

kernel, libroot: use C++11 atomics in atomic_*()

The less assembler in our sources the better. These functions wouldn't
be used very much since SupportDef.h inlines them, but the symbols should
be available.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>


# ea7e57c9666997c11e3020d0fa71753e2097840b 05-May-2014 Pawel Dziepak <pdziepak@quarnos.org>

libroot: enable c++11 in os/arch/x86_64


# b0944c78b074a8110bd98e060415d0e8f38a7f65 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 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.