aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Add --build-debuggable option to build-gcc.sh"Than McIntosh2015-11-021-9/+18
|\
| * Add --build-debuggable option to build-gcc.shThan McIntosh2015-11-021-9/+18
| | | | | | | | | | | | | | Add an option to build-gcc.sh to build a more debuggable (-O0 -g, not stripped) copy of gcc. Change-Id: Ieabcfc8b02796041eb89fa4c1b9614994466a5b6
* | Fix typo in comment.Than McIntosh2015-10-301-1/+1
|/ | | | Change-Id: If59bf26456eeb476d9f6e641a6aad0e433112546
* Fix for N9 kernel build.Than McIntosh2015-10-161-60/+76
| | | | | | | | | | | | | | | | Cherry-pick from trunk: commit 39f4504dbc88d17c496cdf7b12fb0d32277d281d Author: pinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Tue Jun 3 22:42:47 2014 +0000 2014-06-03 Andrew Pinski <apinski@cavium.com> * config/aarch64/aarch64.c (aarch64_if_then_else_costs): New function. (aarch64_rtx_costs): Use aarch64_if_then_else_costs. Bug: 24985248 Change-Id: Ic03ba2552615fca0aa0de6af47f47ae4cf074e3b
* Remove gcc-4.8.Dan Albert2015-10-1380064-13666976/+0
| | | | Change-Id: Iee9c6985c613f58c82e33a91722d371579eb290f
* Fix for b/23822150 (arm64 bad code for copysignl)Than McIntosh2015-10-091-11/+26
| | | | | | | | | | This bug was inherited from the google/gcc-4_9 branch; a change was "temporarily" patched out in r216495, then never restored. Bug: 23822150 Change-Id: Ibfc9f65e108e9c9b3dca263920bdae3cc6f75080
* Fix selected issues with non-4.9 gcc buildsThan McIntosh2015-09-241-4/+13
| | | | | | | | | | Fix some issues that crop up when using build-gcc.sh on post-4.9 versions of GCC (for triage/bug-reproduction purposes): trunk gcc calls isl directly, no longer through "cloog", and requires updated version of ISL. Resulting build still fails compiling libatomic, however the cross compiler itself is still usable. Change-Id: I8caa936172a4b2093938bda44a452aa4d841df8d
* Reapplied the patch 525b640e8dc9e6063897a7ce8034283Alexander Ivchenko2015-09-141-0/+6
| | | | | | | | | | | | | | | | | ... with peeling limit set to 400 instead of 200 as it used to be. [4.9] Another backport from trunk of additional slm tuning. 2014-11-21 Evgeny Stupachenko <evstupac@gmail.com> * config/i386/i386.c (ix86_option_override_internal): Increase PARAM_MAX_COMPLETELY_PEELED_INSNS. Signed-off-by: Alexander Ivchenko <alexander.ivchenko@intel.com> Signed-off-by: Egor Kochetov <egor.kochetov@intel.com> (cherry picked from commit 1f170f4a426b1ed354345de5aaba634036854e43) Change-Id: Ie395a6602c8305530ebc02f9006d84f98365857a
* Merge changes I65f8bbbc,Iaa65e2d1,Ifa0139c9,Ic39d2a2b,I78cf0a23Dan Albert2015-09-0913-3/+1293
|\ | | | | | | | | | | | | | | | | * changes: backport fix for PR65735 backport patch to fix PR65177 backport patch to fix PR65048 backport patch for PR 64878: do not jump thread across more than one back-edge port revision 219584 from linaro/gcc-4_9-branch
| * backport fix for PR65735Sebastian Pop2015-08-282-6/+27
| | | | | | | | | | | | | | | | | | | | PR tree-optimization/65735 * tree-ssa-threadedge.c (fsm_find_control_statement_thread_paths): Remove visited_phis argument, add visited_bbs, avoid recursing into the same bb rather than just into the same phi node. (thread_through_normal_block): Adjust caller. * gcc.c-torture/compile/pr65735.c: New test.
| * backport patch to fix PR65177Sebastian Pop2015-08-282-26/+91
| | | | | | | | | | | | | | | | | | | | PR tree-optimization/65177 * tree-ssa-threadupdate.c (verify_seme): Renamed verify_jump_thread. (bb_in_bbs): New. (duplicate_seme_region): Renamed duplicate_thread_path. Redirect all edges not adjacent on the path to the original code. * gcc.dg/tree-ssa/ssa-dom-thread-10.c: New.
| * backport patch to fix PR65048Sebastian Pop2015-08-282-6/+84
| | | | | | | | | | | | | | | | | | | | PR tree-optimization/65048 * tree-ssa-threadupdate.c (valid_jump_thread_path): New. (thread_through_all_blocks): Call valid_jump_thread_path. Remove invalid FSM jump-thread paths. PR tree-optimization/65048 * gcc.dg/tree-ssa/ssa-dom-thread-9.c: New.
| * backport patch for PR 64878: do not jump thread across more than one back-edgeSebastian Pop2015-08-282-3/+456
| | | | | | | | | | | | | | | | | | | | | | | | 2015-02-04 Sebastian Pop <s.pop@samsung.com> Brian Rzycki <b.rzycki@samsung.com> PR tree-optimization/64878 * tree-ssa-threadedge.c: Include tree-ssa-loop.h. (fsm_find_control_statement_thread_paths): Add parameter seen_loop_phi. Stop recursion at loop phi nodes after having visited a loop phi node. * testsuite/gcc.dg/tree-ssa/ssa-dom-thread-8.c: New.
| * port revision 219584 from linaro/gcc-4_9-branchSebastian Pop2015-08-289-3/+676
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ 2015-01-14 Yvan Roux <yvan.roux@linaro.org> Backport from trunk r218451. 2014-12-06 James Greenhalgh <james.greenhalgh@arm.com> Sebastian Pop <s.pop@samsung.com> Brian Rzycki <b.rzycki@samsung.com> PR tree-optimization/54742 * params.def (max-fsm-thread-path-insns, max-fsm-thread-length, max-fsm-thread-paths): New. * doc/invoke.texi (max-fsm-thread-path-insns, max-fsm-thread-length, max-fsm-thread-paths): Documented. * tree-cfg.c (split_edge_bb_loc): Export. * tree-cfg.h (split_edge_bb_loc): Declared extern. * tree-ssa-threadedge.c (simplify_control_stmt_condition): Restore the original value of cond when simplification fails. (fsm_find_thread_path): New. (fsm_find_control_statement_thread_paths): New. (thread_through_normal_block): Call find_control_statement_thread_paths. * tree-ssa-threadupdate.c (dump_jump_thread_path): Pretty print EDGE_FSM_THREAD. (verify_seme): New. (duplicate_seme_region): New. (thread_through_all_blocks): Generate code for EDGE_FSM_THREAD edges calling duplicate_seme_region. * tree-ssa-threadupdate.h (jump_thread_edge_type): Add EDGE_FSM_THREAD. gcc/testsuite/ 2015-01-14 Yvan Roux <yvan.roux@linaro.org> Backport from trunk r218451. 2014-12-06 James Greenhalgh <james.greenhalgh@arm.com> Sebastian Pop <s.pop@samsung.com> Brian Rzycki <b.rzycki@samsung.com> PR tree-optimization/54742 * gcc.dg/tree-ssa/ssa-dom-thread-6.c: New test. * gcc.dg/tree-ssa/ssa-dom-thread-7.c: New test.
* | [4.9] Add several improvements for AArch64ktkachov2015-09-092-39/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from GCC 5. 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> Properly handle mvn-register and add EON+shift pattern and cost appropriately * config/aarch64/aarch64.md (*eor_one_cmpl_<SHIFT:optab><mode>3_alt): New pattern. (*eor_one_cmpl_<SHIFT:optab>sidi3_alt_ze): Likewise. * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle MVN-shift appropriately. Handle alternative EON form. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222637 138bc75d-0d04-0410-961f-82ee72b054a4 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> Properly cost FABD pattern * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle pattern for fabd in ABS case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222638 138bc75d-0d04-0410-961f-82ee72b054a4 2015-05-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> Remember to cost operand 0 in FP compare-with-0.0 case * config/aarch64/aarch64.c (aarch64_rtx_costs, COMPARE case): Add cost of op0 in the compare-with-fpzero case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222673 138bc75d-0d04-0410-961f-82ee72b054a4 2015-05-01 Wilco Dijkstra <wdijkstr@arm.com> Fix aarch64_rtx_costs of PLUS/MINUS * gcc/config/aarch64/aarch64.c (aarch64_rtx_costs): Calculate cost of op0 and op1 in PLUS and MINUS cases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222676 138bc75d-0d04-0410-961f-82ee72b054a4 2015-07-27 Wilco Dijkstra <wdijkstr@arm.com> Improve spill code - swap order in shl pattern * config/aarch64/aarch64.md (aarch64_ashl_sisd_or_int_<mode>3): Place integer variant first. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226247 138bc75d-0d04-0410-961f-82ee72b054a4 2015-07-27 Wilco Dijkstra <wdijkstr@arm.com> Improve spill code - swap order in shr patterns * gcc/config/aarch64/aarch64.md (aarch64_lshr_sisd_or_int_<mode>3): Place integer variant first. (aarch64_ashr_sisd_or_int_<mode>3): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226253 138bc75d-0d04-0410-961f-82ee72b054a4 2015-08-04 Pawel Kupidura <pawel.kupidura@arm.com> * config/aarch64/aarch64.c: Change inner loop statement cost to be consistent with other targets. Change-Id: If5b10466302d733fcae6eacc9d128fdb8f95c0de git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226575 138bc75d-0d04-0410-961f-82ee72b054a4
* | Merge "[4.9] Adjust several costs for AArch64."Dan Albert2015-09-082-206/+1092
|\ \
| * | [4.9] Adjust several costs for AArch64.jgreenhalgh2015-08-282-206/+1092
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport from trunk 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Refactor aarch64_address_costs. gcc/ * config/aarch64/aarch64-protos.h (scale_addr_mode_cost): New. (cpu_addrcost_table): Use it. * config/aarch64/aarch64.c (generic_addrcost_table): Initialize it. (aarch64_address_cost): Rewrite using aarch64_classify_address, move it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210493 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Add cost tables for Cortex-A57 gcc/ * config/aarch64/aarch64.c (cortexa57_addrcost_table): New. (cortexa57_vector_cost): Likewise. (cortexa57_tunings): Use them. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210494 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Better estimate cost of building a constant gcc/ * config/aarch64/aarch64.c (aarch64_build_constant): Conditionally emit instructions, return number of instructions which would be emitted. (aarch64_add_constant): Update call to aarch64_build_constant. (aarch64_output_mi_thunk): Likewise. (aarch64_rtx_costs): Estimate cost of a CONST_INT, cost a CONST_DOUBLE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210496 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Add cost tables for Cortex-A57 gcc/ * config/aarch64/aarch64.c (cortexa57_addrcost_table): New. (cortexa57_vector_cost): Likewise. (cortexa57_tunings): Use them. 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Wrap aarch64_rtx_costs to dump verbose output gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs_wrapper): New. (TARGET_RTX_COSTS): Call it. 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Better estimate cost of building a constant gcc/ * config/aarch64/aarch64.c (aarch64_build_constant): Conditionally emit instructions, return number of instructions which would be emitted. (aarch64_add_constant): Update call to aarch64_build_constant. (aarch64_output_mi_thunk): Likewise. (aarch64_rtx_costs): Estimate cost of a CONST_INT, cost a CONST_DOUBLE. 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Factor out common MULT cases gcc/ * config/aarch64/aarch64.c (aarch64_strip_shift_or_extend): Rename to... (aarch64_strip_extend): ...this, don't strip shifts, check RTX is well formed. (aarch64_rtx_mult_cost): New. (aarch64_rtx_costs): Use it, refactor as appropriate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210497 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Set default costs and handle vector modes. gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Set default costs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210498 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Improve SET cost. gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costing for SET RTX. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210499 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Cost memory accesses using address costs gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Use address costs when costing loads and stores to memory. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210500 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Better cost logical operations gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Improve cost for logical operations. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210501 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Improve costs for sign/zero extend operations gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Cost ZERO_EXTEND and SIGN_EXTEND better. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210502 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Improve costs for rotate and shift operations. * config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for rotates and shifts. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210503 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philip Tomsich <philipp.tomsich@theobroma-systems.com> Improve costs for sign/zero extracts gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for SIGN/ZERO_EXTRACT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210504 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Improve costs for div/mod gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for DIV/MOD. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210505 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Cost comparisons, flag setting operators and IF_THEN_ELSE gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Cost comparison operators. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210506 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Cost more Floating point RTX. gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Cost FMA, FLOAT_EXTEND, FLOAT_TRUNCATE, ABS, SMAX, and SMIN. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210507 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Cost TRUNCATE gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Cost TRUNCATE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210508 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Cost for SYMBOL_REF, HIGH and LO_SUM gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Cost SYMBOL_REF, HIGH, LO_SUM. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210509 138bc75d-0d04-0410-961f-82ee72b054a4 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Dump a message if we are unable to cost an insn. gcc/ * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle the case where we were unable to cost an RTX. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210510 138bc75d-0d04-0410-961f-82ee72b054a4 2014-08-26 Evandro Menezes <e.menezes@samsung.com> Fix typos in cost data structure. * config/arm/aarch64/aarch64.c (generic_addrcost_table): Delete qi cost; add di cost. (cortexa57_addrcost_table): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214503 138bc75d-0d04-0410-961f-82ee72b054a4
* | | Merge changes I9c3e680b,I56c1a4fd,I4eb84d2bDan Albert2015-09-0815-221/+953
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * changes: PR tree-optimization/48052 PR tree-optimization/52563, tree-optimization/62173 Cherry-pick: PR tree-optimization/65447
| * | | PR tree-optimization/48052Aditya Kumar2015-08-277-62/+370
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 05032b10839cf0498c992c819bf2358e86c22bb0 Author: amker <amker@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Tue Jun 2 10:19:18 2015 +0000 PR tree-optimization/48052 * cfgloop.h (struct control_iv): New. (struct loop): New field control_ivs. * tree-ssa-loop-niter.c : Include "stor-layout.h". (number_of_iterations_lt): Set no_overflow information. (number_of_iterations_exit): Init control iv in niter struct. (record_control_iv): New. (estimate_numbers_of_iterations_loop): Call record_control_iv. (loop_exits_before_overflow): New. Interface factored out of scev_probably_wraps_p. (scev_probably_wraps_p): Factor loop niter related code into loop_exits_before_overflow. (free_numbers_of_iterations_estimates_loop): Free control ivs. * tree-ssa-loop-niter.h (free_loop_control_ivs): New. gcc/testsuite/ChangeLog PR tree-optimization/48052 * gcc.dg/tree-ssa/scev-8.c: New. * gcc.dg/tree-ssa/scev-9.c: New. * gcc.dg/tree-ssa/scev-10.c: New. * gcc.dg/vect/pr48052.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224020 138bc75d-0d04-0410-961f-82ee72b054a4
| * | | PR tree-optimization/52563, tree-optimization/62173Aditya Kumar2015-08-277-139/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 5fe66b3cf99994fd9c8c68cea43aa1cf42eaa76d Author: amker <amker@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Tue Jun 2 03:33:35 2015 +0000 PR tree-optimization/52563 PR tree-optimization/62173 * tree-ssa-loop-ivopts.c (struct iv): New field. Reorder fields. (alloc_iv, set_iv): New parameter. (determine_biv_step): Delete. (find_bivs): Inline original determine_biv_step. Pass new argument to set_iv. (idx_find_step): Use no_overflow information for conversion. * tree-scalar-evolution.c (analyze_scalar_evolution_in_loop): Let resolve_mixers handle folded_casts. (instantiate_scev_name): Change bool parameter to bool pointer. (instantiate_scev_poly, instantiate_scev_binary): Ditto. (instantiate_array_ref, instantiate_scev_not): Ditto. (instantiate_scev_3, instantiate_scev_2): Ditto. (instantiate_scev_1, instantiate_scev_r): Ditto. (instantiate_scev_convert, ): Change parameter. Pass argument to chrec_convert_aggressive. (instantiate_scev): Change argument. (resolve_mixers): New parameter and set it. (scev_const_prop): New argument. * tree-scalar-evolution.h (resolve_mixers): New parameter. * tree-chrec.c (convert_affine_scev): Call chrec_convert instead of chrec_conert_1. (chrec_convert): New parameter. Move definition below. (chrec_convert_aggressive): New parameter and set it. Call convert_affine_scev. * tree-chrec.h (chrec_convert): New parameter. (chrec_convert_aggressive): Ditto. gcc/testsuite/ChangeLog PR tree-optimization/52563 PR tree-optimization/62173 * gcc.dg/tree-ssa/scev-3.c: Remove xfail. * gcc.dg/tree-ssa/scev-4.c: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224009 138bc75d-0d04-0410-961f-82ee72b054a4
| * | | Cherry-pick: PR tree-optimization/65447Aditya Kumar2015-08-272-20/+412
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit ad478851f7dd45438a9b33ecd7f30a4e6ab00388 Author: amker <amker@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Wed May 20 05:15:56 2015 +0000 PR tree-optimization/65447 * tree-ssa-loop-ivopts.c (struct iv_use): New fields. (dump_use, dump_uses): Support to dump sub use. (record_use): New parameters to support sub use. Remove call to dump_use. (record_sub_use, record_group_use): New functions. (compute_max_addr_offset, split_all_small_groups): New functions. (group_address_uses, rewrite_use_address): New functions. (strip_offset): New declaration. (find_interesting_uses_address): Call record_group_use. (add_candidate): New assertion. (infinite_cost_p): Move definition forward. (add_costs): Check INFTY cost and return immediately. (get_computation_cost_at): Clear setup cost and dependent bitmap for sub uses. (determine_use_iv_cost_address): Compute cost for sub uses. (rewrite_use_address_1): Rename from old rewrite_use_address. (free_loop_data): Free sub uses. (tree_ssa_iv_optimize_loop): Call group_address_uses. gcc/testsuite PR tree-optimization/65447 * gcc.dg/tree-ssa/pr65447.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223433 138bc75d-0d04-0410-961f-82ee72b054a4
* | | Refactor to use build_support.Dan Albert2015-08-281-99/+18
| | | | | | | | | | | | Change-Id: Icb73f2e12dd88358b417db37342a640026eef88b
* | | Use module docstring for argparse help.Dan Albert2015-08-281-1/+4
| |/ |/| | | | | Change-Id: Idc72987bd5652f0b2d666eedeb5ec51750da6929
* | Don't install GCC to $PACKAGE_DIR.Dan Albert2015-08-271-9/+4
| | | | | | | | | | | | | | | | We don't need to be archiving these build artifacts in their extracted form on the build server. Build and install to $TMPDIR, but still package that tarball into $PACKAGE_DIR. Change-Id: Iba42c19e0f7b49f2da608b577579fcc8871eb85c
* | Remove the sysroot from the built toolchain.Dan Albert2015-08-271-0/+8
| | | | | | | | | | | | | | This used to be handled by package-release.sh, but we now need to perform the full build/package step here rather than in ndk/. Change-Id: Ia8a1662fd5c6adec72f83d15374af6f4bfa04afd
* | Merge "Don't build gdb via gcc."Josh Gao2015-08-281-38/+4
|\ \
| * | Don't build gdb via gcc.Josh Gao2015-08-271-38/+4
| | | | | | | | | | | | Change-Id: Iff7e294f5bf08048d019f39465d377cfb9782866
* | | Merge "Fix mingw build breakage"Dan Albert2015-08-282-0/+5
|\ \ \
| * | | Fix mingw build breakageAndrew Hsieh2015-08-062-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Add missing _GCOV_fopen if !__KERNEL__ 2) Use _fullpath Change-Id: Id10cedf85e9a3409c284b77321675f61d37e76c2
* | | | Merge "Drop mips64r2 from Android compiler's multilib"Dan Albert2015-08-281-4/+4
|\ \ \ \
| * | | | Drop mips64r2 from Android compiler's multilibDuane Sand2015-08-271-4/+4
| | |/ / | |/| | | | | | | | | | Change-Id: Ic2549845a10d16620d492cbf91a8cfc4cb2e6c61
* / | | Infer ANDROID_BUILD_TOP if it is not set.Dan Albert2015-08-271-4/+4
|/ / / | | | | | | | | | Change-Id: I78d92443247b7260030bbe023b460696f9289313
* | | Rename libstdc++.so to libgnustl_shared.soDavid 'Digit' Turner2015-08-272-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | This patch ensure that the generated library is called libgnustl_shared.so instead of libstdc++.so.3 (or some similar number-versioned name). Change-Id: I63fb5be818115c6d0c7e96b937ba39f225b475cf (cherry picked from commit 62268d3b73073a061628595f226989bc17c2c622)
* | | Stop building libgccunwind.a.Dan Albert2015-08-271-89/+0
| | | | | | | | | | | | | | | | | | | | | This is unused and we already get this from libgcc. Change-Id: I1b1a405662294a3395928bc42e395271f758c40a (cherry picked from commit c622d534cf0921bd22c4afe5060520f8fdd49d08)
* | | Fix toolchain location.Dan Albert2015-08-271-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently we've been packing an empty tarball of the toolchain since I split up the toolchain build because the script defines the install path in a few different places. Fix the toolchain install path to match the format we expect (toolchains/$HOST/$TOOLCHAIN/prebuilt), improve logging, and actually fail the build if we can't package the toolchain. Change-Id: I093ca747af13b5ed093cb43499ea1fdb9aed0430 (cherry picked from commit dd4155a395690bbe0372cf9ec63dd2ed85e7b81c)
* | | Stop checking glibc symbols.Dan Albert2015-08-271-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're building against an old version of libc to check this already, and the script doesn't seem to be checking the right things anyway (we don't support older than 2.11). To top it all off, we haven't been checking this for failure anyway. Change-Id: I67e6b03cf7c3cce66cfb4c69dd18d8b9a6f31806 (cherry picked from commit 13185e44b81bb04268394f30efa7b0649c43e8ce)
* | | Use the build scripts from ndk/.Dan Albert2015-08-272-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the build scripts from prebuilts/ndk makes the edit/compile cycle complicated since we have to either edit in ndk/ and copy to prebuilts/ or vice versa. The prebuilt NDK build scripts should really just be whatever build scripts we end up shipping with the modular NDK (i.e. anything that supports ndk-build or the tests rather than things used to build the NDK itself). Change-Id: Id995397d6272f1539037a19287cc8a69fdb4b8a1 (cherry picked from commit 79ee432e58c7b1a4ae92aa2886ecd96173acbdf6)
* | | Use the prebuilt sysroot.Dan Albert2015-08-271-10/+36
| | | | | | | | | | | | | | | Change-Id: I889824306f0c1da9c1a094d862ac84339d1b01a3 (cherry picked from commit 32abc19b922a8561f491012a0ddf926c44d1bccd)
* | | Fix 32-bit Windows build.Dan Albert2015-08-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Oops. Accidentally applied --try-64 to win32. For some reason the order of the mingw and try-64 flag seems to affect the argument parsing :( Change-Id: Ie993be9bc9a0a2e3fc5838767276da566100fbf6 (cherry picked from commit d04816184a047fc46234a2c763aeea436f9bcc04)
* | | Only package gccunwind for Linux.Dan Albert2015-08-271-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should be doing this for the others, but there are still some build issues to work out. Note that this change was made to ndk/, but that was done after I had copied build-gcc.sh here and I mistakenly forgot to apply it here as well. Change-Id: I2289c9d4da41eee8ce1d75324ccabf30adb7bd01 (cherry picked from commit da6ed85636572e47535ffd4fe6ab4790921c6508)
* | | Drop python prebuilt cruft.Dan Albert2015-08-272-19/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We don't seem to need this. It was only used when configuring gcc, and that isn't necessary. This is probably here as a relic from when we used to build the gdb stub in this file. Change-Id: Ieaa2f3c0200b9f569842caec2157f98d3e1a9c64 (cherry picked from commit 7ab70b0aa76254c36bdbf071e2463409115ab875)
* | | Use plain python, not python2.Dan Albert2015-08-271-1/+1
| | | | | | | | | | | | | | | | | | | | | Apparently Darwin is Python deficient. Change-Id: I9e3564ee7351ec740451ea97ebc25b805b14816a (cherry picked from commit c94ac68b0de56392b4454873d7f826d1f264df8f)
* | | Stop modifying source trees during build.Dan Albert2015-08-271-50/+44
| | | | | | | | | | | | | | | | | | | | | | | | We have an out directory. Install GCC there rather than to $NDK (by any of its many names). Change-Id: I772ffc9230d3b1123a3cc25ebd9adc01e354c17f (cherry picked from commit 7f738ff0092916749c3cde03c9403e3467eb0d13)
* | | Move build scripts from ndk to toolchain/gcc.Dan Albert2015-08-272-0/+800
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, the platform toolchains building with the NDK build scripts was odd. Second, this moves us toward a more modular NDK. The path forward is building GCC separately, installing it to prebuilts/ndk, and then using it directly from there when building other NDK components. Bug: http://b/23362228 Change-Id: I21448e470b4c3353bd49a1fec7d187a8376f3d82 (cherry picked from commit 51f25cab1eccd079214b9e08f5fe1bbe9368e1b0)
* | | Modify LINK_SPEC to pass --fix-cortex-a53-843419 as default.Lai Wei-Chih2015-08-274-2/+20
| | | | | | | | | | | | | | | | | | | | | For NDK toolchains, always enable the fix of cortex-a53 erratum 843419. Use -mno-fix-cortex-a53-843419 to disable this workaround. Change-Id: I69b8a71113abb172138bf0986697a94e42a5117e
* | | Enable C++ exceptions and RTTI by default.David 'Digit' Turner2015-08-272-4/+4
| |/ |/| | | | | | | With this change, -fexceptions and -frtti become default options when compiling C++ sources.
* | Revert "cherrypick GCC trunk 210497", but extract fix for the SEGV from itYiran Wang2015-08-262-264/+110
| | | | | | | | | | | | | | BUG=23157315 This reverts commit 659b5199aa009008a003062ff828f44b6bd70b65. Change-Id: I3564560d3aa57c039c6bc78e0cd630cea3a4bb8b
* | [4.9] Adjust generic move costs for aarch64. Backport from trunkJunmo Park2015-08-222-2/+10
| | | | | | | | | | | | | | | | | | | | 2014-11-19 Wilco Dijkstra <wdijkstr@arm.com> PR target/61915 * config/aarch64/aarch64.c (generic_regmove_cost): Increase FP move cost. Change-Id: Ifaa0c2d1a72955e42f3882c68d1e52acf5a790e7 Signed-off-by: Junmo Park <junmoz.park@samsung.com>
* | [4.9] Backport Cortex-A57's machine description support from trunkJunmo Park2015-08-145-5/+821
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2015-03-11 Junmo Park <junmoz.park@samsung.com> * config/arm/cortex-a57.md (cortex_a57_crypto_simple): Add crypto_sha256_fast. (cortex_a57_crypto_complex): Add crypto_sha256_slow. 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com> * config/arm/cortex-a57.md: Remove duplicate of file accidentally introduced in revision 219724. 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com> * config/arm/cortex-a57.md: New. * config/aarch64/aarch64.md: Include it. * config/aarch64/aarch64-cores.def (cortex-a57): Tune for it. * config/aarch64/aarch64-tune.md: Regenerate. Change-Id: Id089f9d746c222a7ffe224b69e3249f083bbaf3b Signed-off-by: Junmo Park <junmoz.park@samsung.com>
* | cherrypick GCC trunk 210497Yiran Wang2015-08-132-110/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BUG=23157315 2014-05-16 James Greenhalgh <james.greenhalgh@arm.com> Philipp Tomsich <philipp.tomsich@theobroma-systems.com> [AArch64 costs 5/18] Factor out common MULT cases gcc/ * config/aarch64/aarch64.c (aarch64_strip_shift_or_extend): Rename to... (aarch64_strip_extend): ...this, don't strip shifts, check RTX is well formed. (aarch64_rtx_mult_cost): New. (aarch64_rtx_costs): Use it, refactor as appropriate. Change-Id: I298e5af1b4006f37d873b113c8d05643e897f6f1