- 25 Aug, 2015 18 commits
-
-
2015-08-24 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/60519 * include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering): New enum entry. * include/debug/functions.h (_Irreflexive_checker): New. (__is_irreflexive, __is_irreflexive_pred): New. * include/debug/macros.h (__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New macros. (__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New macros limited to post-C++11 mode. * include/debug/debug.h (__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred): New macros, use latter. (__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2): Likewise. * include/bits/stl_algo.h (partial_sort_copy): Add irreflexive debug check. (partial_sort_copy): Likewise. (lower_bound): Likewise. (upper_bound): Likewise. (equal_range): Likewise. (binary_search): Likewise. (inplace_merge): Likewise. (includes): Likewise. (next_permutation): Likewise. (prev_permutation): Likewise. (is_sorted_until): Likewise. (minmax_element): Likewise. (partial_sort): Likewise. (nth_element): Likewise. (sort): Likewise. (merge): Likewise. (stable_sort): Likewise. (set_union): Likewise. (set_intersection): Likewise. (set_difference): Likewise. (set_symmetric_difference): Likewise. (min_element): Likewise. (max_element): Likewise. * include/bits/stl_algobase.h (lower_bound): Likewise. (lexicographical_compare): Likewise. * include/bits/stl_heap.h (push_heap): Likewise. (pop_heap): Likewise. (make_heap): Likewise. (sort_heap): Likewise. (is_heap_until): Likewise. * testsuite/25_algorithms/lexicographical_compare/debug/ irreflexive_neg.cc: New. * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New. * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: New. From-SVN: r227189
François Dumont committed -
gcc/ChangeLog: * gcc-main.c (main): Add params to driver ctor. * gcc.c (class env_manager): New. (env): New global. (env_manager::init): New. (env_manager::get): New. (env_manager::xput): New. (env_manager::restore): New. Poison getenv and putenv. (DEFAULT_TARGET_SYSTEM_ROOT): New. (target_system_root): Update initialization to use DEFAULT_TARGET_SYSTEM_ROOT. (struct spec_list): Add field "default_ptr". (INIT_STATIC_SPEC): Initialize new field "default_ptr". (init_spec): Likewise. (set_spec): Clear field "default_ptr". (read_specs): Free "spec" and "buffer". (xputenv): Reimplement in terms of env_manager. (process_command): Replace ::getenv calls with calls to the env_manager singleton. (process_brace_body): Free string in three places. (driver::driver): New. (driver::~driver): New. (used_arg): Convert from a function to... (class used_arg_t): ...this class, and... (used_arg): ...this new global instance. (used_arg_t::finalize): New function. (getenv_spec_function): Add "const" to local "value". Replace ::getenv call with call to the env_manager singleton. (path_prefix_reset): New function. (driver::finalize): New function. * gcc.h (driver::driver): New. (driver::~driver): New. (driver::finalize): New. gcc/jit/ChangeLog: * docs/cp/topics/contexts.rst (gccjit::context::set_bool_use_external_driver): New. * docs/internals/test-hello-world.exe.log.txt: Update. * docs/topics/compatibility.rst (LIBGCCJIT_ABI_5): New. * docs/topics/contexts.rst (gcc_jit_context_set_bool_use_external_driver): New. * jit-common.h (enum inner_bool_option): Add INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER. * jit-playback.c (gcc_driver_name): New global. (gcc:jit::playback::context::invoke_driver): Split out second half into... (gcc::jit::playback::context::invoke_embedded_driver): ...this new function, and... (gcc::jit::playback::context::invoke_external_driver): ...this new function. * jit-playback.h (gcc::jit::playback::context::get_inner_bool_option): New. (gcc::jit::playback::context::invoke_embedded_driver): New. (gcc::jit::playback::context::invoke_external_driver): New. * jit-recording.c (inner_bool_option_reproducer_strings): Add entry for INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER. * libgccjit++.h (gccjit::context::set_bool_use_external_driver): New. * libgccjit.c (gcc_jit_context_set_bool_use_external_driver): New. * libgccjit.h (gcc_jit_context_set_bool_use_external_driver): New. (LIBGCCJIT_HAVE_gcc_jit_context_set_bool_use_external_driver): New. * libgccjit.map (LIBGCCJIT_ABI_5): New. * notes.txt: Show invocation of embedded copy of driver. * docs/internals/test-hello-world.exe.log.txt: Update gcc/testsuite/ChangeLog: * jit.dg/test-error-pr63969-missing-driver.c: Add call to gcc_jit_context_set_bool_use_external_driver. From-SVN: r227188
David Malcolm committed -
From-SVN: r227187
François Dumont committed -
From-SVN: r227186
Nathan Sidwell committed -
* optabs.c (emit_indirect_jump): Don't try an emit a jump if the target doesn't have one. From-SVN: r227185
Nathan Sidwell committed -
Fixes golang/go#11546. Reviewed-on: https://go-review.googlesource.com/13795 From-SVN: r227184
Ian Lance Taylor committed -
"*ior<mode>_mask" is a define_insn_and_split, so it shouldn't use can_create_pseudo in its instruction condition, because IRA can then create such an instruction, and the condition becomes false before the insn is split. Use a scratch instead. 2015-08-25 Segher Boessenkool <segher@kernel.crashing.org> PR target/67346 * config/rs6000/rs6000.md (*ior<mode>_mask): Use a match_scratch. From-SVN: r227183
Segher Boessenkool committed -
The "*and<mode>3_imm_dot_shifted" pattern is a define_insn_and_split, like most "dot" patterns: if its output is not assigned cr0 but some other cr reg, it splits to a non-dot insn and a compare. Unfortunately that non-dot insn will clobber cr0 as well. We could add another clobber (with "=X,x"), but then that second alternative is never useful; instead, just remove that second alternative. 2015-08-25 Segher Boessenkool <segher@kernel.crashing.org> PR target/67344 * config/rs6000/rs6000.md (*and<mode>3_imm_dot_shifted): Change to a define_insn, remove second alternative. From-SVN: r227182
Segher Boessenkool committed -
* io/unit.c (get_internal_unit): Make default sign mode unspecified. (init_units): Make default sign mode unspecified. From-SVN: r227178
Francois-Xavier Coudert committed -
* gcc.dg/20001117-1.c: Needs return_address. * gcc.dg/20020415-1.c: Needs alloca. * gcc.dg/graphite/id-pr44676.c: Needs profiling. * gcc.dg/graphite/pr60979.c: Needs nonlocal_goto * gcc.dg/pr63186.c: Needs label_values. * gcc.dg/torture/pr33848.c: Likwise. * lib/target-supports.exp (check_effective_target_fopenacc, check_effective_target_fopenmp): Disable for nvptx. * gcc.dg/graphite/run-id-pr47653.c: Disable for nvptx. * gcc.dg/stack-usage-1.c: Likewise. * gcc.dg/stack-usage-2.c: Likewise. * gcc.dg/unused-5.c: Likewise. * gcc.dg/unwind-1.c: Likewise. From-SVN: r227177
Nathan Sidwell committed -
From-SVN: r227174
Francois-Xavier Coudert committed -
This patch, extracted from a larger change on gomp-4_0-branch, expands a comment documenting struct switchstr in gcc.c. 2015-08-25 Thomas Schwinge <thomas@codesourcery.com> Joseph Myers <joseph@codesourcery.com> * gcc.c (struct switchstr): Expand comment. Co-Authored-By: Joseph Myers <joseph@codesourcery.com> From-SVN: r227173
Thomas Schwinge committed -
* config/nvptx/nvptx.c (nvptx_write_function_decl): Reformat. (nvptx_reorg_subreg): Pass insn pattern to asm_operands. From-SVN: r227169
Nathan Sidwell committed -
2015-08-25 Richard Biener <rguenther@suse.de> PR middle-end/67306 * genmatch.c (expr::gen_transform): Verify the result of builtin_decl_implicit. (dt_simplify::gen_1): Likewise. From-SVN: r227163
Richard Biener committed -
2015-08-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * config/arm/constraints.md: Also list Cs and US ARM-specific constraints as used. From-SVN: r227162
Thomas Preud'homme committed -
g++.dg/Wno-frame-address.C: Ditto. From-SVN: r227161
Christian Bruel committed -
When a function is declared and named with the blank identifier, only the syntax is checked. This patch modifies the parser to add a dummy node for each function declaration with a blank identifier name that will be type checked like any function declaration. Fixes golang/go#11535. Reviewed-on: https://go-review.googlesource.com/13792 From-SVN: r227160
Ian Lance Taylor committed -
From-SVN: r227159
GCC Administrator committed
-
- 24 Aug, 2015 22 commits
-
-
PR target/66609 * [SH] Take into account weak symbols for pc relative calls/sibcalls. From-SVN: r227155
Kaz Kojima committed -
Changing the type of scop::region from void* to sese, as this is the only type assigned to scop::region for now. No functional changes intended. Passes regtest and bootstrap. gcc/ChangeLog: 2015-08-17 Aditya Kumar <aditya.k7@samsung.com> * graphite-poly.c: Change type of region from void* to sese. * graphite-poly.h (struct scop): Changing the type of scop::region from void* to sese. Change accessor macro accordingly. * graphite-sese-to-poly.c (extract_affine_chrec): Use accessor macro. From-SVN: r227151
Aditya Kumar committed -
Passes bootstrap, no regressions. With this patch gcc bootstraps with graphite. make BOOT_CFLAGS="-g -O2 -fgraphite-identity -floop-interchange -floop-block" gcc/ChangeLog: 2015-08-12 Aditya Kumar <hiraditya@msn.com> * graphite-scop-detection.c (stmt_simple_for_scop_p): Constrain only on INTEGER_TYPE From-SVN: r227150
Aditya Kumar committed -
2015-08-24 François Dumont <fdumont@gcc.gnu.org> * include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering): New enum entry. * include/debug/functions.h (_Irreflexive_checker): New. (__is_irreflexive, __is_irreflexive_pred): New. * include/debug/macros.h (__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New macros. (__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New macros limited to post-C++11 mode. * include/debug/debug.h (__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred): New macros, use latter. (__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2): Likewise. * include/bits/stl_algo.h (partial_sort_copy): Add irreflexive debug check. (partial_sort_copy): Likewise. (lower_bound): Likewise. (upper_bound): Likewise. (equal_range): Likewise. (binary_search): Likewise. (inplace_merge): Likewise. (includes): Likewise. (next_permutation): Likewise. (prev_permutation): Likewise. (is_sorted_until): Likewise. (minmax_element): Likewise. (partial_sort): Likewise. (nth_element): Likewise. (sort): Likewise. (merge): Likewise. (stable_sort): Likewise. (set_union): Likewise. (set_intersection): Likewise. (set_difference): Likewise. (set_symmetric_difference): Likewise. (min_element): Likewise. (max_element): Likewise. * include/bits/stl_algobase.h (lower_bound): Likewise. (lexicographical_compare): Likewise. * include/bits/stl_heap.h (push_heap): Likewise. (pop_heap): Likewise. (make_heap): Likewise. (sort_heap): Likewise. (is_heap_until): Likewise. * testsuite/25_algorithms/lexicographical_compare/debug/ irreflexive_neg.cc: New. * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New. * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: New. From-SVN: r227147
François Dumont committed -
* configure.ac: Set have_mmap to no on spu-*-* targets. * configure: Regenerate. From-SVN: r227145
Ulrich Weigand committed -
[gcc] 2015-08-24 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/67211 * config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Set -mefficient-unaligned-vsx on ISA 2.7. * config/rs6000/rs6000.opt (-mefficient-unaligned-vsx): Convert option to a masked option. * config/rs6000/rs6000.c (rs6000_option_override_internal): Rework logic for -mefficient-unaligned-vsx so that it is set via an arch ISA option, instead of being set if -mtune=power8 is set. Move -mefficient-unaligned-vsx and -mallow-movmisalign handling to be near other default option handling. [gcc/testsuite] 2015-08-24 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/67211 * g++.dg/pr67211.C: New test. From-SVN: r227144
Michael Meissner committed -
gcc/ * genflags.c (gen_macro): Delete. (gen_proto): Don't create GEN.*CALL.* macros. * gensupport.h (get_file_location): Declare. * gensupport.c (rtx_locs): New variable. (read_md_rtx): Record rtx locations. (get_file_location): New function. * target-insns.def (call, call_pop, call_value, call_value_pop) (sibcall, sibcall_value): New patterns. * gentarget-def.c (parse_argument): New function. (def_target_insn): Use it. Handle optional operands. Raise an error if an .md pattern has the wrong number of operands for the pattern name. Remove the names of unused operands from the prototype. * builtins.c (expand_builtin_apply): Use targetm functions instead of HAVE_call_value and GEN_CALL_VALUE. * calls.c (emit_call_1): Likewise. Remove support for sibcall_pop and sibcall_value_pop. * config/aarch64/aarch64.md (untyped_call): Use gen_call instead of GEN_CALL. * config/alpha/alpha.md (untyped_call): Likewise. * config/iq2000/iq2000.md (untyped_call): Likewise. * config/m68k/m68k.md (untyped_call): Likewise. * config/mips/mips.md (untyped_call): Likewise. * config/pa/pa.md (untyped_call): Likewise. * config/rs6000/rs6000.md (untyped_call): Likewise. * config/sparc/sparc.md (untyped_call): Likewise. * config/tilegx/tilegx.md (untyped_call): Likewise. * config/tilepro/tilepro.md (untyped_call): Likewise. * config/visium/visium.md (untyped_call): Likewise. * config/alpha/alpha.c (alpha_emit_xfloating_libcall): Use gen_call_value instead of GEN_CALL_VALUE. * config/arm/arm.md (untyped_call): Likewise. * config/cr16/cr16.c (cr16_function_arg): Remove reference to GEN_CALL. From-SVN: r227143
Richard Sandiford committed -
gcc/ * ifcvt.c (HAVE_incscc, HAVE_decscc, HAVE_cbranchcc4): Delete. (have_cbranchcc4): New variable. (cc_in_cond, noce_emit_cmove, noce_get_alt_condition) (noce_get_condition): Use it instead of HAVE_cbranchcc4. (if_convert): Initialize have_cbranchcc4. From-SVN: r227142
Richard Sandiford committed -
gcc/ * builtins.c (expand_cmpstrn): Rename to... (expand_cmpstrn_or_cmpmem): ...this. (expand_builtin_strcmp, expand_builtin_strncmp): Update accordingly. (expand_builtin_memcmp): Use optabs instead of HAVE_cmpmem/gen_cmpmem. Remove mode argument. (expand_builtin): Update accordingly. From-SVN: r227141
Richard Sandiford committed -
gcc/ * builtins.c (expand_cmpstr, expand_cmpstrn): New functions. (expand_builtin_strcmp, expand_builtin_strncmp): Use them. Remove references to HAVE_cmpstr{,n}si and CODE_FOR_cmpstr{,n}si. * config/m32c/blkmov.md (cmpstrsi): Fix predicates of operands 1 and 2. Add predicates for operands 0 and 3. * config/rx/rx.md (cmpstrnsi): Remove force_operand for the length operand. * config/sh/sh.md (cmpstrnsi): Change the length predicate from immediate_operand to nonmemory_operand. From-SVN: r227140
Richard Sandiford committed -
gcc/ * df-scan.c (df_insn_info_init_fields): New function, split out from... (df_insn_create_insn_record): ...here. (df_insn_info_free_fields): New function, split out from... (df_insn_info_delete): ...here. (df_insn_rescan): Use the new functions instead of freeing and reallocating the df_insn_info. From-SVN: r227139
Richard Sandiford committed -
From-SVN: r227138
Francois-Xavier Coudert committed -
libgomp/ * libgomp.map: Add 4.0.2 version. * target.c (offload_image_descr): Add version field. (gomp_load_image_to_device): Add version argument. Adjust plugin call. Improve load mismatch diagnostic. (gomp_unload_image_from_device): Add version argument. Adjust plugin call. (GOMP_offload_regster): Make stub function, move bulk to ... (GOMP_offload_register_ver): ... here. Process version argument. (GOMP_offload_unregister): Make stub function, move bulk to ... (GOMP_offload_unregister_ver): ... here. Process version argument. (gomp_init_device): Process version field. (gomp_unload_device): Process version field. (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT macros. Check plugin version. * libgomp.h (gomp_device_descr): Add version function field. Adjust loader and unloader types. * oacc-host.c: Include gomp-constants.h. (host_version): New. (host_load_image, host_unload_image): Adjust. (host_dispatch): Add host_version. * plugin/plugin-nvptx.c: Include gomp-constants.h. (GOMP_OFFLOAD_version): New. (GOMP_OFFLOAD_load_image): Add version arg and check it. (GOMP_OFFLOAD_unload_image): Likewise. * plugin/plugin-host.c: Include gomp-constants.h. (GOMP_OFFLOAD_version): New. (GOMP_OFFLOAD_load_image): Add version arg. (GOMP_OFFLOAD_unload_image): Likewise. liboffloadmic/ * plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_version): New. (GOMP_OFFLOAD_load_image): Add version arg and check it. (GOMP_OFFLOAD_unload_image): Likewise. include/ * gomp-constants.h (GOMP_VERSION, GOMP_VERSION_NVIDIA_PTX, GOMP_VERSION_INTEL_MIC): New. (GOMP_VERSION_PACK, GOMP_VERSION_LIB, GOMP_VERSION_DEV): New. gcc/ * config/nvptx/mkoffload.c (process): Replace GOMP_offload_{,un}register with GOMP_offload_{,un}register_ver. From-SVN: r227137
Nathan Sidwell committed -
PR libfortran/57496 * io/write_float.def: Use built-in type-generic functions defined by libgfortran.h for isfinite, isnan, and signbit. From-SVN: r227136
Francois-Xavier Coudert committed -
PR fortran/62536 PR fortran/66175 * decl.c (gfc_match_end): Clean up nested BLOCKs. * parse.c (parse_block_construct): Deal gracefully with cleaned-up BLOCKs. * gfortran.dg/block_end_error_1.f90: New test. * gfortran.dg/blocks_nested_incomplete_1.f90: New test. From-SVN: r227135
Louis Krupp committed -
PR tree-optimization/67284 * go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter. Set TREE_THIS_VOLATILE. (Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call. Pass false to the rest of define_builtin calls. From-SVN: r227134
Marek Polacek committed -
PR target/66821 * gcc.target/i386/pr66821.c: New test. From-SVN: r227133
H.J. Lu committed -
This patch updates MOVE_RATIO cost for IA MCU from 6 to 9 so that we can unroll the loop completely for DOM with -mtune=iamcu. gcc/ PR target/67329 * config/i386/i386.c (iamcu_cost): Set MOVE_RATIO cost to 9. gcc/testsuite/ PR target/67329 * gcc.target/i386/pr67329.c: New test. From-SVN: r227132
H.J. Lu committed -
2015-08-24 Tom de Vries <tom@codesourcery.com> PR tree-optimization/65468 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test. From-SVN: r227130
Tom de Vries committed -
gcc/ 2015-08-24 Renlin Li <renlin.li@arm.com> * config/arm/arm-protos.h (arm_valid_symbolic_address_p): Declare. * config/arm/arm.c (arm_valid_symbolic_address_p): Define. * config/arm/arm.md (arm_movt): Use arm_valid_symbolic_address_p. * config/arm/constraints.md ("j"): Add check for high code. From-SVN: r227129
Renlin Li committed -
* gcc/testsuite/gcc.dg/pr49551.c: Needs -fdata-sections. * gcc/testsuite/gcc.dg/pr64935-2.c: Needs scheduling. * gcc/testsuite/gcc.dg/torture/pr66101.c: Needs nonlocal goto. * gcc/testsuite/gcc.dg/torture/pr63738.c: Likewise. * gcc/testsuite/gcc.dg/torture/pr64728.c: Likewise. * gcc/testsuite/gcc.dg/pr63748.c: Likewise. * gcc/testsuite/gcc.dg/20020312-2.c: Likewise. * gcc/testsuite/gcc.dg/torture/pr66123.c: Needs label_values. * gcc/testsuite/gcc.dg/torture/pr41261.c: Needs profiling. * gcc/testsuite/gcc.dg/pr26570.c: Likewise. * gcc/testsuite/gcc.dg/pr61776.c: Likewise. * gcc/testsuite/gcc.dg/tree-ssa/ssa-lim-11.c: Likewise. * gcc/testsuite/gcc.dg/gomp/pr34610.c: Likewise. * gcc/testsuite/gcc.dg/pr54121.c: Likewise. * gcc/testsuite/gcc.dg/20050325-1.c: Likewise. * gcc/testsuite/gcc.dg/pr66899.c: Likewise. * gcc/testsuite/gcc.dg/pr48770.c: Likewise. * gcc/testsuite/gcc.dg/pr24225.c: Likewise. * gcc/testsuite/gcc.dg/pr27531-1.c: Needs io. * gcc/testsuite/gcc.dg/pr44606.c: Likewise. * gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c: Needs weak. * gcc/testsuite/gcc.dg/pr51990.c: Needs alloca. * gcc/testsuite/gcc.misc-tests/options.exp: Disable profiling check for nvptx. From-SVN: r227128
Nathan Sidwell committed -
PR libstdc++/65049 * include/bits/char_traits.h (char_traits<char>::compare, char_traits<char>::find, char_traits<char>::move, char_traits<char>::copy, char_traits<char>::assign): Check for zero length. (char_traits<wchar_t>::compare, char_traits<wchar_t>::find, char_traits<wchar_t>::move, char_traits<wchar_t>::copy, char_traits<wchar_t>::assign): Likewise. (char_traits<char16_t>::move, char_traits<char16_t>::copy): Likewise. (char_traits<char32_t>::move, char_traits<char32_t>::copy): Likewise. * include/ext/pod_char_traits.h (char_traits<character<>>::move, char_traits<character<>>::copy): Likewise. * testsuite/21_strings/char_traits/requirements/char/65049.cc: New. * testsuite/21_strings/char_traits/requirements/char16_t/65049.cc: New. * testsuite/21_strings/char_traits/requirements/char32_t/65049.cc: New. * testsuite/21_strings/char_traits/requirements/wchar_t/65049.cc: New. From-SVN: r227127
Jonathan Wakely committed
-