OSDN Git Service

android-x86/bionic.git
8 years agoMerge "Regenerate NOTICE files."
Elliott Hughes [Tue, 17 May 2016 03:15:34 +0000 (03:15 +0000)]
Merge "Regenerate NOTICE files."
am: 5df5884743

* commit '5df5884743306f7b2ee437c293f4197101528a98':
  Regenerate NOTICE files.

Change-Id: I1246395d232dd6add3446301d5855971b004d770

8 years agoMerge "Stop including <machine/cpu-features.h>."
Elliott Hughes [Tue, 17 May 2016 03:10:46 +0000 (03:10 +0000)]
Merge "Stop including <machine/cpu-features.h>."
am: ecffdeb0e2

* commit 'ecffdeb0e21d08d51f0b75f115ee2a44221f663e':
  Stop including <machine/cpu-features.h>.

Change-Id: I0e9b85f456e47aab3209b37c50b214d4a1e2a742

8 years agoMerge "Regenerate NOTICE files."
Elliott Hughes [Tue, 17 May 2016 03:10:29 +0000 (03:10 +0000)]
Merge "Regenerate NOTICE files."

8 years agoMerge "Stop including <machine/cpu-features.h>."
Elliott Hughes [Tue, 17 May 2016 03:06:48 +0000 (03:06 +0000)]
Merge "Stop including <machine/cpu-features.h>."

8 years agoStop including <machine/cpu-features.h>.
Elliott Hughes [Tue, 17 May 2016 00:52:40 +0000 (17:52 -0700)]
Stop including <machine/cpu-features.h>.

We're not looking at __ARM_ARCH__, because we don't support ARMv6.

Bug: http://b/18556103
Change-Id: I91fe096af697dc842a57e97515312e3530743678

8 years agoMerge "Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs"
Colin Cross [Tue, 17 May 2016 00:47:13 +0000 (00:47 +0000)]
Merge "Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs"
am: 79d0281456

* commit '79d028145670a3b3d5a0e7efc3178bc685f77b66':
  Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs

Change-Id: I4e618f175303fe9a6ed33e77e7d394fff8813606

8 years agoRegenerate NOTICE files.
Elliott Hughes [Tue, 17 May 2016 00:35:36 +0000 (17:35 -0700)]
Regenerate NOTICE files.

Also clean up some near-miss copyright headers in libm, and remove
some cruft in <grp.h>/<pwd.h> that the script can't automatically
ignore since we stripped all the tabs in those files.

Change-Id: I10796c54dda1ceba87822ae0de26b5d71b54972b

8 years agoMerge "Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs"
Colin Cross [Tue, 17 May 2016 00:42:17 +0000 (00:42 +0000)]
Merge "Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs"

8 years agoMerge "Fix the <netinet/ether.h> tests."
Elliott Hughes [Tue, 17 May 2016 00:26:49 +0000 (00:26 +0000)]
Merge "Fix the <netinet/ether.h> tests."
am: c9a21334c5

* commit 'c9a21334c5d375240f8cb04750dde284e3151785':
  Fix the <netinet/ether.h> tests.

Change-Id: I77fa79bd6edeafcf60c5aaafab2e9f88af085d6b

8 years agoMerge "Fix the <netinet/ether.h> tests."
Elliott Hughes [Tue, 17 May 2016 00:21:06 +0000 (00:21 +0000)]
Merge "Fix the <netinet/ether.h> tests."

8 years agoUse Android.soong.mk to handle mixed Android.mk and Android.bp dirs
Colin Cross [Mon, 16 May 2016 23:55:08 +0000 (16:55 -0700)]
Use Android.soong.mk to handle mixed Android.mk and Android.bp dirs

When building with soong Android.mk files are ignored in directories
that have Android.bp files.  Only parts of bionic have been converted to
Android.bp files, including some directories that have subdirectories
with Android.mk files.

Add Android.soong.mk files to include subdirectories to any directory
that has an Android.bp file but also has subdirectories with only
Android.mk files.

Change-Id: Ibd3c27d51c44f7a4b42dad0bc747e357b4ae34ca

8 years agoFix the <netinet/ether.h> tests.
Elliott Hughes [Mon, 16 May 2016 23:21:37 +0000 (16:21 -0700)]
Fix the <netinet/ether.h> tests.

