diff options
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/makefile | 2 | ||||
-rw-r--r-- | src/lib/math.C | 31 |
2 files changed, 32 insertions, 1 deletions
diff --git a/src/lib/makefile b/src/lib/makefile index 5ad3dd0de..59a12b350 100644 --- a/src/lib/makefile +++ b/src/lib/makefile @@ -22,7 +22,7 @@ # IBM_PROLOG_END ROOTPATH = ../.. -OBJS = string.o stdlib.o assert.o stdio.o +OBJS = string.o stdlib.o assert.o stdio.o math.o OBJS += syscall_stub.o syscall_task.o syscall_msg.o OBJS += syscall_mmio.o syscall_time.o sync.o syscall_misc.o OBJS += syscall_mm.o cxxtest_data.o diff --git a/src/lib/math.C b/src/lib/math.C new file mode 100644 index 000000000..8958eebf5 --- /dev/null +++ b/src/lib/math.C @@ -0,0 +1,31 @@ +// IBM_PROLOG_BEGIN_TAG +// This is an automatically generated prolog. +// +// $Source: src/lib/math.C $ +// +// IBM CONFIDENTIAL +// +// COPYRIGHT International Business Machines Corp. 2011 +// +// p1 +// +// Object Code Only (OCO) source materials +// Licensed Internal Code Source Materials +// IBM HostBoot Licensed Internal Code +// +// The source code for this program is not published or other- +// wise divested of its trade secrets, irrespective of what has +// been deposited with the U.S. Copyright Office. +// +// Origin: 30 +// +// IBM_PROLOG_END +#include <math.h> + +double sqrt(double x) +{ + register double _x = x; + asm volatile("fsqrt %0, %1" : "=f" (_x) : "f" (_x)); + return _x; +} + |