- 30 Sep, 2015 26 commits
-
-
PR target/66870 * config/rs6000/sysv4.h (TARGET_CAN_SPLIT_STACK_64BIT): Define. * configure.ac: Define HAVE_GOLD_ALTERNATE_SPLIT_STACK on Power based on gold linker version. * gcc.c: Add -fuse-ld=gold to STACK_SPLIT_SPEC if HAVE_GOLD_ALTERNATE_SPLIT_STACK defined. * configure, config.in: Regenerate. go: * gospec.c (lang_specific_driver): Set appropriate split stack options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT. From-SVN: r228311
Lynn Boger committed -
For other ABIs, -msingle-pic-base makes gcc omit loading of the PIC register in function prologues. This patch makes the option affect ELFv2 too. * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't set r2_setup_needed when TARGET_SINGLE_PIC_BASE. (rs6000_output_mi_thunk): Likewise. From-SVN: r228309
Alan Modra committed -
gcc/ * config/nvptx/mkoffload.c (process): Change offload data format. libgomp/ * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX. (struct targ_ptx_obj): New. (nvptx_tdata): Move earlier, change data format. (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple objects. (GOMP_OFFLOAD_load_image): Adjust. Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com> From-SVN: r228308
Nathan Sidwell committed -
ppc32 starts using the stack for integer arg passing when we run out of integer arg passing registers. Similarly, we start using the stack for floating point args when we run out of floating point registers. The decision on where an integer arg goes does not depend on number of floating point args, nor does the decision on where a floating point arg goes depend on number of integer args. Alignment of stack args also simply depends on number of stack args. This patch untangles the horrible mess we had, with intarg_count being wrongly used to count both integer args and stack words. * src/powerpc/ffi_sysv.c (ffi_prep_cif_sysv_core): Count fprs, gprs, and stack words separately. (ffi_prep_args_SYSV): Similarly. From-SVN: r228307
Alan Modra committed -
* tree-ssa-dom.c (optimize_stmt): Collapse control flow statements with constant conditions. * tree-ssa-threadupdate.c (remove_jump_threads_starting_at): New. (remove_ctrl_stmt_and_useless_edges): No longer static. * tree-ssa-threadupdate.h (remove_jump_threads_starting_at): Prototype. (remove_ctrl_stmt_and_useless_edges): Likewise. * gcc.dg/tree-ssa/ssa-dom-branch-1.c: New test. From-SVN: r228306
Jeff Law committed -
2015-09-30 François Dumont <fdumont@gcc.gnu.org> Jonathan Wakely <jwakely@redhat.com> * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs): Move... * config/locale/gnu/c++locale_internal.h: ...here in std namespace. * config/locale/gnu/c_locale.cc: Move implementation of latter here. * src/c++98/Makefile.am: Compile c++locale.cc with -fimplicit-templates. * src/c++98/Makefile.in: Regenerate. * config/abi/pre/gnu.ver: Adjust. Co-Authored-By: Jonathan Wakely <jwakely@redhat.com> From-SVN: r228305
François Dumont committed -
* config/nvptx/nvptx.c (nvptx_goacc_validate_dims): New. (TARGET_GOACC_VALIDATE_DIMS): Override. * target.def (TARGET_GOACC): New target hook prefix. (validate_dims): New hook. * targhooks.h (default_goacc_validate_dims): New. * omp-low.c (oacc_validate_dims): New. (execute_oacc_device_lower): New. (default_goacc_validate_dims): New. (pass_data_oacc_device_lower): New. (pass_oacc_device_lower): New pass. (make_pass_oacc_device_lower): New. * tree-pass.h (make_pass_oacc_device_lower): Declare. * passes.def (pass_oacc_device_lower): Add it. * doc/tm.texi: Rebuilt. * doc/tm.texi.in (TARGET_GOACC_VALIDATE_DIMS): Add hook. * doc/invoke.texi (oaccdevlow): Document tree dump flag. Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com> From-SVN: r228304
Nathan Sidwell committed -
2015-09-30 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rtl-optimization/67037 * lra-constraints.c (process_addr_reg): Use copy_rtx when necessary. testsuite: 2015-09-30 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rtl-optimization/67037 * gcc.c-torture/execute/pr67037.c: New test. From-SVN: r228303
Bernd Edlinger committed -
* gimple-ssa.h (gimple_df): Add free_ssanames_queue field. * passes.c: Include tree-ssanames.h. (execute_function_todo): Flush the pending free SSA_NAMEs after eliminating unreachable basic blocks. * tree-ssanames.c (FREE_SSANAMES_QUEUE): new. (init_ssanames): Initialize FREE_SSANAMES_QUEUE. (fini_ssanames): Finalize FREE_SSANAMES_QUEUE. (flush_ssanames_freelist): New function. (release_ssaname_fn): Put released names on the queue. (pass_release_ssa_names::execute): Call flush_ssanames_freelist. * tree-ssanames.h (flush_ssanames_freelist): Declare. From-SVN: r228302
Bernd Schmidt committed -
gcc/ * config/i386/intelmic-mkoffload.c (main): Parse "-v" flag. (generate_target_descr_file, generate_target_offloadend_file) (generate_host_descr_file, prepare_target_image, main): Pass it on. * config/nvptx/mkoffload.c (main): Parse "-v" flag. (compile_native, main): Pass it on. * lto-wrapper.c (compile_offload_image): Likewise. From-SVN: r228301
Thomas Schwinge committed -
That is, restore and adapt the code as originally proposed. gcc/ * config/i386/intelmic-mkoffload.c (generate_host_descr_file) (prepare_target_image, main): Refactor argv building to use obstacks. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> From-SVN: r228300
Thomas Schwinge committed -
gcc/ada/ * gcc-interface/utils.c (DEF_FUNCTION_TYPE_VAR_11): Don't define. gcc/jit/ * jit-builtins.h: Undefine DEF_FUNCTION_TYPE_VAR_6 after use. Co-Authored-By: Ulrich Drepper <drepper@gmail.com> From-SVN: r228298
Thomas Schwinge committed -
gcc/ * config/spu/spu-protos.h (spu_expand_atomic_op): Add prototype. * config/spu/spu.c (spu_expand_atomic_op): New function. * config/spu/spu.md (AINT): New mode iterator. (ATOMIC): New code iterator. (atomic_name, atomic_pred): New code predicates. ("atomic_load<mode>", "atomic_store<mode>"): New expanders. ("atomic_compare_and_swap<mode>", "atomic_exchange<mode>"): Likewise. (""atomic_<atomic_name><mode>", "atomic_fetch_<atomic_name><mode>", "atomic_<atomic_name>_fetch<mode>"): Likewise. gcc/testsuite/ * lib/target-supports.exp (check_effective_target_sync_int_128): Return 1 on spu-*-* targets. (check_effective_target_sync_int_128_runtime): Likewise. (check_effective_target_sync_long_long): Likewise. (check_effective_target_sync_long_long_runtime): Likewise. (check_effective_target_sync_int_long): Likewise. (check_effective_target_sync_char_short): Likewise. From-SVN: r228297
Ulrich Weigand committed -
gcc/ * config/i386/i386.c (scalar_chain::analyze_register_chain): Ignore debug insns. (scalar_chain::convert_reg): Likewise. gcc/testsuite/ * gcc.target/i386/pr67761.c: New test. From-SVN: r228292
Ilya Enkovich committed -
2015-09-30 Matthias Klose <doko@ubuntu.com> * config/cpu/alpha, config/cpu/ia64: Remove empty directories. From-SVN: r228291
Matthias Klose committed -
2015-09-30 Richard Biener <rguenther@suse.de> * builtins.c: Add comment that no new simplifications shouldd be added here. From-SVN: r228290
Richard Biener committed -
* jit-builtins.h Define DEF_FUNCTION_TYPE_VAR_6, remove DEF_FUNCTION_TYPE_VAR_11. * jit-builtins.c (builtins_manager::make_type): Define and handle DEF_FUNCTION_TYPE_VAR_6, remove DEF_FUNCTION_TYPE_VAR_11. From-SVN: r228289
Matthias Klose committed -
PR c/67730 * c-typeck.c (c_finish_return): Use the expansion point location for certain "return with value" warnings. * gcc.dg/pr67730.c: New test. From-SVN: r228286
Marek Polacek committed -
PR tree-optimization/67690 * tree-ssa-ifcombine.c (pass_tree_ifcombine::execute): Call reset_flow_sensitive_info_in_bb. * tree-ssa-tail-merge.c (replace_block_by): Likewise. * tree-ssanames.c: Include "gimple-iterator.h". (reset_flow_sensitive_info_in_bb): New function. * tree-ssanames.h (reset_flow_sensitive_info_in_bb): Declare. * gcc.dg/torture/pr67690.c: New test. From-SVN: r228284
Marek Polacek committed -
gcc/ * config/i386/intelmic-mkoffload.c (target_ilp32): Remove variable, replacing it with... (offload_abi): ... this new variable. Adjust all users. * config/nvptx/mkoffload.c (target_ilp32, offload_abi): Likewise. From-SVN: r228283
Thomas Schwinge committed -
That is, verify that we're actually reaching the expected checkpoint before terminating. libgomp/ * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint. * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise. * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise. * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise. From-SVN: r228282
Thomas Schwinge committed -
2015-09-30 Matthias Klose <doko@ubuntu.com> * configure.ac: Remove extraneous ;;. * configure: Regenerate. From-SVN: r228281
Matthias Klose committed -
2015-09-30 Christophe Lyon <christophe.lyon@linaro.org> * g++.dg/cpp0x/stdint.C: Move dg-require-effective-target after dg-do. * g++.dg/gomp/tls-wrap4.C: Likewise. * gcc.dg/atomic-op-optimize.c: Likewise. * gcc.dg/pr54087.c: Likewise. * gcc.dg/tls/section-2.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-pr37194.c: Likewise. * gcc.dg/vect/trapv-vect-reduc-4.c: Likewise. * gcc.target/arm/divzero.c: Likewise. * gcc.target/arm/sibcall-2.c: Likewise. * gcc.target/arm/thumb1-Os-mult.c: Likewise. * gcc.target/arm/thumb1-load-64bit-constant-1.c: Likewise. * gcc.target/arm/thumb1-load-64bit-constant-2.c: Likewise. * gcc.target/arm/thumb1-load-64bit-constant-3.c: Likewise. * gcc.target/arm/volatile-bitfields-1.c: Likewise. * gcc.target/arm/volatile-bitfields-2.c: Likewise. * gcc.target/arm/volatile-bitfields-3.c: Likewise. * gcc.target/arm/volatile-bitfields-4.c: Likewise. * gfortran.dg/default_format_2.f90: Likewise. * gfortran.dg/default_format_denormal_2.f90: Likewise. From-SVN: r228280
Christophe Lyon committed -
From-SVN: r228279
Uros Bizjak committed -
From-SVN: r228276
GCC Administrator committed -
2015-09-29 Jonathan Roelofs <jonathan@codesourcery.com> * gcc.dg/debug/pr65771.c: Use tls_runtime instead of tls. From-SVN: r228273
Jonathan Roelofs committed
-
- 29 Sep, 2015 14 commits
-
-
Limit the MEMSET (setmemsi pattern) and MEMCPY (movmemsi pattern) instructions to 0-511 bytes. There is a hardware limitation on large MEMSET, MEMCPY operations that the library versions of memset() and memcpy() deal with. 2015-09-29 James Bowman <james.bowman@ftdichip.com> * config/ft32/predicates.md (ft32_imm_operand): New predicate. * config/ft32/ft32.md (movmemsi, setmemsi): Use ft32_imm_operand predicate, disallow register for operand 2. From-SVN: r228271
James Bowman committed -
When determining the type of an index for a string/array indexing expression, the gofrontend would disallow floating-point and complex values even if they were integral and throw an internal error. This patch changes gofrontend to use an integral type context when determining the types of a string/array index. Fixes golang/go#11545. Reviewed-on: https://go-review.googlesource.com/13796 From-SVN: r228270
Ian Lance Taylor committed -
No functional changes intended. Passes make check and bootstrap. gcc/ChangeLog: 2015-09-29 Aditya Kumar <hiraditya@msn.com> * graphite-dependences.c (scop_get_dependences): Moved in down in order to be visible to its caller. * graphite-poly.h: Removed compute_deps, and extend_schedule. From-SVN: r228269
Aditya Kumar committed -
This patch fixes PR66754 by reverting an earlier unintended change. We now generate a much simpler AST for interchange-1.c: ISL AST generated by ISL: { for (int c1 = 0; c1 <= 1334; c1 += 1) { S_7(c1); for (int c3 = 0; c3 <= 1334; c3 += 1) S_4(c1, c3); S_5(c1); } for (int c1 = 0; c1 <= 1334; c1 += 1) S_10(c1); S_8(); } Bootstrap and check pass on x86_64-linux with isl-0.14.1 PR tree-optimization/67754 * graphite-optimize-isl.c (optimize_isl): Call isl_options_set_schedule_fuse with ISL_SCHEDULE_FUSE_MIN for ISL-14. Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com> From-SVN: r228268
Sebastian Pop committed -
gcc/ * builtins.c (expand_builtin_acc_on_device): Delete. (expand_builtin): Don't call it. (fold_builtin_1): Fold acc_on_device. libgomp/ * oacc-init.c (acc_on_device): Force optimization level. From-SVN: r228267
Nathan Sidwell committed -
* config/i386/i386.c (ix86_function_arg): Fix typo in comments. (ix86_nsaved_sseregs): Likewise. From-SVN: r228266
H.J. Lu committed -
* plugin/plugin-nvptx.c (ARRAYSIZE): Delete. (cuda_errlist): Delete. (cuda_error): Reimplement. From-SVN: r228265
Nathan Sidwell committed -
[PATCH] Fix building microblaze targets with trunk * config/microblaze/microblaze.c (microblaze_version_to_int): Remove computation of unused value. From-SVN: r228263
Jeff Law committed -
gfortran.dg/ieee/ieee_4.f90: xfail on i386-*-freebsd* gfortran.dg/round_4.f90: ditto. From-SVN: r228262
Steven G. Kargl committed -
* config/pdp11/pdp11.c (pdp11_branch_cost): New function. * config/pdp11/pdp11.h (BRANCH_COST): Call function rather than inline macro expansion. From-SVN: r228259
Jeff Law committed -
* config/i386/t-interix (winnt-stubs.o): Fix compilation rule. From-SVN: r228258
Jeff Law committed -
* config/sh/sh.c (gen_shl_and): Fix undefined left shift behaviour. (gen_shl_sext): Likewise. * config/sh/sh.md (divsi3): Likewise. (imm->ext_dest_operand splitter): Likewise. From-SVN: r228257
Jeff Law committed -
This code is not used anymore after we removed the previous loop optimizer (not based on the ISL scheduler.) We will add back the detection of commutative reductions after we improve the code generation of scalar dependences (by not going out of SSA for scalar dependences just to expose them to the data dependence graph.) Patch passed bootstrap and check on x86_64-linux with ISL-0.15. 2015-09-29 Sebastian Pop <s.pop@samsung.com> Aditya Kumar <aditya.k7@samsung.com> * graphite-sese-to-poly.c (gsi_for_phi_node): Remove. (nb_data_writes_in_bb): Remove. (split_pbb): Remove. (split_reduction_stmt): Remove. (is_reduction_operation_p): Remove. (phi_contains_arg): Remove. (follow_ssa_with_commutative_ops): Remove. (detect_commutative_reduction_arg): Remove. (detect_commutative_reduction_assign): Remove. (follow_inital_value_to_phi): Remove. (edge_initial_value_for_loop_phi): Remove. (initial_value_for_loop_phi): Remove. (used_outside_reduction): Remove. (detect_commutative_reduction): Remove. (translate_scalar_reduction_to_array_for_stmt): Remove. (remove_phi): Remove. (dr_indices_valid_in_loop): Remove. (close_phi_written_to_memory): Remove. (translate_scalar_reduction_to_array): Remove. (rewrite_commutative_reductions_out_of_ssa_close_phi): Remove. (rewrite_commutative_reductions_out_of_ssa_loop): Remove. (rewrite_commutative_reductions_out_of_ssa): Remove. (build_poly_scop): Remove call to rewrite_commutative_reductions_out_of_ssa. Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com> From-SVN: r228255
Sebastian Pop committed -
[PATCH] Fix undefined behaviour in rx port * config/rx/constraints.md (Int08): Fix undefined left shift behaviour. (Sint08, Sint16, Sint24): Likewise. * config/rx/rx.c (rx_get_stack_layout): Likewise. From-SVN: r228254
Jeff Law committed
-