Looks like I never ran these even once :-(

Change-Id: Ie488dec229cddf59a4f526b3c4e674ad4334c088

8 years agoMerge "Fix <resolv.h> and <netinet/tcp.h> so dnscap builds."
Elliott Hughes [Mon, 16 May 2016 22:08:03 +0000 (22:08 +0000)]
Merge "Fix <resolv.h> and <netinet/tcp.h> so dnscap builds."
am: cb8ef17b07

* commit 'cb8ef17b07db1048777eebd92782edf1ecea1b36':
  Fix <resolv.h> and <netinet/tcp.h> so dnscap builds.

Change-Id: Iefd54322ab3333f57111d58506d1035d1dfc6ded

8 years agoMerge "Fix <resolv.h> and <netinet/tcp.h> so dnscap builds."
Elliott Hughes [Mon, 16 May 2016 21:59:50 +0000 (21:59 +0000)]
Merge "Fix <resolv.h> and <netinet/tcp.h> so dnscap builds."

8 years agoMerge "We have the _r ether_ntoa/ether_aton functions too."
Elliott Hughes [Mon, 16 May 2016 21:22:10 +0000 (21:22 +0000)]
Merge "We have the _r ether_ntoa/ether_aton functions too."
am: 20fc6ecf90

* commit '20fc6ecf90ea76b5a668a6007a33fb30a837d2fd':
  We have the _r ether_ntoa/ether_aton functions too.

Change-Id: I3fe86744a88bf25517c29c4cb43201317fb92473

8 years agoMerge "We have the _r ether_ntoa/ether_aton functions too."
Elliott Hughes [Mon, 16 May 2016 21:12:38 +0000 (21:12 +0000)]
Merge "We have the _r ether_ntoa/ether_aton functions too."

8 years agoFix <resolv.h> and <netinet/tcp.h> so dnscap builds.
Elliott Hughes [Mon, 16 May 2016 20:26:25 +0000 (13:26 -0700)]
Fix <resolv.h> and <netinet/tcp.h> so dnscap builds.

Some guy on the internet complained that dnscap doesn't build out of the box.
Now it does.

Bug: http://b/27839637
Change-Id: I8c4f22d3c3f8885a6fe06029d89ef68a15931027

8 years agoWe have the _r ether_ntoa/ether_aton functions too.
Elliott Hughes [Mon, 16 May 2016 20:24:31 +0000 (13:24 -0700)]
We have the _r ether_ntoa/ether_aton functions too.

We've also had them since H, not L.

Change-Id: Iee7633ea97a0ee9a00bf7b62ead315acf02a3c8e

8 years agoMerge "Fix our *ether* headers mess."
Elliott Hughes [Mon, 16 May 2016 20:05:33 +0000 (20:05 +0000)]
Merge "Fix our *ether* headers mess."
am: e79b630daa

* commit 'e79b630daa1c1be9f83b19df824f2b5a0de966a4':
  Fix our *ether* headers mess.

Change-Id: I0c94f4c94b6101b09ba68d542b8310dfb14e68ff

8 years agoMerge "Fix our *ether* headers mess."
Elliott Hughes [Mon, 16 May 2016 20:00:09 +0000 (20:00 +0000)]
Merge "Fix our *ether* headers mess."

8 years agoFix our *ether* headers mess.
Elliott Hughes [Thu, 12 May 2016 20:11:28 +0000 (13:11 -0700)]
Fix our *ether* headers mess.

Move everything to where it should be.

Along the way, we lose <net/ethertypes.h>. glibc only has a handful of these
types, and they're all in <net/ethernet.h>, not <net/ethertypes.h>. I've taken
the liberty of not including the AppleTalk ones, since it is 2016.

Also, <net/if_ether.h> should be <netinet/if_ether.h> (though with different
contents).

Bug: http://b/28519060
Change-Id: Ia41c3fc136fd3e6b008c8d08018e0629134ea6fc

8 years agoMerge "Update Android.bp to match Android.mk"
Dan Willemsen [Thu, 12 May 2016 22:21:46 +0000 (22:21 +0000)]
Merge "Update Android.bp to match Android.mk"
am: 56469e8de2

* commit '56469e8de225bdd16e6f0fa887ce65294bfb9ed1':
  Update Android.bp to match Android.mk

Change-Id: Icfd7da8a33254b209feaf5ba2f81aad5c59592a0

8 years agoMerge "Update Android.bp to match Android.mk"
Treehugger Robot [Thu, 12 May 2016 22:15:00 +0000 (22:15 +0000)]
Merge "Update Android.bp to match Android.mk"

8 years agoUpdate Android.bp to match Android.mk
Dan Willemsen [Thu, 12 May 2016 08:43:07 +0000 (01:43 -0700)]
Update Android.bp to match Android.mk

* Remove --exclude-libs ldflags (e29e99c51)
* Mips strlen check was inverted
* ARM specific libc changes only apply to the shared library
* Reorder libjemalloc and malloc_common to match Make's ordering (for
  better binary diffing)

Change-Id: Ib41bd47565b1e8fadd285daa7b337cff1edd0808

8 years agoMerge "Always update search domain paths."
Pierre Imai [Thu, 12 May 2016 02:58:30 +0000 (02:58 +0000)]
Merge "Always update search domain paths."
am: 6db7e5a10d

* commit '6db7e5a10db01bfa36bde4bb2066159ab2f41fa3':
  Always update search domain paths.

