aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Target/README.txt12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/Target/README.txt b/lib/Target/README.txt
index 54bd94811d..92fc8d036d 100644
--- a/lib/Target/README.txt
+++ b/lib/Target/README.txt
@@ -208,3 +208,15 @@ emit:
movl %eax, _foo
//===---------------------------------------------------------------------===//
+
+Combine: a = sin(x), b = cos(x) into a,b = sincos(x).
+
+Expand these to calls of sin/cos and stores:
+ double sincos(double x, double *sin, double *cos);
+ float sincosf(float x, float *sin, float *cos);
+ long double sincosl(long double x, long double *sin, long double *cos);
+
+Doing so could allow SROA of the destination pointers. See also:
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17687
+
+//===---------------------------------------------------------------------===//