Elliott Hughes
8fa9081f48
Merge "[MIPS] Rewrite MIPS crtbegin* as C files."
2013-07-18 00:34:22 +00:00
Pete Delaney
368860124c
[MIPS] Rewrite MIPS crtbegin* as C files.
...
This updates the MIPS arch to be much more in
sync with the commit Nick Kralevich made last
June; see 9d40326830
.
Rewrite
crtbegin.S -> crtbegin.c
crtbegin_so.S -> crtbegin_so.c
__dso_handle.S -> __dso_handle.c
__dso_handle_so.S -> __dso_handle_so.c
atexit.S -> atexit.c
Previously __do_global_dtors_aux was in the tasks
__FINI_ARRAY__ linked with crtbegin.S and it now being
removed as there is no need to call a destructor just
before terminating a process.
Shared libraries, on the other hand, are linked with
crtbegin_so.c and have a hidden destructor declared
to allow the bionic linker to call __on_dlclose().
Change-Id: Ieb4da5199b54573de05743990e309db381a11cb8
Signed-off-by: Pete Delaney <piet.delaney@imgtec.com>
Signed-off-by: Chao-Ying Fu <chao-ying.fu@imgtec.com>
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
2013-07-17 14:23:29 -07:00
Elliott Hughes
66f8452a14
am cbf07a25
: am 2be511d4
: Merge "Improve stack overflow diagnostics (take 2)."
...
* commit 'cbf07a25149cd924a348e4dc0395c5d08f86fd7f':
Improve stack overflow diagnostics (take 2).
2013-07-17 13:53:06 -07:00
Elliott Hughes
cbf07a2514
am 2be511d4
: Merge "Improve stack overflow diagnostics (take 2)."
...
* commit '2be511d405d47eccc61a6e3c338d1877bf33b4fa':
Improve stack overflow diagnostics (take 2).
2013-07-17 13:50:15 -07:00
Elliott Hughes
2be511d405
Merge "Improve stack overflow diagnostics (take 2)."
2013-07-17 20:48:25 +00:00
Elliott Hughes
84114c8dd5
Improve stack overflow diagnostics (take 2).
...
This reverts commits eb1b07469f
and
d14dc3b87f
, and fixes the bug where
we were calling mmap (which might cause errno to be set) before
__set_tls (which is required to implement errno).
Bug: 8557703
Change-Id: I2c36d00240c56e156e1bb430d8c22a73a068b70c
2013-07-17 13:33:19 -07:00
Elliott Hughes
4add6968be
resolved conflicts for merge of e35d6c28
to master
...
Change-Id: I237bfc35d872a2e2ff10984012f9811488a5cea7
2013-07-17 13:28:30 -07:00
Elliott Hughes
e35d6c28df
am 40e7a878
: Merge "Prevent the madvise(MADV_MERGEABLE) mmap hack from affecting errno."
...
* commit '40e7a87864fee75f7af2caf8e1972d0d764135cd':
Prevent the madvise(MADV_MERGEABLE) mmap hack from affecting errno.
2013-07-17 13:22:39 -07:00
Elliott Hughes
40e7a87864
Merge "Prevent the madvise(MADV_MERGEABLE) mmap hack from affecting errno."
2013-07-17 20:20:41 +00:00
Elliott Hughes
a5a3b3bdb1
resolved conflicts for merge of 4763ef2b
to master
...
Change-Id: I4d424f9fb438c2ed845bca0bbcae69b4d0f5e3dc
2013-07-17 13:18:43 -07:00
Elliott Hughes
107cdd406b
Prevent the madvise(MADV_MERGEABLE) mmap hack from affecting errno.
...
Bug: 9889616
Change-Id: I4a7323e0ae5aeb5cbe0da1b2bc7501d83b3a2aa4
2013-07-17 13:12:26 -07:00
Elliott Hughes
4763ef2b5b
am b7b36b81
: Merge "mmap: Reinstate passing MADV_MERGEABLE on private anonymous maps"
...
* commit 'b7b36b819e8029a152859f3204ba2da38a0e2879':
mmap: Reinstate passing MADV_MERGEABLE on private anonymous maps
2013-07-17 13:05:13 -07:00
Elliott Hughes
b7b36b819e
Merge "mmap: Reinstate passing MADV_MERGEABLE on private anonymous maps"
2013-07-17 20:02:11 +00:00
Rom Lemarchand
e459bba398
mmap: Reinstate passing MADV_MERGEABLE on private anonymous maps
...
Reinstate mmap calling madvise(MADV_MERGEABLE) removed in
635df850e5
(cherry-pick of c702a904679a36511bead29c51eeac15d81f4fd2.)
Change-Id: I18803fb54701b2b3d8186dff5c678211ee3efa1f
2013-07-17 13:00:45 -07:00
The Android Automerger
0976c97fe4
merge in klp-release history after reset to master
2013-07-17 06:00:13 -07:00
Guang Zhu
81b7df7315
am 6f08b865
: am 2cf5a6f6
: Merge "Revert "Improve stack overflow diagnostics.""
...
* commit '6f08b8659a3682b7e774af6ed68b1b613e147f1b':
Revert "Improve stack overflow diagnostics."
2013-07-16 20:23:42 -07:00
Guang Zhu
dd4eb67a48
am 849bfd58
: am 8c1b9668
: Merge "Revert "Clean up our alternate signal stacks.""
...
* commit '849bfd58118e8c8a4b1ad8a7c3de74bb3cd13863':
Revert "Clean up our alternate signal stacks."
2013-07-16 20:23:41 -07:00
Guang Zhu
6f08b8659a
am 2cf5a6f6
: Merge "Revert "Improve stack overflow diagnostics.""
...
* commit '2cf5a6f6627549842c0c840ff3615ae942a90ea3':
Revert "Improve stack overflow diagnostics."
2013-07-16 20:18:57 -07:00
Guang Zhu
849bfd5811
am 8c1b9668
: Merge "Revert "Clean up our alternate signal stacks.""
...
* commit '8c1b96681af91fda86a5493e7f7e4381ce489648':
Revert "Clean up our alternate signal stacks."
2013-07-16 20:18:57 -07:00
Guang Zhu
2cf5a6f662
Merge "Revert "Improve stack overflow diagnostics.""
2013-07-17 03:17:19 +00:00
Guang Zhu
d14dc3b87f
Revert "Improve stack overflow diagnostics."
...
This reverts commit aa754dca90
.
Change-Id: Ifa76eee31f7f44075eb3a48554315b2693062f44
2013-07-17 03:17:05 +00:00
Guang Zhu
8c1b96681a
Merge "Revert "Clean up our alternate signal stacks.""
2013-07-17 03:16:52 +00:00
Guang Zhu
eb1b07469f
Revert "Clean up our alternate signal stacks."
...
This reverts commit 5cf87951ab
.
Change-Id: Idd6ca7d80a018755da3bd315d91193723ce7f3bf
2013-07-17 03:16:04 +00:00
Christopher Ferris
66cb2edba5
am 7ff868a6
: am f63c28f0
: Merge "Fix assembler errors in generic arm strlen.c."
...
* commit '7ff868a6307f0d5e63555b5d320b8ad6e490e3c4':
Fix assembler errors in generic arm strlen.c.
2013-07-16 17:24:40 -07:00
Christopher Ferris
69205c5433
am b1d7fd49
: am 6f4fed74
: Merge "Add new optimized strlen for arm."
...
* commit 'b1d7fd4969fdd3d3402b500840561beb30962c1d':
Add new optimized strlen for arm.
2013-07-16 17:24:40 -07:00
Christopher Ferris
7ff868a630
am f63c28f0
: Merge "Fix assembler errors in generic arm strlen.c."
...
* commit 'f63c28f0338fd647e88f1f9300b2220093af1aae':
Fix assembler errors in generic arm strlen.c.
2013-07-16 17:22:05 -07:00
Christopher Ferris
b1d7fd4969
am 6f4fed74
: Merge "Add new optimized strlen for arm."
...
* commit '6f4fed74cb9405c0f5322307085d15afed6be764':
Add new optimized strlen for arm.
2013-07-16 17:21:55 -07:00
Christopher Ferris
f63c28f033
Merge "Fix assembler errors in generic arm strlen.c."
2013-07-17 00:19:42 +00:00
Christopher Ferris
6f4fed74cb
Merge "Add new optimized strlen for arm."
2013-07-17 00:19:30 +00:00
Christopher Ferris
9ad2a73ed6
Fix assembler errors in generic arm strlen.c.
...
Tested using a static version of the strlen libc_test program
on a nexus7 that uses the generic code.
Merge from internal master.
(cherry-picked from d8d10a8994
)
Change-Id: I88f7dc01dc5b5c3ac2d5580d92153bc1bc36c564
2013-07-16 16:47:54 -07:00
Christopher Ferris
0aa9b52efa
Add new optimized strlen for arm.
...
This optimized version is primarily targeted at cortex-a15.
Tested on all nexus devices using the system/extras/libc_test strlen test.
Tested alignments from 1 to 32 that are powers of 2.
Tested that strlen does not cross page boundaries at all alignments.
Speed improvements listed below:
cortex-a15
- Sizes >= 32 bytes, ~75% improvement.
- Sizes >= 1024 bytes, ~250% improvement.
cortex-a9
- Sizes >= 32 bytes, ~75% improvement.
- Sizes >= 1024 bytes, ~85% improvement.
krait
- Sizes >= 32 bytes, ~95% improvement.
- Sizes >= 1024 bytes, ~160% improvement.
Merge from internal master.
(cherry-picked from 2fc0717977
)
Change-Id: I1ceceb4e745fd68e9d946f96d1d42e0cdaff6ccf
2013-07-16 16:47:37 -07:00
Elliott Hughes
152dcf3b3f
am 79dfb1af
: am f35e0c14
: Merge "Clean up our alternate signal stacks."
...
* commit '79dfb1afda16565a0dd378eca7f72bfe81fae205':
Clean up our alternate signal stacks.
2013-07-16 15:56:16 -07:00
Elliott Hughes
79dfb1afda
am f35e0c14
: Merge "Clean up our alternate signal stacks."
...
* commit 'f35e0c149f1a6801a5af7c339f84d81ae05c3adf':
Clean up our alternate signal stacks.
2013-07-16 15:50:18 -07:00
Elliott Hughes
f35e0c149f
Merge "Clean up our alternate signal stacks."
2013-07-16 22:47:41 +00:00
Elliott Hughes
617a1e4977
am 10a954de
: am 026867c7
: Merge "Improve stack overflow diagnostics."
...
* commit '10a954dea6732232ed6cf56d3aa6ca38673dacbf':
Improve stack overflow diagnostics.
2013-07-16 15:36:12 -07:00
Elliott Hughes
f2f6b2bad3
am d2acf124
: am 9562d38d
: Merge "Clean up __builtin_expect usage."
...
* commit 'd2acf124ed7ad18f8adb5159544c92234cade90e':
Clean up __builtin_expect usage.
2013-07-16 15:36:12 -07:00
Elliott Hughes
62d6b7526a
am 2a18ea14
: am f152e386
: Merge "EABI syscall cleanup."
...
* commit '2a18ea1462cf65cc51bfcb1a1c46972ee5af1d01':
EABI syscall cleanup.
2013-07-16 15:36:11 -07:00
Elliott Hughes
10a954dea6
am 026867c7
: Merge "Improve stack overflow diagnostics."
...
* commit '026867c7dcce7828212dcd4a61806146908e9039':
Improve stack overflow diagnostics.
2013-07-16 15:31:40 -07:00
Elliott Hughes
d2acf124ed
am 9562d38d
: Merge "Clean up __builtin_expect usage."
...
* commit '9562d38df1e4aba941b3433cfd0922fee5ea258b':
Clean up __builtin_expect usage.
2013-07-16 15:31:39 -07:00
Elliott Hughes
2a18ea1462
am f152e386
: Merge "EABI syscall cleanup."
...
* commit 'f152e386fcf477f3f5de9dc020c3660d4f9c4b81':
EABI syscall cleanup.
2013-07-16 15:31:39 -07:00
Elliott Hughes
5cf87951ab
Clean up our alternate signal stacks.
...
Bug: 8557703
Change-Id: Ie93901dd1c29e9d3bf795b0f0400616d9ef08f75
2013-07-16 14:35:52 -07:00
Elliott Hughes
026867c7dc
Merge "Improve stack overflow diagnostics."
2013-07-16 20:38:55 +00:00
Elliott Hughes
aa754dca90
Improve stack overflow diagnostics.
...
We notify debuggerd of problems by installing signal handlers. That's
fine except for when the signal is caused by us running off the end of
a thread's stack and into the guard page.
Bug: 8557703
Change-Id: I1ef65b4bb3bbca7e9a9743056177094921e60ed3
2013-07-16 13:14:24 -07:00
Elliott Hughes
9562d38df1
Merge "Clean up __builtin_expect usage."
2013-07-16 19:52:30 +00:00
Elliott Hughes
d4e753fea9
Clean up __builtin_expect usage.
...
Also remove some dead code; our malloc debugging doesn't use this
any more.
Change-Id: Id69cf182371f5f37d40b5bbd08f2744ade286e66
2013-07-16 12:45:46 -07:00
Elliott Hughes
f152e386fc
Merge "EABI syscall cleanup."
2013-07-16 19:35:58 +00:00
Elliott Hughes
da4a3e6515
EABI syscall cleanup.
...
We cleaned up the auto-generated ones a while back to not touch
the stack unnecessarily if they have <= 4 arguments. This patch
cleans up some hand-crafted ones.
Also improve comments in clone.S.
Change-Id: I8850bf98f2b26829385315304472a760e6880ed8
2013-07-16 11:52:24 -07:00
The Android Automerger
7256fbd9b2
merge in klp-release history after reset to master
2013-07-16 06:00:36 -07:00
Elliott Hughes
993ea1061b
am 5148661f
: am 67750c85
: Merge "Fix pthread_getattr_np, pthread_attr_setguardsize, and pthread_attr_setstacksize."
...
* commit '5148661f8d2be514d0e3c191bc1e489157ae1154':
Fix pthread_getattr_np, pthread_attr_setguardsize, and pthread_attr_setstacksize.
2013-07-15 16:45:54 -07:00
Elliott Hughes
5148661f8d
am 67750c85
: Merge "Fix pthread_getattr_np, pthread_attr_setguardsize, and pthread_attr_setstacksize."
...
* commit '67750c8515573cba294b2f3840249dd7f7d817d5':
Fix pthread_getattr_np, pthread_attr_setguardsize, and pthread_attr_setstacksize.
2013-07-15 16:42:34 -07:00