Change-Id: I3eaf70ec46e027854a571300a55e4deeceafcdce

8 years agoMerge "Always update search domain paths."
Pierre Imai [Thu, 12 May 2016 02:51:23 +0000 (02:51 +0000)]
Merge "Always update search domain paths."

8 years agoMerge "Remove <net/if_types.h>."
Elliott Hughes [Thu, 12 May 2016 02:31:48 +0000 (02:31 +0000)]
Merge "Remove <net/if_types.h>."
am: b277bb755a

* commit 'b277bb755a3cafb96e1203228017e5fcbd885889':
  Remove <net/if_types.h>.

Change-Id: I768e74cad42d762e3a70cf6616f67a248c87c486

8 years agoMerge "Remove <net/if_types.h>."
Elliott Hughes [Thu, 12 May 2016 02:23:42 +0000 (02:23 +0000)]
Merge "Remove <net/if_types.h>."

8 years agoRemove <net/if_types.h>.
Elliott Hughes [Wed, 11 May 2016 22:00:19 +0000 (15:00 -0700)]
Remove <net/if_types.h>.

Bug: http://b/28519060
Change-Id: I7481df528b281344879b4aac32551d8c40824195

8 years agoMerge "Remove various bits of header cruft."
Elliott Hughes [Wed, 11 May 2016 21:50:03 +0000 (21:50 +0000)]
Merge "Remove various bits of header cruft."
am: d0b173316a

* commit 'd0b173316a92399ae3c2348bcbd9e32cd5b21536':
  Remove various bits of header cruft.

Change-Id: I144a4d95dc447504116aec66340754304a4c4ca4

8 years agoMerge "Remove various bits of header cruft."
Elliott Hughes [Wed, 11 May 2016 21:25:01 +0000 (21:25 +0000)]
Merge "Remove various bits of header cruft."

8 years agoMerge "Remove linker-namespace functions from the header"
Dimitry Ivanov [Wed, 11 May 2016 21:21:29 +0000 (21:21 +0000)]
Merge "Remove linker-namespace functions from the header"
am: 35c115c196

* commit '35c115c196c13dea255489a005dce0a38c33a7ab':
  Remove linker-namespace functions from the header

Change-Id: Id8245e9a36a3b35678cb2d82cff9d46257b329ce

8 years agoMerge "Remove linker-namespace functions from the header"
Dimitry Ivanov [Wed, 11 May 2016 21:14:41 +0000 (21:14 +0000)]
Merge "Remove linker-namespace functions from the header"

8 years agoAlways update search domain paths.
Pierre Imai [Fri, 6 May 2016 08:56:57 +0000 (17:56 +0900)]
Always update search domain paths.

_resolv_set_nameservers_for_net() so far did not update the search
paths, unless the servers changed as well.

BUG: 28437641
Change-Id: Id31f2d97c173e00357fb2ba95908afb4572c0fc1

8 years agoRemove various bits of header cruft.
Elliott Hughes [Wed, 11 May 2016 00:32:48 +0000 (17:32 -0700)]
Remove various bits of header cruft.

Mostly BSD _KERNEL stuff.

Change-Id: Ic0a6914437d0c831a83588a435079d0c719fcbdf

8 years agoMerge "Remove declaration of pthread_cond_timedwait_relative_np."
Elliott Hughes [Tue, 10 May 2016 20:01:57 +0000 (20:01 +0000)]
Merge "Remove declaration of pthread_cond_timedwait_relative_np."
am: 366164da10

* commit '366164da10a0883ffbb5267cf619bcecbf92315d':
  Remove declaration of pthread_cond_timedwait_relative_np.

Change-Id: Iae8eba095f510406aa8682eed966824fd5e2a5fb

8 years agoMerge "Remove declaration of pthread_cond_timedwait_relative_np."
Elliott Hughes [Tue, 10 May 2016 19:54:16 +0000 (19:54 +0000)]
Merge "Remove declaration of pthread_cond_timedwait_relative_np."

8 years agoRemove linker-namespace functions from the header
Dimitry Ivanov [Tue, 10 May 2016 00:37:39 +0000 (17:37 -0700)]
Remove linker-namespace functions from the header

They are intended for platform use only and we shouldn't have them
in the public header file.

Bug: http://b/28174921
Change-Id: Ib9b3d0fa9442cfa2e784a693ad567d1444d774e5

8 years agoMerge "Remove pthread_mutex_lock_timeout_np from <pthread.h>."
Elliott Hughes [Mon, 9 May 2016 20:32:36 +0000 (20:32 +0000)]
Merge "Remove pthread_mutex_lock_timeout_np from <pthread.h>."
am: d2f3ce9c89

* commit 'd2f3ce9c89715accb5b294f0c0a17b2a50656333':
  Remove pthread_mutex_lock_timeout_np from <pthread.h>.

Change-Id: I9850ac8d00439cfebc5812db4df0dbd46963e6f3

