diff options
author | Ulrich Drepper <drepper@gmail.com> | 2011-10-21 12:28:42 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-10-21 12:28:42 -0400 |
commit | 8ec250a48425e8640fc01504bc1a42b63467768e (patch) | |
tree | 46440b603180fd469a582d310d3cbace628b2b81 | |
parent | 1a97a8c78f9b99d835581f14fc6beb57cb93e97a (diff) | |
download | glibc-8ec250a48425e8640fc01504bc1a42b63467768e.tar.gz glibc-8ec250a48425e8640fc01504bc1a42b63467768e.tar.xz glibc-8ec250a48425e8640fc01504bc1a42b63467768e.zip |
Add some __builtin_expect to generic __ieee754_log
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/ieee754/dbl-64/e_log.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index b2d629b953..404e1fe49c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2011-10-21 Ulrich Drepper <drepper@gmail.com> + + * sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Add a few more + __builtin_expect. + 2011-10-20 Ulrich Drepper <drepper@gmail.com> * sysdeps/i386/configure.in: Test for -mfma4 option. diff --git a/sysdeps/ieee754/dbl-64/e_log.c b/sysdeps/ieee754/dbl-64/e_log.c index 5d320db994..0fc6f920a6 100644 --- a/sysdeps/ieee754/dbl-64/e_log.c +++ b/sysdeps/ieee754/dbl-64/e_log.c @@ -1,7 +1,7 @@ /* * IBM Accurate Mathematical Library * written by International Business Machines Corp. - * Copyright (C) 2001 Free Software Foundation + * Copyright (C) 2001, 2011 Free Software Foundation * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by @@ -68,7 +68,7 @@ double __ieee754_log(double x) { num.d = x; ux = num.i[HIGH_HALF]; dx = num.i[LOW_HALF]; n=0; - if (ux < 0x00100000) { + if (__builtin_expect(ux < 0x00100000, 0)) { if (__builtin_expect(((ux & 0x7fffffff) | dx) == 0, 0)) return MHALF/ZERO; /* return -INF */ if (__builtin_expect(ux < 0, 0)) @@ -82,7 +82,7 @@ double __ieee754_log(double x) { /* Regular values of x */ w = x-ONE; - if (ABS(w) > U03) { goto case_03; } + if (__builtin_expect(ABS(w) > U03, 1)) { goto case_03; } /*--- Stage I, the case abs(x-1) < 0.03 */ |