aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/config/arm
Commit message (Collapse)AuthorAgeFilesLines
* Merge GCC 4.8.3Andrew Hsieh2014-06-198-213/+256
| | | | Change-Id: I0abe59f7705b3eccc6b2f123af75b2e30917696a
* [4.8, 4.9] Add simplify-gotCarrot Wei2014-05-152-0/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This pass optimize GOT_PREL (already exists in toolchain/gcc/gcc-4.6) Backport from svn://gcc.gnu.org/svn/gcc/branches/google/gcc-4_6-mobile UNSPEC_GOT_PREL_SYM is now in new file arm/unspecs.md 4.9 port is slightly different due to changes in gcc passes See Google b/14811006 r173209 | carrot | 2011-04-30 16:07:46 +0800 (Sat, 30 Apr 2011) | 21 lines * hooks.c (hook_rtx_void_null): New function. * hooks.h (hook_rtx_void_null): New prototype. * target.def (got_access): New hook vector declaration. * tree-pass.h (pass_simplify_got): New pass. * timevar.def (TV_SIMPLIFY_GOT): New TV id. * simplify-got.c: New source file. * Makefile.in (simplify-got.o): Add a new file. * passes.c (init_optimization_passes): Add a new pass. * config/arm/arm.c (arm_output_addr_const_extra): Output GOT_PREL relocation. (arm_get_pic_reg): New function. (arm_clear_pic_reg): New function. (arm_can_simplify_got_access): New function. (arm_loaded_global_var): New function. (arm_load_global_address): New function. * config/arm/arm.md (UNSPEC_GOT_PREL_SYM): New UNSPEC symbol. * testsuite/gcc.target/arm/got1.c: New testcase. * testsuite/gcc.target/arm/got2.c: New testcase. Change-Id: I91e881df19bb6937a5fbcc8e6b83d158717c7773
* [4.6, 4.8] Add additional multilib option: mfloat-abi=hardAndrew Hsieh2013-12-262-4/+5
| | | | | | | | | | | | Only available with "-march=armv7-a", this CL add two set of libraries 1. "armv7-a/hard": -march=armv7-a -mfloat-abi=hard 2. "armv7-a/thumb/hard": -march=armv7-a -mthumb -mfloat-abi=hard Note that -mhard-float implies -mfloat-abi=hard, which in turns select one of the above /hard libraries dependeing on the presence of -mthumb or not. (ie. no need to explicitly specifly -mfloat-abi=hard after -mhard-float) Change-Id: Ib803ecaa911082d6bc4f98b542d7d28e98be6726
* Remove *.orig; update libgo testdataAndrew Hsieh2013-12-031-27441/+0
| | | | | | | 1. *.orig files are artifact after patch 2. restore 3 testdata which were reset to zero-byte in last rebase Change-Id: I32e80c33349249cb11397b57698c2a241793652c
* Merge "[4.8] Merge GCC 4.8.2"Andrew Hsieh2013-12-034-26/+27516
|\
| * [4.8] Merge GCC 4.8.2synergydev2013-10-174-26/+27516
| | | | | | | | Change-Id: I0f1fcf69c5076d8534c5c45562745e1a37adb197
* | [4.8] Backport revision 204203 to fix 3.4 kernel compilation.Ben Cheng2013-10-301-0/+1
|/ | | | | | | | | | 2013-10-30 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> PR target/58854 * config/arm/arm.c (arm_expand_epilogue_apcs_frame): Emit * blockage. Change-Id: I6edddcf212f4185ab55a3a17bc7a80b1ab6b64b7
* Merge "Add an internal switch -minline-thumb1-jumptable to ARM gcc4.6/4.7/4.8"Andrew Hsieh2013-08-074-3/+9
|\
| * Add an internal switch -minline-thumb1-jumptable to ARM gcc4.6/4.7/4.8Lai Wei-Chih2013-08-024-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | [4.8] Merge GCC 4.8.1Ben Cheng2013-08-054-51/+168
|/ | | | Change-Id: Ic8a60b7563f5172440fd40788605163a0cca6e30
* Fix ARM/GCC-4.7,4.8 generates insufficient alignment for NEON vst/vldAndrew Hsieh2013-05-151-2/+6
| | | | | | | | | | | | | | 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
* [4.8] Fixed GCC 4.8 ICE gen_thumb_movhi_clobber at config/arm/arm.md:5832Andrew Hsieh2013-04-022-2/+3
| | | | | | | | | 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
* [4.8] Support OpenMPAndrew Hsieh2013-04-021-1/+1
| | | | | | | | | See b6e375800c9a2f02a732cbdf5e87a860c3d954e1, 1271761f530c0050154e8d526b95f952df551751, 92c478dba755a1a2f6f00ff390666acbffd41982 and 51df2e98d22e2c6f5d2a16860bc8fc3644179c1d. Change-Id: I7b01524a5516dd31b26a68cccc616a066893db39
* [4.8] Enable armv7/thumb2 multilib for arm-eabi.Ben Cheng2013-04-021-12/+17
| | | | | | | | | | | | | Configured multilib: > arm-eabi-gcc -print-multi-lib .; thumb;@mthumb thumb/thumb2;@mthumb@march=armv7 See 978fb74a5c086cc5572dc2e3f37d207acad969d7 Change-Id: Ia04c9e23cb5abb924702639c6c0f3afc9c485ff0
* [4.8] Enable x86/arm gcc defaults; Remove march/mtune/mfpmath hardcoded valuesAndrew Hsieh2013-04-021-1/+1
| | | | | | | | | | | 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
* [4.8] Enable assembler linker default for securityAndrew Hsieh2013-04-022-2/+9
| | | | | | | | | 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
* [4.8] Disable warning: the mangling of <va_list> has changed in GCC 4.4Andrew Hsieh2013-04-021-1/+23
| | | | | | | | | 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
* [GCC 4.8] Initial check-in of GCC 4.8.0Ben Cheng2013-03-2888-0/+87496
Change-Id: I0719d8a6d0f69b367a6ab6f10eb75622dbf12771