8 years agoMerge "Generalize the clone function slightly."
Elliott Hughes [Mon, 9 May 2016 20:32:36 +0000 (20:32 +0000)]
Merge "Generalize the clone function slightly."
am: 0155995e8d

* commit '0155995e8d4471d0e530c8bbfac88c4a8a68fbb1':
  Generalize the clone function slightly.

Change-Id: I40b5ab2913811a7140a1104340f30aaedc8358fc

8 years agoRemove declaration of pthread_cond_timedwait_relative_np.
Elliott Hughes [Mon, 9 May 2016 20:29:26 +0000 (13:29 -0700)]
Remove declaration of pthread_cond_timedwait_relative_np.

It's been deprecated long enough, and nothing left in the tree (except
code that isn't even built) is still using it.

Bug: http://b/27918161
Change-Id: Ibf824c1063d49484037de5c03b98bec5bdd4dcf6

8 years agoMerge "Remove pthread_mutex_lock_timeout_np from <pthread.h>."
Elliott Hughes [Mon, 9 May 2016 20:15:49 +0000 (20:15 +0000)]
Merge "Remove pthread_mutex_lock_timeout_np from <pthread.h>."

8 years agoMerge "Generalize the clone function slightly."
Elliott Hughes [Mon, 9 May 2016 20:14:50 +0000 (20:14 +0000)]
Merge "Generalize the clone function slightly."

8 years agoRemove pthread_mutex_lock_timeout_np from <pthread.h>.
Elliott Hughes [Sat, 7 May 2016 00:45:26 +0000 (17:45 -0700)]
Remove pthread_mutex_lock_timeout_np from <pthread.h>.

It's been deprecated long enough, and nothing left in the tree (except
code that isn't even built) is still using it.

Bug: http://b/27918161
Change-Id: I1786f5e2528a23c17b3f7298f4ba5fc7761a26c5

8 years agoMerge "End all lists in check-symbols-glibc.py with a ,."
Elliott Hughes [Fri, 6 May 2016 23:48:19 +0000 (23:48 +0000)]
Merge "End all lists in check-symbols-glibc.py with a ,."
am: 1a26db8448

* commit '1a26db8448144a12bc9991b62d07105eae9bd156':
  End all lists in check-symbols-glibc.py with a ,.

Change-Id: I003fce234cf56f3517e4c3f4e553d935fae09086

8 years agoGeneralize the clone function slightly.
Elliott Hughes [Fri, 6 May 2016 22:55:36 +0000 (15:55 -0700)]
Generalize the clone function slightly.

* Allow clone where both the child function and stack are null. It's
obviously wrong to ask to call a function without a stack, but it's not
necessarily wrong to supply no stack if you're also not supplying a
function.

* Reimplement fork in terms of the clone function, rather than using the
clone system call directly.

This is intended as a step towards enabling use of pid namespaces.

Change-Id: I03c89bd1dc540d8b4ed1c8fdf6644290744b9e91

8 years agoMerge "End all lists in check-symbols-glibc.py with a ,."
Treehugger Robot [Fri, 6 May 2016 23:35:21 +0000 (23:35 +0000)]
Merge "End all lists in check-symbols-glibc.py with a ,."

8 years agoMerge "Fix linker crash on trying to unload main executable"
Dimitry Ivanov [Fri, 6 May 2016 23:02:20 +0000 (23:02 +0000)]
Merge "Fix linker crash on trying to unload main executable"
am: e37212f3a3

* commit 'e37212f3a3cadbab5a9a5828481b73e594e57058':
  Fix linker crash on trying to unload main executable

Change-Id: Ie561115e10acc80bff3ed85ede554318b4c97152

8 years agoMerge "Fix linker crash on trying to unload main executable"
Dimitry Ivanov [Fri, 6 May 2016 22:52:42 +0000 (22:52 +0000)]
Merge "Fix linker crash on trying to unload main executable"

8 years agoMerge "Remove a duplicate declaration, improve check-symbols-glibc.py."
Elliott Hughes [Fri, 6 May 2016 22:52:22 +0000 (22:52 +0000)]
Merge "Remove a duplicate declaration, improve check-symbols-glibc.py."
am: 5ac45a2add

* commit '5ac45a2add41fd7c1640815accf09a29bd14aac6':
  Remove a duplicate declaration, improve check-symbols-glibc.py.

Change-Id: I3e2b8574b2b757b8546c69a5985d1af678f0dfdb

8 years agoEnd all lists in check-symbols-glibc.py with a ,.
Elliott Hughes [Fri, 6 May 2016 22:44:26 +0000 (15:44 -0700)]
End all lists in check-symbols-glibc.py with a ,.

Change-Id: I85f591c51e32fa001e611a035e2e51305c837d22

