#
d1f8f830 |
|
29-Oct-2018 |
Augustin Cavalier <waddlesplash@gmail.com> |
kernel: Tolerate "count" argument to memcpy being 0. It seems GCC2 occasionally will inline a call to memcpy with a count of 0, which this function did not previously expect and would result in a "Divide Error Exception." Hopefully fixes #14613.
|
#
6156a508 |
|
06-Sep-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
kernel/x86[_64]: remove get_optimized_functions from cpu modules The possibility to specify custom memcpy and memset implementations in cpu modules is currently unused and there is generally no point in such feature. There are only 2 x86 vendors that really matter and there isn't very big difference in performance of the generic optmized versions of these funcions across different models. Even if we wanted different versions of memset and memcpy depending on the processor model or features much better solution would be to use STT_GNU_IFUNC and save one indirect call. Long story short, we don't really benefit in any way from get_optimized_functions and the feature it implements and it only adds unnecessary complexity to the code. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
1b3b00c2 |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
memset() returned the wrong value. Fascinatingly there's even software (APR) that uses it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27960 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
78594e1f |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Save one byte of code. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27959 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b18c9b97 |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented x86 assembly version of memset(). * memset() is now available through the commpage. * CPU modules can provide a model-optimized memset(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27952 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
379ad6d0 |
|
09-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Moved the arch specific stuff in src/system/kernel/lib into arch/... subdirectories. Also moved the x86 kernel arch_string.S there. * Moved memcpy.c from src/system/libroot/posix/string into the arch/generic subdirectory. * Dealt with the consequences of moving things around. Affected are also the boot loader and runtime loader builds. Adjust the m68k and ppc parts, too, but only the x86 build is tested. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27947 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6156a508adb812153113f01aa1e547fff1e41bdb |
|
06-Sep-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
kernel/x86[_64]: remove get_optimized_functions from cpu modules The possibility to specify custom memcpy and memset implementations in cpu modules is currently unused and there is generally no point in such feature. There are only 2 x86 vendors that really matter and there isn't very big difference in performance of the generic optmized versions of these funcions across different models. Even if we wanted different versions of memset and memcpy depending on the processor model or features much better solution would be to use STT_GNU_IFUNC and save one indirect call. Long story short, we don't really benefit in any way from get_optimized_functions and the feature it implements and it only adds unnecessary complexity to the code. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
1b3b00c2a1d930fac55e2fd60297e755306c7aaf |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
memset() returned the wrong value. Fascinatingly there's even software (APR) that uses it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27960 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
78594e1f210cb58d756e034727a29bffcc4d287d |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Save one byte of code. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27959 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b18c9b97aeb4a7af1c5bca0bc99f02ad19e716f4 |
|
10-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented x86 assembly version of memset(). * memset() is now available through the commpage. * CPU modules can provide a model-optimized memset(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27952 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
379ad6d0372d6b3242b4a56925f5b8512d63500f |
|
09-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Moved the arch specific stuff in src/system/kernel/lib into arch/... subdirectories. Also moved the x86 kernel arch_string.S there. * Moved memcpy.c from src/system/libroot/posix/string into the arch/generic subdirectory. * Dealt with the consequences of moving things around. Affected are also the boot loader and runtime loader builds. Adjust the m68k and ppc parts, too, but only the x86 build is tested. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27947 a95241bf-73f2-0310-859d-f6bbb57e9c96
|