| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I5ab969f1f7f049ebd043fe6e5a2b219c30338571
|
|
|
|
|
|
|
|
| |
GCC 4.8 differs from previous GCCs where the option is -fuse-ld=
Also form Negative() circle for bfd/gold/mcld which is mutually
exclusive
Change-Id: I814c3380ad5199691e5a930f5d02696d283d19df
|
|
|
|
|
|
|
|
|
|
| |
1. Fixed darwin build of GCC 4.8/X86 by removing trailing
',' from the last item of enum. Not discovered before
because GCC 4.8 now builds with -Wall -Werror, and gcc-4.2.1
in darwin is picky about that
2. Fixed -fuse-ld=mcld
Change-Id: I7b65edfb76841f14c3290acb5a98f556d00e1139
|
|
|
|
| |
Change-Id: If7890947b3391ec87a3fc2be9baa87ba821fa4ec
|
|
|
|
|
|
| |
See fe1a20404b19d5dd0cd0988d080cff8a455c2a76
Change-Id: I93f281d919bce84796670dc1b29917c690d39c15
|
|
|
|
|
|
|
|
|
|
| |
See
b159d4300781ae367096e05076df56b1467d0d9b
4ecf441b08bb3f039e3836b7517f079be70583ad
651152db0b741de25918b21c42d604b8b6564eaa
3c138513fb44386c87bd5276725d5459f9243833
Change-Id: I6a76c29b0cca118dba4ae012ef053a872f461da1
|
|
|
|
|
|
| |
See a38e7b29885b25278b1d356b2efd21622376695d
Change-Id: I4e2671ea3aa8a67e9b5c6d5974b7486eb7ae54b7
|
|
|
|
|
|
| |
See b3cd55a4e23e443cc4561424e22c27fe7f05b5c1
Change-Id: Iafdee05e23c639fcd011550b38b2570670706c65
|
|
|
|
| |
Change-Id: I6f4b9adba43aa366c5107c8644a7a2afc840d193
|
|
|
|
|
|
|
|
|
| |
See issue https://code.google.com/p/android/issues/detail?id=52732,
and fix http://gcc.gnu.org/ml/gcc-patches/2010-12/msg00732.html
Also see 78a68e851a2f6f9d00367cd38eeedf670bb80f01
Change-Id: Iad4deda17414f3165714da0b60f9f8cb2a6ef052
|
|
|
|
|
|
|
|
|
|
|
|
| |
ARM/X86 GCC in NDK explicitly emit -m armelf_linux_eabi and -m elf_i386,
respectively, for linker. Fix MIPS to do the same, to help mclinker
which is built vanilla and relies on either filename (eg.
eg. arm-linux-androideabi-ld.mcd implies arm) or -mtriple/-march/-m
to figure out the target
See 125708b8e3afa6007ce3aa7132165d27b719ccc3
Change-Id: I79d67b5a69884713b9a3aaa59012c9170b823068
|
|
|
|
|
|
|
| |
See http://code.google.com/p/mclinker/
6502f082fed932c0609b475d5d6917103700e5a8
Change-Id: I3c782584f43a8216d868e016d5f416a574402702
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
posix_memalign doesn't exist in NDK. Code inludes ?mmintrin.h
which in turn includes mm_malloc.h may fail to link
For AOSP platform build which uses the same compiler, add
-DHAVE_POSIX_MEMALIGN to restore the original behavior.
Other than non-zero return value which _mm_alloc already ignores, both
paths are functioanlly identical (under the hood dlmalloc.c in 32-bit
ensure alignment is at least 16-byte)
See 0457b0db02c4b229eab11c01025df948032c31a7
Change-Id: I2e83d544a4ac2f4549de3b41a85e009a0a085476
|
|
|
|
|
|
|
|
|
| |
Used to be first half of NDK local patch at $NDK/build/tools/
toolchain-patches/gcc/0006-Disable-libstdc-versioning.patch
See 4a0927423d51f594b870e58b3eb51574327f8b0e
Change-Id: Ifc8efb661c5b4175feb1654fbc79525e1bc7f713
|
|
|
|
|
|
|
|
|
| |
See b6e375800c9a2f02a732cbdf5e87a860c3d954e1,
1271761f530c0050154e8d526b95f952df551751,
92c478dba755a1a2f6f00ff390666acbffd41982 and
51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.
Change-Id: I7b01524a5516dd31b26a68cccc616a066893db39
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix a test in libstdc++/confiugre to include $glibcxx_thread_h instead
of gthr.h otherwise it will fail to detect gthread lib because the
new gthr.h only include gthr-default.h which doesn't exist in source
directory
See issue http://code.google.com/p/android/issues/detail?id=41770
946c2a6b57ac7d3b2b656ac628bcb14a216ec635
Change-Id: I13bd69f45ddee8b38055f0264c8aa484df0761d2
|
|
|
|
|
|
|
|
|
| |
See http://clang.llvm.org/cxx_status.html
http://code.google.com/p/android/issues/detail?id=39600
https://android-review.googlesource.com/#/c/47836/
1e4edc8addf7fc21d821e64cc81d85315561bcd9
Change-Id: Ibbc2ed2bf665bbdd9529e6d962312b10a0da320f
|
|
|
|
|
|
|
|
|
|
|
| |
For ARM w/o dmb a helper function is called for 64-bit atomic
built-in, which call __write when helper version is too old.
Change to call write instead for Android.
See http://code.google.com/p/android/issues/detail?id=41297
e42abc641966570528522d61ba625e926e979ac7
Change-Id: I15498b73eebdbd5f4d62aafa943290ca341378bb
|
|
|
|
|
|
|
|
| |
32-bit FPU.
See 7609f724df8ca390935f63243fa72e1de39d00c6
Change-Id: Id77b56a1cf886584020cf30a4211de0a87b4f56e
|
|
|
|
|
|
|
|
| |
See
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55245
6014e0c5342ece48f16f5b02f1b0657d2538a036
Change-Id: I25bfcfdbf0911f18db9b554012258f4d9aa060bd
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configured multilib:
> arm-eabi-gcc -print-multi-lib
.;
thumb;@mthumb
thumb/thumb2;@mthumb@march=armv7
See 978fb74a5c086cc5572dc2e3f37d207acad969d7
Change-Id: Ia04c9e23cb5abb924702639c6c0f3afc9c485ff0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To choose between "global" (default) and "tls" (new)
for -fstack-protector, -fstack-protector-all, and
-fstack-protector-strong (GCC 4.6+).
Note that this alone doesn't enable any -fstack-protector*
For NDK: The default "global" generates code backward
compatible with older bionic
For AOSP: build may add "-mstack-protector-guard=tls" to
build platform code with new bionic (*1)
Related CL:
ad88a0863110798cef5169dcf917e18b967a7cf6 (*1)
e804643b6dfcfb5842dea4b714601c6dd89f4944
Change-Id: I341c9022530b37ca289d94e1174dfa86a8eaa1bf
|
|
|
|
|
|
|
|
|
|
|
| |
Bionic setlocale() always returns NULL. $NDK/tests/device/test-gnustl-2
(as well as others using iostream, etc) segfault w/o this change
See d3029b5a1a770d75806370618f7311a991107119,
20ffc596a2771a96ac9b4a4838edc7779a48f0af and
https://code.google.com/p/android/issues/detail?id=46718
Change-Id: I4808ebaedc5495cbc074999b22e3ffea5ba2947c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change 4.8.0 -> 4.8
In NDK gnu-libstdc++ is built seperately and copied over to
standalone. This change simplifies script doing that and make
it less sensitive to future minor version upgrade
See 4b8d41c82a2da3c7b7d9a19e254eba11e05f53fa
Change-Id: I2656771699a188060403b4c2094134d77191566b
|
|
|
|
|
|
|
|
|
| |
Used to be local NDK patch at $NDK/build/tools/toolchain-patches/
gcc/0008-Port-MIPS-Android-support-to-GCC-4.6.patch
See ec1a2a51fa75883e4bdf9f4f03e8fd16a261c275
Change-Id: I7526fc1f1c3304c14b8f6f6d5a0b26ddc1c7e4a0
|
|
|
|
|
|
|
|
|
|
|
| |
See c779c1ff50bde450eb49b3998353804602c4d963
Used to be local NDK patch at $NDK/build/tools/toolchain-patches/
gcc/0004-Enable-x86-gcc-defaults.patch
Also see 5578813961a205a7c5d3e9da8a1b5ec00d4dac3c
They should be passed in configure to work correctly.
See https://android-review.googlesource.com/50815
Change-Id: I0be1f1111870070f25d92d390d2738b52315865d
|
|
|
|
|
|
|
|
|
| |
Used to be local NDK patch at $NDK/build/tools/toolchain-patches/
gcc/0009-Enable-assembler-linker-default-for-security.patch
See 7e66b0108987a56a58c6150672fe7cf8cf88e69a
Change-Id: Ia668c962b7251dd673cc028dac8a111b1aeeb47d
|
|
|
|
|
|
|
|
|
| |
Used to be local NDK patch at $NDK/build/tools/toolchain-patches/
gcc/0003-Work-around-for-Android-__cxa_finalize-bug.patch
See c3e4e5654d02106a19f315b736d56acb581246f9
Change-Id: I2c24a06f96cd183e9b250d22dacd2379b9f10b04
|
|
|
|
|
|
|
|
| |
See related CL:
a22b5261da70bebfad7c6f4e948501e293db172d for GCC 4.7
737fc2a978ff2364d91e634a6b990979df60058f for GCC 4.6
Change-Id: Ic5c924fa61bd839270d0218bf5f6f25d1ace8422
|
|
|
|
|
|
|
|
|
| |
Please see commit message of the same fix in previous GCC
GCC 4.7 3800bda255b20023e993ed786674f70c909d60b5
GCC 4.6 a9fcd9b1ecb8954f67738a94b8553ab234d6def5
GCC 4.4.3 329ca6fa5d9972ad6dad8387036b4dbe9cfa1f27
Change-Id: I288f349d2140918babf3a872728da02c5706a971
|
|
|
|
| |
Change-Id: I0719d8a6d0f69b367a6ab6f10eb75622dbf12771
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In darwin where readelf isn't available, gcc/configure fails
to set HAVE_LD_PERSONALITY_RELAXATION for MIPS, causes
TARGET_WRITABLE_EH_FRAME=1 and flag_dwarf2_cfi_asm=0 (ie. disable
CFI directive), and fails ld.mcld
It's curious that the successful detection of the
/tmp/ndk-$USER/gcc/binutils-2.21/readelf requires binutils
to exist in the GCC's source tree, according to gcc/configure.
Other tools (objdump, nm, ld, as, etc) can be successfully
located because of OBJDUMP_FOR_TARGET, NM_FOR_TARGET, etc.
Fix to look for READELF_FOR_TARGET in gcc/configure
See
https://android-review.googlesource.com/#/c/54760
https://android-review.googlesource.com/#/c/54770
https://android-review.googlesource.com/#/c/54710
Change-Id: I8b057a70d43389d3d9d02b5c54b8365ebe6487d1
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-09 Roland McGrath <mcgrathr@google.com>
* configure.ac: Add tool checks for READELF and READELF_FOR_TARGET.
* configure: Rebuild.
* Makefile.def (flags_to_pass): Add READELF_FOR_TARGET.
* Makefile.tpl (READELF, READELF_FOR_TARGET): New variables.
(HOST_EXPORTS): Add READELF, READELF_FOR_TARGET.
(BASE_FLAGS_TO_PASS): Add READELF_FOR_TARGET.
(BASE_TARGET_EXPORTS, EXTRA_HOST_FLAGS, EXTRA_TARGET_FLAGS):
Add READELF.
* Makefile.in: Rebuild.
2011-11-09 Jason Merrill <jason@redhat.com>
Change-Id: I6f8c1e7ef25a9232d7f1ed549cdb8f02a0b044b0
|
|
|
|
|
|
|
|
|
| |
Since we are building GCC 4.4.3 with binutils-2.21 whose
ld has support for read-only .eh_frames
Without this, "ld.mcld --eh-frame-hdr" very often
Change-Id: Ie77b5e8eba02edc4fa44de060cb37fc1d569f027
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Bionic setlocale() always returns NULL. Check return value before passing
it to other libraries which don't expect NULL in argument.
See 20ffc596a2771a96ac9b4a4838edc7779a48f0af
https://code.google.com/p/android/issues/detail?id=46718
Change-Id: Ie2bf30d5f54c77401519ecb27cb97fb905639bba
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191571
2012-09-17 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/54563
* tree-ssa-math-opts.c (execute_cse_sincos): Call
gimple_purge_dead_eh_edges if last call has been changed.
* g++.dg/torture/pr54563.C: New test.
See https://code.google.com/p/android/issues/detail?id=52909
Change-Id: Ib0f8d0dd2faa5a8f0bdeb160da2e2cd0c24f5757
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Android does support SYS_gettid and SYS_futex which allows
libgomp to use libgomp/config/linux/* instead of
libgomp/config/posix and enables more features such as
thread affinity.
For GCC4.4.3/ARM, the missing linux/futex.h is copied from
GCC 4.6
Also guard the new sc_nprocessors_actu with __ANDROID__,
and fix return value in proc.c
Change-Id: Ib22496075ac5e41c5f44f5160d1b34a5609c168b
|
|/
|
|
| |
Change-Id: Ib97053768252b05decd513825ae45757b220f7d4
|
|\ |
|
| |
| |
| |
| |
| |
| | |
See related b3cd55a4e23e443cc4561424e22c27fe7f05b5c1
Change-Id: Ie43b94f27841b1560f2ce4b2ba163b8584f39ebc
|
|/
|
|
|
|
| |
See related: 811925038a83c20dad6250957e3082e1039c0c77
Change-Id: Ibafc1a0d77bee2340c5279c4c90f5046b1080425
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
.PURPOSE
This patch is to improve the detection of total CPU count for OpenMP/Linux.
This patch helps that OpenMP recognizes the actual CPUs correctly for
the task parallelism.
Recent mobile devices dynamically disable or enable CPU cores on demand to
optimize battery life. This impacts the output of '/proc/cpuinfo' (which only
reports active ones). This patch provides a way to compute the total
number of cores by parsing the content of '/sys/devices/system/cpu/' instead.
Actual CPUs: total installed CPUs
Online's CPUs: CPUs of the turn-on status
Offline's CPUs: CPUs of the turn-off status
Therefore, We need to enhance the existing approach using procfs like
'/proc/cpuinfo/' or '/proc/stat'. This patch is suitable for Linux kernel.
This patch is based on GCC 4.7.2.
.RELATED LINKS:
https://android-review.googlesource.com/#/c/52821/
https://android-review.googlesource.com/#/c/51950/
https://android-review.googlesource.com/#/c/51370/
https://android.googlesource.com/toolchain/gcc/
.UNIT TEST
int main (int argc, char *argv[])
{ int nthreads, tid;
printf("SC_NPROCESSORS_ONLN: %d\n", sysconf (_SC_NPROCESSORS_ONLN));
/* Fork a team of threads giving them their own copies of variables */
{
/* Obtain thread number */
tid = omp_get_thread_num();
printf("Hello World from thread = %d\n", tid);
/* Only master thread does this */
if (tid == 0)
{
nthreads = omp_get_num_threads();
printf("Number of threads = %d\n", nthreads);
}
} /* All threads join master thread and disband */
}
.LIMITATION OF SCOPE
These functions have to be included in Bionic C library
as the resource of sysconf().
Examples:
_SC_NPROCESSORS_ONLN /proc/stat (= /sys/devices/system/cpu/online)
_SC_NPROCESSORS_CONF /proc/cpuinfo (= /sys/devices/system/cpu/online)
_SC_NPROCESSORS_ACTU /sys/devices/system/cpu/present (* Future work)
.COST EVALUATION OF SYSCALLS (On 32bit Quad core)
------------------------------------------
time seconds usecs/call calls syscall
------------------------------------------
-nan 0.000000 0 3 read
-nan 0.000000 0 9 write
-nan 0.000000 0 4 open
-nan 0.000000 0 4 close
-nan 0.000000 0 1 execve
-nan 0.000000 0 1 access
-nan 0.000000 0 1 brk
-nan 0.000000 0 1 munmap
-nan 0.000000 0 2 mprotect
-nan 0.000000 0 7 mmap2
-nan 0.000000 0 3 fstat64
-nan 0.000000 0 1 set_thread_area
------------------------------------------
100 0.000000 0 37 total
Change-Id: I2c6e41616f309eee89ee1145e92201ffe73463f4
Signed-off-by: Geunsik Lim <leemgs@gmail.com>
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Acked-by: Changwoo Min <multics69@gmail.com>
CC: David Turner <digit@android.com>
CC: Keith Obenschain <obenschaink@gmail.com>
CC: Pavel Chupin <pavel.v.chupin@intel.com>
CC: Andrew Hsieh <andrewhsieh@google.com>
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Change-Id: I45ecaa7c20aece451664c631c01a3fefe054293a
|
| |/
|/|
| |
| |
| |
| |
| | |
See issue https://code.google.com/p/android/issues/detail?id=52732,
and fix http://gcc.gnu.org/ml/gcc-patches/2010-12/msg00732.html
Change-Id: If4759a637e5fb6f9c351c11b79d7f9f682ca2ab2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ARM/X86 GCC in NDK explicitly emit -m armelf_linux_eabi and -m elf_i386,
respectively, for linker. Fix MIPS to do the same, to help mclinker
which is built vanilla and relies on either filename (eg.
eg. arm-linux-androideabi-ld.mcd implies arm) or -mtriple/-march/-m
to figure out the target
Change-Id: I236786d0e90a3152225de1eea5e73e3de4ac3f84
|