8 years agoMerge "Remove a duplicate declaration, improve check-symbols-glibc.py."
Treehugger Robot [Fri, 6 May 2016 22:42:11 +0000 (22:42 +0000)]
Merge "Remove a duplicate declaration, improve check-symbols-glibc.py."

8 years agoMerge "Re-land "Fix invalid using decl in bionic relocation_packer""
rnk [Fri, 6 May 2016 22:22:14 +0000 (22:22 +0000)]
Merge "Re-land "Fix invalid using decl in bionic relocation_packer""
am: f67dcc8f9d

* commit 'f67dcc8f9d079bb2b8e51386db41f362788f820c':
  Re-land "Fix invalid using decl in bionic relocation_packer"

Change-Id: Id0501cba14af0cebeb2da6d63179256d3e542847

8 years agoMerge "Re-land "Fix invalid using decl in bionic relocation_packer""
Treehugger Robot [Fri, 6 May 2016 22:08:31 +0000 (22:08 +0000)]
Merge "Re-land "Fix invalid using decl in bionic relocation_packer""

8 years agoMerge "Remove --exclude-libs ldflags."
Dan Albert [Fri, 6 May 2016 21:53:17 +0000 (21:53 +0000)]
Merge "Remove --exclude-libs ldflags."
am: 96029e30ce

* commit '96029e30cea4c5eb67ce61f3cddc1805f1262222':
  Remove --exclude-libs ldflags.

Change-Id: I654a829957ae60d29b59ae74edf62a1d9683d877

8 years agoFix linker crash on trying to unload main executable
Dimitry Ivanov [Thu, 5 May 2016 00:19:14 +0000 (17:19 -0700)]
Fix linker crash on trying to unload main executable

Linker crashed if linking of the main executable fails
instead of aborting with readable error message.

This patch modifies unload to soinfo_unload it all at once
in this particular case. This helps avoid situations when
one of the libraries on the DT_NEEDED list of main executable
has gotten unloaded by previous library unload because it
DT_NEEDED it too.

Example (consider following dependency tree):
main_executable
|-> liba.so
  |-> libb.so
|-> libb.so

The list of the libraries need to be unloaded in this case
is [liba.so, libb.so], but if linker does unload one by one
by the time it gets to libb.so - the soinfo for the library
is already unloaded (and the segments were unmapped).

Passing everything as an array helps soinfo_unload to check
if a library was already unloaded by looking into local_unload_list.

Bug: http://b/28565608
Change-Id: I7199290e10a186057dcf3b7b68dbce954af7dba1

8 years agoRemove a duplicate declaration, improve check-symbols-glibc.py.
Elliott Hughes [Fri, 6 May 2016 21:43:50 +0000 (14:43 -0700)]
Remove a duplicate declaration, improve check-symbols-glibc.py.

Change-Id: I97a98dfc8acaa93172386b4475487a05a35a9337

8 years agoMerge "Remove --exclude-libs ldflags."
Treehugger Robot [Fri, 6 May 2016 21:41:26 +0000 (21:41 +0000)]
Merge "Remove --exclude-libs ldflags."

8 years agoRe-land "Fix invalid using decl in bionic relocation_packer"
rnk [Thu, 5 May 2016 23:44:34 +0000 (16:44 -0700)]
Re-land "Fix invalid using decl in bionic relocation_packer"

This time with more namespace qualification.

Tested manually by building clang_x64/android_relocation_packer locally,
as the Android trybot analyze step does not think it needs to run for
this change.

Original description:

> The code was essentially doing 'using Logger::INFO' in the global
> namespace to make its 'LOG(INFO)' macros work. Unfortunately, C++ does
> not allow you to use using decls on classes like this unless you are in
> a derived class. GCC does not accept this code, and Clang was recently
> updated (LLVM r268594) to reject it as well.
>
> This should fix the Chromium Android ASan build with TOT Clang:
> https://build.chromium.org/p/chromium.fyi/builders/ClangToTAndroidASan/

TBR=thakis@chromium.org,sgurun@chromium.org
BUG=609543

