aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-11-22[AARCH64][PATCH 2/3] Implementing vmulx_lane NEON intrinsic variantsBilyan Borisov16-26/+1098
gcc/ * config/aarch64/arm_neon.h (vmulx_lane_f32): New. (vmulx_lane_f64): Likewise. (vmulxq_lane_f32): Refactored & moved. (vmulxq_lane_f64): Likewise. (vmulx_laneq_f32): New. (vmulx_laneq_f64): Likewise. (vmulxq_laneq_f32): Likewise. (vmulxq_laneq_f64): Likewise. (vmulxs_lane_f32): Likewise. (vmulxs_laneq_f32): Likewise. (vmulxd_lane_f64): Likewise. (vmulxd_laneq_f64): Likewise. * config/aarch64/aarch64-simd.md (*aarch64_mulx_elt_<vswap_width_name><mode>, VDQSF): New pattern. (*aarch64_mulx_elt<mode>, VDQF): Likewise. (*aarch64_mulx_elt_to_64v2df): Likewise. (*aarch64_vgetfmulx<mode>, VDQF_DF): Likewise. gcc/testsuite/ * gcc.target/aarch64/simd/vmulx_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulx_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulx_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulx_laneq_f64_1.c: New. * gcc.target/aarch64/simd/vmulxq_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulxq_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulxq_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulxq_laneq_f64_1.c: New. * gcc.target/aarch64/simd/vmulxs_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulxs_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulxd_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulxd_laneq_f64_1.c: New. From-SVN: r230720
2015-11-22Daily bump.GCC Administrator1-1/+1
From-SVN: r230718
2015-11-21lto.c (iterative_hash_canonical_type): Always recurse for pointers.Jan Hubicka5-28/+126
* lto.c (iterative_hash_canonical_type): Always recurse for pointers. (gimple_register_canonical_type_1): Check that pointers do not get canonical types. (gimple_register_canonical_type): Do not register pointers. * tree.c (build_pointer_type_for_mode,build_reference_type_for_mode): In LTO we do not compute TYPE_CANONICAL of pointers. (gimple_canonical_types_compatible_p): Improve coments; sanity check that pointers do not have canonical type that would make us believe they are different. * alias.c (get_alias_set): Do structural type equality on pointers; enable pointer path for LTO; also glob pointer to vector with pointer to vector element; glob pointers and references for LTO; do more strict sanity checking about build_pointer_type returning the canonical type which is also the main variant. (record_component_aliases): When component type is pointer and we do LTO; record void_type_node alias set. From-SVN: r230715
2015-11-21lto-symtab.c (warn_type_compatibility_p): Do not set ODR mismatch flag for ↵Jan Hubicka2-10/+22
types that are not ODR... * lto-symtab.c (warn_type_compatibility_p): Do not set ODR mismatch flag for types that are not ODR; fix loop walking parameters. From-SVN: r230712
2015-11-21simplify.c (gfc_simplify_cshift): Work around bootstrap issues due to ↵Steven G. Kargl2-0/+14
inappropriate warning options. 2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org> * simplify.c (gfc_simplify_cshift): Work around bootstrap issues due to inappropriate warning options. From-SVN: r230710
2015-11-21simplify.c (gfc_simplify_cshift): Implement simplification of CSHIFT.Steven G. Kargl6-7/+157
2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org> * simplify.c (gfc_simplify_cshift): Implement simplification of CSHIFT. (gfc_simplify_spread): Remove a FIXME and add error condition. * intrinsic.h: Prototype for gfc_simplify_cshift * intrinsic.c (add_functions): Use gfc_simplify_cshift. 2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org> * gfortran.dg/simplify_cshift_1.f90: New test. From-SVN: r230709
2015-11-21* gcc.dg/atomic-generic.c: Include <string.h>.qNathan Sidwell2-0/+5
From-SVN: r230708
2015-11-21* gfortran.dg/submodule_6.f08: Add dg-require-effective-target lto.David Edelsohn2-1/+6
From-SVN: r230707
2015-11-21* config/nvptx/nvptx.md (clz<mode>2): Use operand 1 for type.Nathan Sidwell2-1/+3
From-SVN: r230706
2015-11-21nvptx.c (write_function_decl_and_comment): Print leading blank line.Nathan Sidwell3-11/+25
* config/nvptx/nvptx.c (write_function_decl_and_comment): Print leading blank line. (write_func_decl_from_insn): Likewise. (init_output_initializer, nvptx_assemble_undefined_decl): Likewise. (nvptx_file_end): Likewise. (nvptx_function_end): Undent output. (nvptx_expand_call): Fix formatting. (nvptx_output_call_insn): Indent output. * config/nvptx/nvptx.h (ASM_OUTPUT_ALIGNED_DECL_COMMON, ASM__OUTPUT_ALIGNED_DECL_LOCAL): Print leading blank line. From-SVN: r230705
2015-11-21vbase1.C: Also run on i?86-*-*.Uros Bizjak2-1/+5
* g++.dg/init/vbase1.C: Also run on i?86-*-*. From-SVN: r230704
2015-11-21re PR debug/66432 (libgomp.c/appendix-a/a.29.1.c -O2 -g: type mismatch ↵Jakub Jelinek4-3/+35
between an SSA_NAME and its symbol) PR debug/66432 * tree-inline.c (copy_debug_stmt): If gimple_debug_source_bind_get_value is DECL_ORIGIN of a PARM_DECL in decl_debug_args, don't call remap_gimple_op_r on it. * gcc.dg/debug/pr66432.c: New test. From-SVN: r230702
2015-11-21* testsuite/23_containers/vector/profile/vector.cc: Add maxdata option on AIX.David Edelsohn2-0/+7
From-SVN: r230701
2015-11-21re PR go/66378 (libgo syscall.Sendfile() does not honor/use offset argument)Ian Lance Taylor3-1/+3
PR go/66378 syscall: Fix initial offset value in syscall.Sendfile. Bug reported in https://gcc.gnu.org/PR66378. Reviewed-on: https://go-review.googlesource.com/17159 From-SVN: r230699
2015-11-21ipa-icf.c (sem_item::add_type): Do not look for TYPE_CANONICAL...Jan Hubicka3-5/+19
* ipa-icf.c (sem_item::add_type): Do not look for TYPE_CANONICAL; do not check AGGREGATE_TYPE_P when adding TYPE_MODE; Check that all record types are complete. * ipa-icf-gimple.c (func_checker::compatible_types_p): Do not compare alias sets for types w/o alias sets. From-SVN: r230698
2015-11-21re PR go/66406 (go.test/test/nilptr.go FAILs with PIE)Ian Lance Taylor2-0/+10
PR go/66406 * go.test/go-test.exp (go-gc-tests): Skip nilptr.go if PIE. From-SVN: r230697
2015-11-21re PR go/65785 (libgo TestIPv4MulticastListener test fails on machine with ↵Ian Lance Taylor2-3/+3
no network connection) PR go/65785 net: don't run multicast listen test on nil interface in short mode This is a backport of https://golang.org/cl/17154. The gccgo bug report https://gcc.gnu.org/PR65785 points out that the multicast listen tests will use the network even with -test.short. Fix test by checking testing.Short with a nil interface. Reviewed-on: https://go-review.googlesource.com/17158 From-SVN: r230695
2015-11-21re PR go/66574 (Time is provided in millisecond precision instead of ↵Ian Lance Taylor4-6/+63
nanoseconds as described in go documentation) PR go/66574 runtime: Use clock_gettime to get current time. Fetch the current time in nanoseconds, not microseconds, by using clock_gettime rather than gettimeofday. Update golang/go#11222. Fixes https://gcc.gnu.org/PR66574. Reviewed-on: https://go-review.googlesource.com/17156 From-SVN: r230694
2015-11-21Daily bump.GCC Administrator1-1/+1
From-SVN: r230692
2015-11-20re PR go/68141 (go/gofrontend/import-archive.cc: 2 * poor choice of function ↵Ian Lance Taylor2-3/+3
parameter type ?) PR go/68141 compiler: Use references in Archive_iterator comparison functions. Fixes minor performance problem pointed out in https://gcc.gnu.org/PR68141 . Reviewed-on: https://go-review.googlesource.com/17153 From-SVN: r230689
2015-11-20re PR go/68072 (malformed DWARF TagVariable entry)Ian Lance Taylor2-1/+6
PR go/68072 cmd/cgo: ignore vars with no name or type if they have a AttrSpecification Backport of master CL https://golang.org/cl/17151. Fixes https://gcc.gnu.org/PR/68072. Reviewed-on: https://go-review.googlesource.com/17152 From-SVN: r230685
2015-11-20vbase1.C: Only run on x86_64-*-* as this testcase isn't portable.Mike Stump2-1/+6
* g++.dg/init/vbase1.C: Only run on x86_64-*-* as this testcase isn't portable. From-SVN: r230683
2015-11-20sparc.md (umulxhi_vis): Move around.Eric Botcazou2-174/+161
* config/sparc/sparc.md (umulxhi_vis): Move around. (*umulxhi_sp64): Likewise. (umulxhi_v8plus): Likewise. (xmulx_vis): Likewise. (*xmulx_sp64): Likewise. (xmulx_v8plus): Likewise. (xmulxhi_vis): Likewise. (*xmulxhi_sp64): Likewise. (xmulxhi_v8plus): Likewise. From-SVN: r230681
2015-11-20cmd: Use correct install tool dir with gccgoIan Lance Taylor3-3/+28
When using the go command built from gccgo to build and install a go tool, use the value from runtime GCCGOTOOLDIR as the install directory. This also fixes the output from 'go tool' when used with the gccgo-built go command, to only include the go tools and not other binaries found in the same directory. Reviewed-on: https://go-review.googlesource.com/16516 From-SVN: r230677
2015-11-20Add testcase erroneously omitted from r230638David Malcolm1-0/+89
From-SVN: r230675
2015-11-20PR 62314: add ability to add fixit-hints to a diagnosticDavid Malcolm12-7/+598
This is the combination of two patches: [PATCH 01/02] PR/62314: add ability to add fixit-hints [PATCH 02/02] C FE: add fix-it hint for . vs -> gcc/ChangeLog: PR 62314 * diagnostic-show-locus.c (colorizer::set_fixit_hint): New. (class layout): Update comment (layout::print_any_fixits): New method. (layout::move_to_column): New method. (diagnostic_show_locus): Add call to layout.print_any_fixits. gcc/c/ChangeLog: PR 62314 * c-typeck.c (should_suggest_deref_p): New function. (build_component_ref): Special-case POINTER_TYPE when generating a "not a structure of union" error message, and suggest a "->" rather than a ".", providing a fix-it hint. gcc/testsuite/ChangeLog: PR 62314 * gcc.dg/fixits.c: New file. * gcc.dg/plugin/diagnostic-test-show-locus-ascii-bw.c (test_fixit_insert): New. (test_fixit_remove): New. (test_fixit_replace): New. * gcc.dg/plugin/diagnostic-test-show-locus-ascii-color.c (test_fixit_insert): New. (test_fixit_remove): New. (test_fixit_replace): New. * gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (test_show_locus): Add tests of rendering fixit hints. libcpp/ChangeLog: PR 62314 * include/line-map.h (source_range::intersects_line_p): New method. (rich_location::~rich_location): New. (rich_location::add_fixit_insert): New method. (rich_location::add_fixit_remove): New method. (rich_location::add_fixit_replace): New method. (rich_location::get_num_fixit_hints): New accessor. (rich_location::get_fixit_hint): New accessor. (rich_location::MAX_FIXIT_HINTS): New constant. (rich_location::m_num_fixit_hints): New field. (rich_location::m_fixit_hints): New field. (class fixit_hint): New class. (class fixit_insert): New class. (class fixit_remove): New class. (class fixit_replace): New class. * line-map.c (source_range::intersects_line_p): New method. (rich_location::rich_location): Add initialization of m_num_fixit_hints to both ctors. (rich_location::~rich_location): New. (rich_location::add_fixit_insert): New method. (rich_location::add_fixit_remove): New method. (rich_location::add_fixit_replace): New method. (fixit_insert::fixit_insert): New. (fixit_insert::~fixit_insert): New. (fixit_insert::affects_line_p): New. (fixit_remove::fixit_remove): New. (fixit_remove::affects_line_p): New. (fixit_replace::fixit_replace): New. (fixit_replace::~fixit_replace): New. (fixit_replace::affects_line_p): New. From-SVN: r230674
2015-11-20re PR middle-end/68221 (libgomp reduction-11/12 failures)Jakub Jelinek7-9/+24
PR middle-end/68221 * omp-low.c (lower_rec_input_clauses): If C/C++ array reduction has non-zero bias, subtract it in integer type instead of pointer plus of negated bias. * testsuite/libgomp.c/reduction-11.c: Remove xfail. * testsuite/libgomp.c/reduction-12.c: Likewise. * testsuite/libgomp.c++/reduction-11.C: Likewise. * testsuite/libgomp.c++/reduction-12.C: Likewise. From-SVN: r230672
2015-11-20re PR middle-end/68339 (g++.dg/vect/simd-clone-2.cc ICEs with aggressive GC ↵Jakub Jelinek4-0/+32
settings and OpenMP) PR middle-end/68339 * omp-low.c (expand_simd_clones): Call node->get_body () before allocating stuff in GC. * gcc.dg/vect/pr68339.c: New test. From-SVN: r230671
2015-11-20re PR libstdc++/68448 (Python Pretty Printers get disabled on libstdc++ ↵Jan Kratochvil3-9/+20
reload by GDB) PR libstdc++/68448 * python/hook.in: Call register_libstdcxx_printers. * python/libstdcxx/v6/__init__.py: Wrap it to register_libstdcxx_printers. From-SVN: r230669
2015-11-20Fix cygwin performance loss on linpack.Jim Wilson2-0/+6
gcc/ * tree-vect-data-refs.c (compare_tree): Call STRIP_NOPS. From-SVN: r230667
2015-11-20[AArch64] Add attribute for compatibility with ARM pipeline modelsEvandro Menezes3-0/+13
gcc/ * config/aarch64/aarch64.md (predicated): Copy attribute from "arm.md". * config/arm/arm.md (predicated): Added description. From-SVN: r230666
2015-11-20c-common.c (shorten_compare): But look through macros from system headers.Jason Merrill3-2/+21
* c-common.c (shorten_compare): But look through macros from system headers. From-SVN: r230665
2015-11-20[ARM] Do not expand movmisalign pattern if not in 32-bit modeKyrylo Tkachov5-7/+41
* config/arm/arm.c (arm_option_override): Require TARGET_32BIT for unaligned_access. * config/arm/arm.md (unaligned_loadsi): Remove redundant TARGET_32BIT from matching condition. (unaligned_loadhis): Likewise. (unaligned_loadhiu): Likewise. (unaligned_storesi): Likewise. (unaligned_storehi): Likewise. * gcc.target/arm/armv6-unaligned-load-ice.c: New test. From-SVN: r230664
2015-11-20[ARM] PR 68149 Fix ICE in unaligned_loaddi splitKyrylo Tkachov3-57/+33
PR target/68149 * config/arm/arm.md (unaligned_loaddi): Delete. (unaligned_storedi): Likewise. * config/arm/arm.c (gen_movmem_ldrd_strd): Don't generate unaligned DImode memory ops. Instead perform two back-to-back unaligned SImode ops. From-SVN: r230663
2015-11-20Fix wrong attribution in gfortran ChangeLogPaul Thomas1-2/+2
From-SVN: r230662
2015-11-20[multiple changes]Paul Thomas6-6/+49
2015-11-20 Paul Thomas <pault@gcc.gnu.org> PR fortran/68237 * decl.c (gfc_match_submod_proc): Test the interface symbol before accessing its attributes. 2015-11-20 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66762 (gfc_get_symbol_decl): Test for attr.used_in_submodule as well as attr.use_assoc (twice). (gfc_create_module_variable): Ditto. 2015-11-20 Paul Thomas <pault@gcc.gnu.org> PR fortran/68237 * gfortran.dg/submodule_12.f90: New test PR fortran/66762 * gfortran.dg/submodule_6.f90: Add compile option -flto. From-SVN: r230661
2015-11-20Sync top level configure with binutils-gdb.Tristan Gingold3-0/+24
2015-11-20 Tristan Gingold <gingold@adacore.com> * configure.ac: Add aarch64-*-darwin* and arm-*-darwin*. * configure: Regenerate. From-SVN: r230660
2015-11-20nvptx.c (nvptx_use_anchors_for_symbol_p): New.Nathan Sidwell2-0/+22
* config/nvptx/nvptx.c (nvptx_use_anchors_for_symbol_p): New. (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Override. Co-Authored-By: James Norris <jnorris@codesourcery.com> From-SVN: r230659
2015-11-20re PR tree-optimization/68413 (internal compiler error: in vect_transform_stmt)Alan Hayward3-20/+36
2015-11-20 Alan Hayward <alan.hayward@arm.com> PR tree-optimization/68413 * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Cache evolution base (vectorizable_reduction): Use cached base From-SVN: r230658
2015-11-20compiler: Use receiver name in hash/equal for type within method.Ian Lance Taylor2-2/+11
Test case sent as https://golang.org/cl/17081. Reviewed-on: https://go-review.googlesource.com/17082 From-SVN: r230657
2015-11-20Fix typo and trailing whitespace in dump-file strings in parloopsTom de Vries2-2/+8
2015-11-20 Tom de Vries <tom@codesourcery.com> * tree-parloops.c (build_new_reduction): Fix trailing whitespace in dump-file string. (try_create_reduction_list): Same. Fix typo in dump-file string. From-SVN: r230655
2015-11-20clang-format: split content of a list to multiple linesMartin Liska2-1/+89
* clang-format: Split content of a list to multiple lines. From-SVN: r230654
2015-11-20[ARM] Disable neon testing for armv7-mAndre Vieira2-2/+8
2015-11-20 Andre Vieira <andre.simoesdiasvieira@arm.com> * lib/target-supports.exp (check_effective_target_arm_neon_ok_nocache): Add check for M profile. From-SVN: r230653
2015-11-20md.texi (Standard Names): Move entry for addptr3 around...Eric Botcazou2-15/+45
* doc/md.texi (Standard Names): Move entry for addptr3 around, add entries for addv4, subv4, mulv4, umulv4 and negv3, fixes glitch in entries for cbranch4 and jump. From-SVN: r230651
2015-11-20Do final value replacement in try_create_reduction_listTom de Vries6-121/+159
2015-11-20 Tom de Vries <tom@codesourcery.com> PR tree-optimization/68373 * tree-scalar-evolution.c (final_value_replacement_loop): Factor out of ... (scev_const_prop): ... here. * tree-scalar-evolution.h (final_value_replacement_loop): Declare. * tree-parloops.c (try_create_reduction_list): Call final_value_replacement_loop. * gcc.dg/autopar/pr68373.c: New test. From-SVN: r230650
2015-11-20ChangeLog: Fix whitespace.Uros Bizjak2-9/+7
* ChangeLog: Fix whitespace. * testsuite/ChangeLog: Ditto. From-SVN: r230649
2015-11-20Fix up misplaced ChangeLog entry.Jakub Jelinek2-13/+13
From-SVN: r230648
2015-11-20re PR tree-optimization/52272 (Performance regression of 410.bwaves on x86.)Bin Cheng2-29/+220
PR tree-optimization/52272 * tree-ssa-loop-ivopts.c (struct iv_common_cand): New struct. (struct iv_common_cand_hasher): New struct. (iv_common_cand_hasher::hash): New function. (iv_common_cand_hasher::equal): New function. (struct ivopts_data): New fields, iv_common_cand_tab and iv_common_cands. (tree_ssa_iv_optimize_init): Initialize above fields. (record_common_cand, common_cand_cmp): New functions. (add_iv_candidate_derived_from_uses): New function. (add_iv_candidate_for_use): Record iv_common_cands derived from iv use in hash table, instead of adding candidates directly. (add_iv_candidate_for_uses): Call add_iv_candidate_derived_from_uses. (record_important_candidates): Add important candidates to iv uses' related_cands. Always keep related_cands for future use. (try_add_cand_for): Use iv uses' related_cands. (free_loop_data, tree_ssa_iv_optimize_finalize): Release new fields in struct ivopts_data, iv_common_cand_tab and iv_common_cands. From-SVN: r230647
2015-11-20re PR c++/67354 (internal compiler error: in add_to_same_comdat_group, at ↵Jakub Jelinek6-2/+63
symtab.c:421) PR c++/67354 * cp-tree.h (defer_mangling_aliases): Declare. (generate_mangling_aliases): New prototype. * decl2.c (defer_mangling_aliases): New variable. (note_mangling_alias): Use !defer_mangling_aliases instead of at_eof. (generate_mangling_aliases): No longer static. Clear defer_mangling_aliases. * optimize.c (maybe_thunk_body): Defer emitting mangling aliases if !defer_mangling_aliases until the fns are put into the same comdat group. * g++.dg/abi/mangle67.C: New test. From-SVN: r230646
2015-11-20S/390: Add bswaphi2 patternAndreas Krebbel4-0/+54
gcc/testsuite/ChangeLog: * gcc.target/s390/bswap-1.c: New test. gcc/ChangeLog: * config/s390/s390.md ("bswaphi2"): New pattern. From-SVN: r230643