| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
32-bit: replace -msse3 by -mssse3
64-bit: setup default options as -msse4.2 -mpopcnt
Note: when multilib compiler is used -m32 will match 32-bit options and
-m64 or default (neither -m32 nor -m64) will match 64-bit options.
Change-Id: Ia20a03f54e3ff5857108e9ab0ae1c4c7c1e6cc7f
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|
|
|
|
|
|
|
| |
1. Undo fix in ed7057a1ece24733fe30423cd94131deb8ccb2ca which
precludes __atomic_fetch_add() now supported by clang >= 3.3
2. __float128 is supported by clang >= 3.4
Change-Id: Ic2856368d83d261e3a27e0e24ccc09743afdc68b
|
|
|
|
|
|
| |
.. it always quoted all arguments, irrespective of whether
there was a need to. This means the 32k limit is getting
hit more often than it needs to.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't have config/i386/x86-tune.def in 4.8, instead
initial_ix86_tune_features is modified. This one is for 4.8 only.
2013-09-12 Yuri Rumyantsev <ysrumyan@gmail.com>
* config/i386/x86-tune.def: Turn on X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE
for SLM.
Update HImode imul cost for Silvermont
2013-12-13 Yuri Rumyantsev <ysrumyan@gmail.com>
* config/i386/i386.c (slm_cost): Fix imul cost for HI.
Change-Id: I3e6e7b157897e93bc3874738635db4ecf4e7f587
Signed-off-by: Alexander Ivchenko <alexander.ivchenko@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2012-12-12 Steve Ellcey <sellcey@mips.com>
* config/mips/mips.c (mips_option_override): Set
mips_dbx_regno entries to IGNORED_DWARF_REGNUM by default.
2012-12-10 Steve Ellcey <sellcey@mips.com>
PR target/54061
rtl.h (IGNORED_DWARF_REGNUM): New.
* dwarf2out.c (reg_loc_descriptor): Check for IGNORED_DWARF_REGNUM.
(mem_loc_descriptor): Ditto.
* config/mips/mips.h (ALL_COP_REG_FIRST): New.
(ALL_COP_REG_LAST): New.
(ALL_COP_REG_NUM): Redefine using above macros.
* config/mips/mips.c (mips_option_override): Set mips_dbx_regno
coprocessor entries to IGNORED_DWARF_REGNUM.
Error reads:
target C++: libicui18n <= external/icu4c/i18n/olsontz.cpp
external/icu4c/i18n/decimfmt.cpp: In member function 'virtual icu_50::UnicodeString&
icu_50::DecimalFormat::format(const icu_50::StringPiece&, icu_50::UnicodeString&,
icu_50::FieldPositionIterator*, UErrorCode&) const':
external/icu4c/i18n/decimfmt.cpp:1322:1: internal compiler error: in dbx_reg_number,
at dwarf2out.c:10185
See http://gcc.gnu.org/ml/gcc-patches/2012-12/msg00830.html
Change-Id: I84110b5b54d8d9262043811eddb0edc1c42303f8
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-mldc1-sdc1 now also controls codegen of ldxc1/sdxc1, the indexed
versions (where address of load/store is computed from sum of two
registers) of ldc1/sdc1 which are already controlled by this option.
Although double (or struct containing double) is always aligned
and the stock does guarantee 8-byte alignment, this option
is to workaround issue when double is allocated from a custom
allocator w/o honoring 8-byte minimal alignment.
Change-Id: I79433976509b885b5699d62693fd3154bb752abf
|
|
|
|
|
|
| |
For Ingenic MXU.
Change-Id: Ie7b465c971e3642b3244ac1a77b6f86be4ab4fea
|
|
|
|
|
|
|
| |
See 23e3137ee2897464b051599b85a09f130d3ad05d for the reason why.
backport 4.8 patch from http://gcc.gnu.org/ml/gcc-patches/2012-09/msg00969.html
Change-Id: I9496e11f314e5e2ec9359b993016723ab6366dad
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Default is off (ie. no changes of behavior), meaning that gcc may
generate thumb1 jumptable helper calls (eg. __gnu_thumb1_case_sqi) for
switch/case.
Use -minline-thumb1-jumptable to compile code which can be linked
with compiler-rt where helper __gnu_thumb1_case_* doesn't exist.
This is mainly for use to compile NDK gabi++/stlport/libc++ to be
independent of libgcc.a. The only affected binaries are all
in armeabi. ABIs armeabi-v7a and x86/mips aren't affected. Size
differences are
libgabi++_static.a 176286 -> 176538 +0.1%
libstlport_static.a 1406346 -> 1413318 +0.5%
libc++_static.a 2426814 -> 2439074 +0.5%
Change-Id: I582898955b28e53e988a91bc1a64b76fba677e58
|
|/
|
|
| |
Change-Id: I32b4178ec6f09c08c5ecf70aabf7532e03774766
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See b.android.com/56508 and
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54986
Backport the fix in r193189
2012-11-05 Eric Botcazou <ebotcazou@adacore.com>
PR tree-optimization/54986
* gimple-fold.c (canonicalize_constructor_val): Strip again all no-op
conversions on entry but add them back on exit if needed.
Change-Id: Ibedd829e7780ff78e7b90219ebb7c425f7d2fc01
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Backport r199546 from trunk:
2013-05-31 Yuri Rumyantsev <yuri.s.rumyantsev@intel.com>
Igor Zamyatin <igor.zamyatin@intel.com>
Silvermont (SLM) architecture performance tuning.
* config/i386/i386.h (enum ix86_tune_indices): Add
X86_TUNE_SPLIT_MEM_OPND_FOR_FP_CONVERTS.
(TARGET_SPLIT_MEM_OPND_FOR_FP_CONVERTS): New define.
* config/i386/i386.c (initial_ix86_tune_features)
<X86_TUNE_SPLIT_MEM_OPND_FOR_FP_CONVERTS>: Initialize.
(ix86_lea_outperforms): Handle Silvermont tuning.
(ix86_avoid_lea_for_add): Add new argument to
ix86_lea_outperforms call.
(ix86_use_lea_for_mov): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_lea_for_add_ok): Likewise.
(exact_dependency_1): New function.
(exact_store_load_dependency): Likewise.
(ix86_adjust_cost): Handle Silvermont tuning.
(do_reoder_for_imul): Likewise.
(swap_top_of_ready_list): New function.
(ix86_sched_reorder): Changed to handle Silvermont tuning.
* config/i386/i386.md (peepholes that split memory operand in fp
converts): New.
Also backport r199611 with fixes for the patch above and previous SLM patch:
2013-06-03 Yuri Rumyantsev <yuri.s.rumyantsev@intel.com>
* config/i386/i386.c (ix86_lea_outperforms): Fix formatting.
(ix86_avoid_lea_for_addr): Likewise.
(exact_dependency_1): Likewise.
(ix86_adjust_cost): Likewise.
(swap_top_of_ready_list): Fix formatting and !reload_completed
check removed.
(do_reorder_for_imul): Fix typo, formatting and
!reload_completed check removed.
(ix86_sched_reorder): Fix typo and formatting.
(fold_builtin_cpu): Move M_INTEL_SLM at the end of processor
types list.
* config/i386/cpuinfo.c (INTEL_SLM): New enum value.
Note that [4.7] part of the patch doesn't contain some of optimizations
(IMUL) due to missed dependencies. [4.8] part of this backport is
complete.
Change-Id: I4b5f92b025aab217046f5b393527636f3cf25669
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support new switches: -march=slm/-mtune=slm
This is backport of trunk r199444:
2013-05-30 Yuri Rumyantsev <yuri.s.rumyantsev@intel.com>
Igor Zamyatin <igor.zamyatin@intel.com>
Silvermont (SLM) architecture pipeline model, tuning and
insn selection.
* config.gcc: Add slm config options and target.
* config/i386/slm.md: New.
* config/i386/driver-i386.c (host_detect_local_cpu): Check
* movbe.
* gcc/config/i386/i386-c.c (ix86_target_macros_internal): New
* case
PROCESSOR_SLM.
(ix86_target_macros_internal): Likewise.
* gcc/config/i386/i386.c (slm_cost): New cost.
(m_SLM): New macro flag.
(initial_ix86_tune_features): Set m_SLM.
(x86_accumulate_outgoing_args): Likewise.
(x86_arch_always_fancy_math_387): Likewise.
(processor_target_table): Add slm cost.
(cpu_names): Add slm cpu name.
(x86_option_override_internal): Set SLM ISA.
(ix86_issue_rate): New case PROCESSOR_SLM.
(ia32_multipass_dfa_lookahead): Likewise.
(fold_builtin_cpu): Add slm.
* config/i386/i386.h (TARGET_SLM): New target macro.
(target_cpu_default): Add TARGET_CPU_DEFAULT_slm.
(processor_type): Add PROCESSOR_SLM.
* config/i386/i386.md (cpu): Add new value "slm".
(slm.md): Include slm.md.
* libgcc/config/i386/cpuinfo.c (INTEL_SLM): New enum value.
Change-Id: I3ad6f5584e3fd5de52ac608dc699daaad24f2fe4
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this issue:
https://code.google.com/p/android/issues/detail?id=54623
2013-05-24 Alexander Ivchenko <alexander.ivchenko@intel.com>
PR tree-ssa/57385
* tree-ssa-sccvn.c (fully_constant_vn_reference_p): Check
that index is not negative.
Change-Id: I8c83a3f9992b60d3f59c2b8e123ecda7c398d07e
Signed-off-by: Alexander Ivchenko <alexander.ivchenko@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's required for x86_64 targets where we obviously don't want to
enforce -m32.
It shouldn't affect standard i686 targets because i686 is enforced on
configure stage and it effectively removes 64-bit support, keeping -m32
default.
Patch changes 4.7 and 4.8 only. x86_64 targets are not expected to be
supported in older gcc versions due to many issues and dependencies.
Change-Id: Id15a677a9d3b1712eb95aba92c2c5bd98f9ed1cc
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC allocates memory buffer and passes it as the first hidden argument
for function return large composite type (ie. > 4 bytes for all NDK
toolchain). Problem is that GCC doesn't observe the aligement
required by the type, and ARM EABI only requires stack to be aligned
to 8-byte.
Please see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57271 for external
bug tracking this issue and testcase. This CL offers temp relief before
formal one
Change-Id: I8004bc4208487e539ba8b0c9686c44ac86c37d83
|
|
|
|
|
|
|
|
| |
ldc1/sdc1 needs memory to be 8-byte aligned.
This option is on by default for arch supports it, but can be turned
off by "-mno-ldc1-sdc1" to workaround issue, for example.
Change-Id: I14291dc4280e75f6c765c933b60eb1b7cd44f974
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This patch contains all gcc changes required to build x32 compiler.
They are backported from 4.8/trunk.
Change-Id: I923f639c1f0cee5812b0f555a39bab0bd0723865
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Two fixes
1) Undefine GCC4.7/4.8 _GLIBCXX_ATOMIC_BUILTINS
Clang arm/mips can't compile the following atomic intrinsics yet
__atomic_fetch_add(__mem, __val, __ATOMIC_ACQ_REL);
__atomic_fetch_add(__mem, __val, __ATOMIC_ACQ_REL);
Use library calls instead
2) Undefine GCC4.7/4.8 _GLIBCXX_USE_FLOAT128. Clang doesn't support
__float128 yet
Change-Id: I0ff0eb208665beeb3e5e09917fd4c7dd378fc54e
|
|/
|
|
|
|
|
|
|
| |
r191401 | jingyu | 2012-09-18 01:33:05 +0800 (Tue, 18 Sep 2012) | 6 lines
2012-09-17 Ben Cheng <bccheng@google.com
* config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Suppress the
dynamic linker commands for statically linked programs.
Change-Id: Ib8a27fb054ddb12242d500ef8b3ceb2b0215cb3e
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
.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
|
| |
| |
| |
| |
| |
| | |
http://code.google.com/p/mclinker/
Change-Id: Ic9d88a86298eddaccf3c7da8405efb2b2f0d3e70
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
Change-Id: I55e9bb8b80e1b55baa9744920df10fcf83218300
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
They should be passed in configure to work correctly.
See https://android-review.googlesource.com/50815
Change-Id: I2aeb0375132ba985a51c397ee386af1ff4a47c32
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|/
|
|
|
|
|
|
| |
2013-01-03 Jason Merrill <jason@redhat.com>
PR c++/55856
* semantics.c (build_data_member_initialization): Handle DECL_EXPR.
Change-Id: Ib34c16c4bc714875a49831ef8fb1691b392640cd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
line #16514 "if (prev == BB_HEAD(bb))" causes segfault due to bb==NULL
when compiling external/llvm/lib/Transforms/Scalar/SROA.cpp
BUG: 8047767
------------------------------------------------------------------
r186451 | vries | 2012-04-14 05:17:41 -0700 (Sat, 14 Apr 2012) | 13 lines
2012-04-14 Tom de Vries <tom@codesourcery.com>
* cfgcleanup.c (try_optimize_cfg): Replace call to delete_insn_chain by
call to delete_insn. Remove code to reorder BASIC_BLOCK note and
DELETED_LABEL note, and move it to ...
* cfgrtl.c (delete_insn): ... here. Change return type to void.
(delete_insn_and_edges): Likewise.
(delete_insn_chain): Handle new return type of delete_insn. Delete
chain backwards rather than forwards.
* rtl.h (delete_insn, delete_insn_and_edges): Change return type to
void.
* cfglayout.c (fixup_reorder_chain): Delete unused label.
Change-Id: Ibc069a4267d063586003d49a805fb794f4041465
|
|
|
|
|
|
|
| |
Used to be first half of NDK local patch at $NDK/build/tools/
toolchain-patches/gcc/0006-Disable-libstdc-versioning.patch
Change-Id: I8ac0f14d20f32a4f946ffd6fd5756a2ab556e99b
|
|
|
|
|
|
|
|
| |
This reverts commit bd342f0491128ad15e6ea4ff241e243b753137c9
In favor of later/better fix in 75d889ea23f0ff1ecaa5cb79b435aca25460a4c9
Change-Id: Iae68d49b39b528d790c7404e657f3daa32a19864
|
|
|
|
|
|
|
|
|
| |
This is needed to provide "steady_clock" (or monotonic_clock in
GCC 4.6/4.4.3) in <chrono>
See http://code.google.com/p/android/issues/detail?id=39680
Change-Id: I0c31704971dc15751ce936f563de7c42a4e645a6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Based on 1271761f530c0050154e8d526b95f952df551751,
92c478dba755a1a2f6f00ff390666acbffd41982, and
51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.
With the following modifications:
1. Translate -pthread to -lc instead of -lpthread Android
doesn't have (has pthread* in libc.so instead)
2. Because of 1., we can restore to the original order of
LINUX_OR_ANDROID_LD
Change-Id: I505250c32b9908cb17bb269dc26e73c91669c07f
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The patch supports OpenMP library to parallelize the existing
C/C++ code (e.g: for task parallelism) rapidly/easily without
any modification of android platform on multicore embedded devices.
The original patch is made by Keith Obenschain (using GCC 4.4.3).
. Archive - https://android-review.googlesource.com/#/c/34491/
I just moved GCC version from 4.4.3 to 4.7.2 for ktoolchain
version 2.5. The patch is good to me when I evaluate a lot of
C/C++ source code with OpenMP's #parama. we move the version
of OpenMP from version 2.5 to version 3.1.
Please, refer to the "kandroid toolchain" menu in www.kandroid.org
to compile source code including bionic and openmp library on real
Android devices.
http://kandroid.org/board/board.php?board=toolchain&command=body&no=16
I tested Openmp library with the latest GCC 4.7.2 on Android/ARM
devices as following. Please refer to the below example.
geunsik@rhel6$> ./arm-linux-androideabi-gcc openmptest.c -L
/usr/local/ktoolchain-cortexa9-ver2.5-20120515-bionic/arm-linux-androideabi/lib
-lgomp -o openmptest [ENTER]
geunsik@rhel6$>
geunsik@rhel6$>
geunsik@rhel6$> file ./openmptest
./openmptest: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
dynamically linked (uses shared libs), not stripped
Change-Id: I20cb3c1ac5c000445c043310158179723bd69fe2
Signed-off-by: Geunsik Lim <leemgs@gmail.com>
Acked-by: Geunsik Lim <geunsik.lim@gmail.com>
|
|/
|
|
|
|
|
|
|
|
|
| |
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
Change-Id: I736b7ba2b472a26f9e43097bb88fb68325114a7d
|
|\ |
|