Review-Url: https://codereview.chromium.org/1952353005
Cr-Commit-Position: refs/heads/master@{#391952}
(cherry picked from commit 5762af8ad13e62957493c3e4314a234ee57a4200)

Change-Id: Ibc6f6023aef028c5029be128ac799dc67fc6683c

8 years agoRemove --exclude-libs ldflags.
Dan Albert [Fri, 18 Sep 2015 17:41:54 +0000 (10:41 -0700)]
Remove --exclude-libs ldflags.

This is now done by default in the build system.

The comments say don't do this, but we have linker scripts that
protect the few symbols we have to actually keep now.

Bug: http://b/24166967
Change-Id: Iff1beeb0f54f80b23fb1561f37a39f208e0bf676

8 years agoMerge "Use clang\'s nullability instead of nonnull."
Dan Albert [Fri, 6 May 2016 02:39:07 +0000 (02:39 +0000)]
Merge "Use clang\'s nullability instead of nonnull."
am: 98ac6f415f

* commit '98ac6f415f4cd68be6691c1d04f59a76af802485':
  Use clang's nullability instead of nonnull.

Change-Id: I594fce602b20b2b8acaa7f99e1c3cb3f053d26e7

8 years agoMerge "Use clang's nullability instead of nonnull."
Treehugger Robot [Fri, 6 May 2016 02:27:17 +0000 (02:27 +0000)]
Merge "Use clang's nullability instead of nonnull."

8 years agoUse clang's nullability instead of nonnull.
Dan Albert [Thu, 13 Aug 2015 23:58:50 +0000 (16:58 -0700)]
Use clang's nullability instead of nonnull.

http://clang.llvm.org/docs/AttributeReference.html#nonnull

_Nonnull is similar to the nonnull attribute in that it will instruct
compilers to warn the user if it can prove that a null argument is
being passed. Unlike the nonnull attribute, this annotation indicated
that a value *should not* be null, not that it *cannot* be null, or
even that the behavior is undefined. The important distinction is that
the optimizer will perform surprising optimizations like the
following:

    void foo(void*) __attribute__(nonnull, 1);

    int bar(int* p) {
      foo(p);

      // The following null check will be elided because nonnull
      // attribute means that, since we call foo with p, p can be
      // assumed to not be null. Thus this will crash if we are called
      // with a null pointer.
      if (src != NULL) {
        return *p;
      }
      return 0;
    }

    int main() {
      return bar(NULL);
    }

Note that by doing this we are no longer attaching any sort of
attribute for GCC (GCC doesn't support attaching nonnull directly to a
parameter, only to the function and naming the arguments
positionally). This means we won't be getting a warning for this case
from GCC any more. People that listen to warnings tend to use clang
anyway, and we're quickly moving toward that as the default, so this
seems to be an acceptable tradeoff.

Change-Id: Ie05fe7cec2f19a082c1defb303f82bcf9241b88d

8 years agoMerge "Remove <sys/atomics.h>."
Elliott Hughes [Fri, 6 May 2016 00:03:36 +0000 (00:03 +0000)]
Merge "Remove <sys/atomics.h>."
am: 5e2342f970

* commit '5e2342f9708bf4daadae5ec7b7c86dbee1c6857d':
  Remove <sys/atomics.h>.

Change-Id: I8df4d2fb8f99093046fadd696c4eafbf1524da33

8 years agoMerge "Remove <sys/atomics.h>."
Elliott Hughes [Thu, 5 May 2016 23:55:03 +0000 (23:55 +0000)]
Merge "Remove <sys/atomics.h>."

8 years agoMerge "Update Android.bp to match Android.mk"
Colin Cross [Wed, 4 May 2016 20:51:56 +0000 (20:51 +0000)]
Merge "Update Android.bp to match Android.mk"
am: 7ee8e299ba

* commit '7ee8e299ba5dc7bb68c88931b04b10a69cf0f21f':
  Update Android.bp to match Android.mk

Change-Id: I5b1f6ae294d0a4eb0fa36107b458ecacbf8d38e5

8 years agoMerge "Update Android.bp to match Android.mk"
Colin Cross [Wed, 4 May 2016 20:41:17 +0000 (20:41 +0000)]
Merge "Update Android.bp to match Android.mk"

8 years agoUpdate Android.bp to match Android.mk
Colin Cross [Wed, 4 May 2016 00:09:38 +0000 (17:09 -0700)]
Update Android.bp to match Android.mk

Change-Id: Idaaf5019599739c50f387382ca6749af968d7095

8 years agoMerge "Fix google-explicit-constructor warnings."
Chih-Hung Hsieh [Wed, 4 May 2016 00:48:06 +0000 (00:48 +0000)]
Merge "Fix google-explicit-constructor warnings."
am: 9f0aab88a8

* commit '9f0aab88a881303be9babb273063a9ad6a1ee643':
  Fix google-explicit-constructor warnings.

Change-Id: Ie99b349b2337ade9815616ec46a6c3bb377b992c

8 years agoMerge "Fix google-explicit-constructor warnings."
Chih-hung Hsieh [Wed, 4 May 2016 00:37:58 +0000 (00:37 +0000)]
Merge "Fix google-explicit-constructor warnings."

8 years agoMerge "Update strip property format"
Colin Cross [Tue, 3 May 2016 21:32:06 +0000 (21:32 +0000)]
Merge "Update strip property format"
am: 0f93237db7

* commit '0f93237db72d2d6d3fc3c491fd9f8641ad255d50':
  Update strip property format

Change-Id: Iedb5b190d6f7c9669d8b98f239033e873a16c549

8 years agoMerge "Update strip property format"
Colin Cross [Tue, 3 May 2016 21:20:42 +0000 (21:20 +0000)]
Merge "Update strip property format"

8 years agoMerge "Update documentation to work with gitiles."
Christopher Ferris [Tue, 3 May 2016 19:55:19 +0000 (19:55 +0000)]
Merge "Update documentation to work with gitiles."
am: 2ab69ccf10

* commit '2ab69ccf10770b398b22af722f6e4f8443d0e48c':
  Update documentation to work with gitiles.

Change-Id: I6654024c1ca69c60a97c6b8ad88fcadebfb8abfd

8 years agoMerge "Update documentation to work with gitiles."
Christopher Ferris [Tue, 3 May 2016 19:47:47 +0000 (19:47 +0000)]
Merge "Update documentation to work with gitiles."

8 years agoFix google-explicit-constructor warnings.
Chih-Hung Hsieh [Tue, 3 May 2016 19:08:05 +0000 (12:08 -0700)]
Fix google-explicit-constructor warnings.

Bug: 28341362
Change-Id: I84effbdfa1b9b39328a909b7f70fe17e7ee316c8

8 years agoMerge "Move <machine/endian.h> somewhere more private."
Elliott Hughes [Tue, 3 May 2016 01:00:05 +0000 (01:00 +0000)]
Merge "Move <machine/endian.h> somewhere more private."
am: 9ee905f12f

* commit '9ee905f12fa0aeb4ae0df708e15d2ffcfaf58000':
  Move <machine/endian.h> somewhere more private.

Change-Id: I93f403f57759e32dc6ca887be6718927ebca0083

8 years agoMerge "Move <machine/endian.h> somewhere more private."
Elliott Hughes [Tue, 3 May 2016 00:45:38 +0000 (00:45 +0000)]
Merge "Move <machine/endian.h> somewhere more private."

8 years agoMerge "Update Android.bp to match Android.mk"
Colin Cross [Mon, 2 May 2016 23:29:41 +0000 (23:29 +0000)]
Merge "Update Android.bp to match Android.mk"
am: 45d3cf9f0f

* commit '45d3cf9f0f48594c4c092d3aef05f82639216ebd':
  Update Android.bp to match Android.mk

Change-Id: Ic818be033bbc0d85cb7ae34559b2d5595ca1ea95

8 years agoMerge "Update Android.bp to match Android.mk"
Treehugger Robot [Mon, 2 May 2016 23:19:20 +0000 (23:19 +0000)]
Merge "Update Android.bp to match Android.mk"

8 years agoRemove <sys/atomics.h>.
Elliott Hughes [Mon, 2 May 2016 23:03:10 +0000 (16:03 -0700)]
Remove <sys/atomics.h>.

It's no longer used in the platform (including vendor code), and everyone
should be using <stdatomic.h> anyway.

Change-Id: Ic1ad743625ffb15b4837ff6ccb91dcd840d19ec2

8 years agoMerge "Move glibc-syscalls.h into bits/."
Elliott Hughes [Mon, 2 May 2016 22:59:22 +0000 (22:59 +0000)]
Merge "Move glibc-syscalls.h into bits/."
am: 3338ee5257

* commit '3338ee52576632fd96bc131c6e943fa6f9a62139':
  Move glibc-syscalls.h into bits/.

Change-Id: Iaf9406a2ccf84c80685fcc4ce6000338d0721543

8 years agoMove <machine/endian.h> somewhere more private.
Elliott Hughes [Mon, 2 May 2016 21:55:28 +0000 (14:55 -0700)]
Move <machine/endian.h> somewhere more private.

Bug: http://b/28519060
Change-Id: I1c7811f95f46c65d4152bcf509b6e048c45bc28b

8 years agoMerge "Move glibc-syscalls.h into bits/."
Elliott Hughes [Mon, 2 May 2016 22:41:34 +0000 (22:41 +0000)]
Merge "Move glibc-syscalls.h into bits/."

8 years agoMerge "Remove <sys/utime.h>."
Elliott Hughes [Mon, 2 May 2016 21:47:08 +0000 (21:47 +0000)]
Merge "Remove <sys/utime.h>."
am: 3fb1b37bba

* commit '3fb1b37bbae91652f2fe93fde1284e80f2d57937':
  Remove <sys/utime.h>.

Change-Id: I38b5e309146dc708ccefaee9751c7f413a481bf9

8 years agoMerge "Move the IEEE fp header out of the public headers."
Elliott Hughes [Mon, 2 May 2016 21:36:39 +0000 (21:36 +0000)]
Merge "Move the IEEE fp header out of the public headers."
am: d3b4166b5b

* commit 'd3b4166b5bd9b3532cf686d7f19a608f78a65453':
  Move the IEEE fp header out of the public headers.

Change-Id: Id61a467cbcee3939d86ded96cefd57937276d869

8 years agoMerge "Remove <sys/utime.h>."
Elliott Hughes [Mon, 2 May 2016 21:35:14 +0000 (21:35 +0000)]
Merge "Remove <sys/utime.h>."

8 years agoMerge "Move nsswitch.h into libc/dns/include."
Elliott Hughes [Mon, 2 May 2016 21:25:57 +0000 (21:25 +0000)]
Merge "Move nsswitch.h into libc/dns/include."
am: eb9b0a1819

* commit 'eb9b0a181930bf1e63019343fe63e2e08ba03b69':
  Move nsswitch.h into libc/dns/include.

Change-Id: I201d4c0efecbdff11087b70a556ee8e12ee39304

8 years agoMerge "Remove <net/if_ieee1394.h>."
Elliott Hughes [Mon, 2 May 2016 21:25:56 +0000 (21:25 +0000)]
Merge "Remove <net/if_ieee1394.h>."
am: af5afdba34

* commit 'af5afdba34619ef1b6286b0d7d9a54ad998420fb':
  Remove <net/if_ieee1394.h>.

Change-Id: I0eea42b389bec443b4d1962f4f2e78a0c0ef5fd0

8 years agoMerge "Remove <sys/ioctl_compat.h>."
Elliott Hughes [Mon, 2 May 2016 21:25:55 +0000 (21:25 +0000)]
Merge "Remove <sys/ioctl_compat.h>."
am: 5ab6f6c3bd

* commit '5ab6f6c3bdceb9e17a29cd35586b7b2bd3e6ab53':
  Remove <sys/ioctl_compat.h>.

Change-Id: I1590c204cefb5f0f42c18e78980dcec5e26ed1f1

8 years agoMerge "Move the IEEE fp header out of the public headers."
Elliott Hughes [Mon, 2 May 2016 21:22:31 +0000 (21:22 +0000)]
Merge "Move the IEEE fp header out of the public headers."

8 years agoMerge "Move nsswitch.h into libc/dns/include."
Elliott Hughes [Mon, 2 May 2016 21:11:30 +0000 (21:11 +0000)]
Merge "Move nsswitch.h into libc/dns/include."

8 years agoMerge "Remove <net/if_ieee1394.h>."
Elliott Hughes [Mon, 2 May 2016 21:11:10 +0000 (21:11 +0000)]
Merge "Remove <net/if_ieee1394.h>."

8 years agoMerge "Remove <sys/ioctl_compat.h>."
Elliott Hughes [Mon, 2 May 2016 21:07:13 +0000 (21:07 +0000)]
Merge "Remove <sys/ioctl_compat.h>."

8 years agoMerge "Remove unused <sys/socketcalls.h> header."
Elliott Hughes [Mon, 2 May 2016 20:14:47 +0000 (20:14 +0000)]
Merge "Remove unused <sys/socketcalls.h> header."
am: d3f51a482f

* commit 'd3f51a482f196cd29e6da0db2f8513670e9a66cf':
  Remove unused <sys/socketcalls.h> header.

Change-Id: I7716e09ec30f03dbede30ba6cfe2ef9214856644

8 years agoRemove <sys/utime.h>.
Elliott Hughes [Mon, 2 May 2016 20:13:49 +0000 (13:13 -0700)]
Remove <sys/utime.h>.

As far as I can tell, this is a Windows-ism.

Bug: http://b/28519060
Change-Id: I28ca39ba799aaae81695eff3ce57eacb326e941c

8 years agoMerge "Remove unused <sys/socketcalls.h> header."
Elliott Hughes [Mon, 2 May 2016 20:03:53 +0000 (20:03 +0000)]
Merge "Remove unused <sys/socketcalls.h> header."

8 years agoRemove <sys/ioctl_compat.h>.
Elliott Hughes [Mon, 2 May 2016 19:53:00 +0000 (12:53 -0700)]
Remove <sys/ioctl_compat.h>.

This is all legacy BSD stuff (legacy even on BSD!) that's meaningless on Linux.

Bug: http://b/28519060
Change-Id: I92d317ede844ebd50b48368021fa2ad036e2b0c1

8 years agoMove glibc-syscalls.h into bits/.
Elliott Hughes [Mon, 2 May 2016 19:47:58 +0000 (12:47 -0700)]
Move glibc-syscalls.h into bits/.

Bug: http://b/28519060
Change-Id: I0de1ba16b16eb7b780de89954d3fa45cca2f5295

8 years agoMove the IEEE fp header out of the public headers.
Elliott Hughes [Mon, 2 May 2016 19:44:41 +0000 (12:44 -0700)]
Move the IEEE fp header out of the public headers.

Bug: http://b/28519060
Change-Id: I9f1a1a9ac1f22462bf86991b57c51824cb42eefd

8 years agoRemove <net/if_ieee1394.h>.
Elliott Hughes [Mon, 2 May 2016 19:35:26 +0000 (12:35 -0700)]
Remove <net/if_ieee1394.h>.

It's 2016.

Bug: http://b/28519060
Change-Id: Idbb2c40f37e57a87933b8b13b20e15035105e918