Merge "strftime: format small positive integers ourselves."
diff --git a/OWNERS b/OWNERS
index 4cb95a3..e02ad9f 100644
--- a/OWNERS
+++ b/OWNERS
@@ -3,9 +3,7 @@
cferris@google.com
danalbert@google.com
hhb@google.com
-jmgao@google.com
rprichard@google.com
-tomcherry@google.com
yabinc@google.com
# Still the best reviewer for changes related to the dynamic linker.
diff --git a/libc/Android.bp b/libc/Android.bp
index 00904aa..2dc10fc 100644
--- a/libc/Android.bp
+++ b/libc/Android.bp
@@ -67,6 +67,13 @@
// GWP-ASan requires platform TLS.
"-fno-emulated-tls",
+
+ // We know clang does a lot of harm by rewriting what we've said, and sadly
+ // never see any good it does, so let's just ask it to do what we say...
+ // (The specific motivating example was clang turning a loop that would only
+ // ever touch 0, 1, or 2 bytes into a call to memset, which was never going
+ // to amortize.)
+ "-fno-builtin",
]
// Define some common cflags
diff --git a/libc/SYSCALLS.TXT b/libc/SYSCALLS.TXT
index 22b82f1..a09c614 100644
--- a/libc/SYSCALLS.TXT
+++ b/libc/SYSCALLS.TXT
@@ -306,6 +306,8 @@
int sysinfo(struct sysinfo*) all
int personality(unsigned long) all
+int bpf(int, union bpf_attr *, unsigned int) all
+
ssize_t tee(int, int, size_t, unsigned int) all
ssize_t splice(int, off64_t*, int, off64_t*, size_t, unsigned int) all
ssize_t vmsplice(int, const struct iovec*, size_t, unsigned int) all
diff --git a/libm/Android.bp b/libm/Android.bp
index b6ad356..83f40c2 100644
--- a/libm/Android.bp
+++ b/libm/Android.bp
@@ -490,6 +490,7 @@
"-DFLT_EVAL_METHOD=0",
"-include freebsd-compat.h",
"-include fenv-access.h",
+ "-fno-builtin",
"-fno-math-errno",
"-Wall",
"-Werror",
diff --git a/tests/pthread_test.cpp b/tests/pthread_test.cpp
index e4f9cb8..907a35c 100644
--- a/tests/pthread_test.cpp
+++ b/tests/pthread_test.cpp
@@ -1493,6 +1493,7 @@
};
std::atomic<Progress> progress;
pthread_t thread;
+ timespec ts;
std::function<int (pthread_cond_t* cond, pthread_mutex_t* mutex)> wait_function;
protected:
@@ -1524,11 +1525,10 @@
clockid_t clock,
std::function<int(pthread_cond_t* cond, pthread_mutex_t* mutex, const timespec* timeout)>
wait_function) {
- timespec ts;
ASSERT_EQ(0, clock_gettime(clock, &ts));
ts.tv_sec += 1;
- StartWaitingThread([&wait_function, &ts](pthread_cond_t* cond, pthread_mutex_t* mutex) {
+ StartWaitingThread([&wait_function, this](pthread_cond_t* cond, pthread_mutex_t* mutex) {
return wait_function(cond, mutex, &ts);
});
diff --git a/tools/versioner/src/Android.bp b/tools/versioner/src/Android.bp
index 0173c41..abcaaa3 100644
--- a/tools/versioner/src/Android.bp
+++ b/tools/versioner/src/Android.bp
@@ -21,8 +21,7 @@
],
shared_libs: [
- "libclang_cxx_host",
- "libLLVM_host",
+ "libclang-cpp_host",
"libbase",
],