aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2014-12-10real.h (HONOR_NANS): Replace macro with 3 overloaded declarations.Marc Glisse16-55/+96
2014-12-10 Marc Glisse <marc.glisse@inria.fr> * real.h (HONOR_NANS): Replace macro with 3 overloaded declarations. * real.c: Include rtl.h and options.h. (HONOR_NANS): Define three overloads. * builtins.c (fold_builtin_classify, fold_builtin_unordered_cmp): Simplify argument of HONOR_NANS. * fold-const.c (combine_comparisons, fold_truth_not_expr, fold_cond_expr_with_comparison, merge_truthop_with_opposite_arm, fold_comparison, fold_binary_loc): Likewise. * ifcvt.c (noce_try_move, noce_try_minmax): Likewise. * ipa-inline-analysis.c (add_clause, set_cond_stmt_execution_predicate): Likewise. * match.pd: Likewise. * rtlanal.c (may_trap_p_1): Likewise. * simplify-rtx.c (simplify_const_relational_operation): Likewise. * tree-if-conv.c (parse_predicate): Likewise. * tree-ssa-ccp.c (valid_lattice_transition): Likewise. * tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise. * tree-ssa-phiopt.c (minmax_replacement, neg_replacement): Likewise. * tree-ssa-reassoc.c (eliminate_using_constants): Likewise. * tree-ssa-tail-merge.c (gimple_equal_p): Likewise. From-SVN: r218605
2014-12-10re PR tree-optimization/62021 (ICE in verify_gimple_assign_single)Jakub Jelinek4-10/+59
PR tree-optimization/62021 * omp-low.c (simd_clone_adjust_return_type): Use vector of pointer_sized_int_node types instead vector of pointer types. (simd_clone_adjust_argument_types): Likewise. * gcc.dg/vect/pr62021.c: New test. From-SVN: r218603
2014-12-10re PR target/64252 (expand_vec_perm_pblendv caused miscompilation)Jakub Jelinek6-0/+128
PR target/64252 * config/i386/i386.c (expand_vec_perm_pblendv): If not testing_p, set dcopy.target to a new pseudo. * gcc.dg/vect/pr64252.c: New test. * gcc.dg/pr64252.c: New test. * gcc.target/i386/avx2-pr64252.c: New test. Co-Authored-By: Evgeny Stupachenko <evstupac@gmail.com> From-SVN: r218602
2014-12-10chkp-privatize_0.c: Remove unneeded selector from target check.Ilya Enkovich2-1/+6
* gcc.dg/lto/chkp-privatize_0.c: Remove unneeded selector from target check. From-SVN: r218601
2014-12-10pr64127.C: Fix.Paolo Carlini1-0/+4
2014-12-10 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/cpp/pr64127.C: Fix. From-SVN: r218600
2014-12-10pr64127.C: Fix.Paolo Carlini1-7/+2
2014-12-10 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/cpp/pr64127.C: Fix. From-SVN: r218599
2014-12-10* config/rs6000/rs6000.md (*add<mode>3): Remove condition.Segher Boessenkool2-1/+5
From-SVN: r218598
2014-12-1040x.md (ppc403-compare): Remove "compare".Segher Boessenkool25-48/+65
* config/rs6000/40x.md (ppc403-compare): Remove "compare". config/rs6000/440.md (ppc440-compare): Remove "compare". config/rs6000/476.md (ppc476-compare): Remove "compare". config/rs6000/601.md (ppc601-compare): Remove "compare". config/rs6000/603.md (ppc603-compare): Remove "compare". config/rs6000/6xx.md (ppc604-compare): Remove "compare". config/rs6000/7450.md (ppc7450-compare): Remove "compare". config/rs6000/7xx.md (ppc750-compare): Remove "compare". config/rs6000/8540.md (ppc8540_su): Remove "compare". config/rs6000/cell.md (cell-fast-cmp, cell-cmp-microcoded): Remove "compare". config/rs6000/e300c2c3.md (ppce300c3_cmp): Remove "compare". config/rs6000/e500mc.md (e500mc_su): Remove "compare". config/rs6000/e500mc64.md (e500mc64_su2): Remove "compare". config/rs6000/e5500.md (e5500_sfx2): Remove "compare". config/rs6000/e6500.md (e6500_sfx2): Remove "compare". config/rs6000/mpc.md (mpccore-compare): Remove "compare". config/rs6000/power4.md (power4-compare): Remove "compare". config/rs6000/power5.md (power5-compare): Remove "compare". config/rs6000/power6.md (power6-compare): Remove "compare". config/rs6000/power7.md (power7-compare): Remove "compare". config/rs6000/power8.md (power8-compare): Remove "compare". Update comment. config/rs6000/rs6000.c (rs6000_adjust_cost) <TYPE_COMPARE>: Remove (three times). (is_cracked_insn): Remove TYPE_COMPARE case. (insn_must_be_first_in_group) <TYPE_COMPARE>: Remove (twice). config/rs6000/rs6000.md (type): Remove "compare". (cell_micro): Remove "compare". config/rs6000/rs64.md (rs64a-compare): Remove "compare". From-SVN: r218597
2014-12-10rs6000.md (*anddi3_2rld_dot, [...]): Change type from "compare" to "two".Segher Boessenkool2-2/+7
* config/rs6000/rs6000.md (*anddi3_2rld_dot, *anddi3_rld_dot2): Change type from "compare" to "two". From-SVN: r218596
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool5-1181/+424
PR target/64180 * config/rs6000/predicates.md (unsigned_comparison_operator): New. (signed_comparison_operator): New. * config/rs6000/rs6000-protos.h (rs6000_emit_eqne): Declare. * config/rs6000/rs6000.c (rs6000_emit_eqne): New function. (rs6000_emit_sCOND): Remove ISEL test (move it to the expander). * config/rs6000/rs6000.md (add<mode>3 for SDI): Expand DImode add to addc,adde directly, if !TARGET_POWERPC64. (sub<mode>3 for SDI): Expand DImode sub to subfc,subfe directly, if !TARGET_POWERPC64. (neg<mode>2): Delete expander. (*neg<mode>2): Rename to "neg<mode>2". (addti3, subti3): Delete. (addti3, subti3): New expanders. (*adddi3_noppc64, *subdi3_noppc64, *negdi2_noppc64): Delete. (cstore<mode>4_unsigned): New expander. (cstore<mode>4): Allow GPR as output (not just SI). Rewrite. (cstore<mode>4 for FP): Remove superfluous quotes. (*eq<mode>, *eq<mode>_compare, *plus_eqsi and splitter, *compare_plus_eqsi and splitter, *plus_eqsi_compare and splitter, *neg_eq0<mode>, *neg_eq<mode>, *ne0_<mode>, plus_ne0_<mode>, compare_plus_ne0_<mode> and splitter, *compare_plus_ne0_<mode>_1 and splitter, *plus_ne0_<mode>_compare and splitter, *leu<mode>, *leu<mode>_compare and splitter, *plus_leu<mode>, *neg_leu<mode>, *and_neg_leu<mode>, *ltu<mode>, *ltu<mode>_compare, *plus_ltu<mode>, *plus_ltu<mode>_1, *plus_ltu<mode>compare, *neg_ltu<mode>, *geu<mode>, *geu<mode>_compare and splitter, *plus_geu<mode>, *neg_geu<mode>, *and_neg_geu<mode>, *plus_gt0<mode>, *gtu<mode>, *gtu<mode>_compare, *plus_gtu<mode>, *plus_gtu<mode>_1, *plus_gtu<mode>_compare, *neg_gtu<mode>, 12 anonymous insns, and 12 anonymous splitters): Delete. (eq<mode>3, ne<mode>3): New. (*neg_eq_<mode>, *neg_ne_<mode>): New. (*plus_eq_<mode>, *plus_ne_<mode>): New. (*minus_eq_<mode>, *minus_ne_<mode>): New. From-SVN: r218595
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool3-0/+228
PR target/64180 * config/rs6000/predicates.md (adde_operand): New. * config/rs6000/rs6000.md (add<mode>3_carry): New. (*add<mode>3_imm_carry_pos): New. (*add<mode>3_imm_carry_0): New. (*add<mode>3_imm_carry_m1): New. (*add<mode>3_imm_carry_neg): New. (add<mode>3_carry_in): New. (*add<mode>3_carry_in_internal): New. (add<mode>3_carry_in_0): New. (add<mode>3_carry_in_m1): New. (subf<mode>3_carry): New. (*subf<mode>3_imm_carry_0): New. (*subf<mode>3_imm_carry_m1): New. (subf<mode>3_carry_in): New. (*subf<mode>3_carry_in_internal): New. (subf<mode>3_carry_in_0): New. (subf<mode>3_carry_in_m1): New. (subf<mode>3_carry_in_xx): New. From-SVN: r218594
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool2-45/+84
PR target/64180 * config/rs6000/rs6000.md (*add<mode>3_internal1): Rename to "*add<mode>3". (*add<mode>3_internal2, *add<mode>3_internal3, and (their splitters): Delete. (*add<mode>3_dot, *add<mode>3_dot2): New. (*add<mode>3_imm_dot, *add<mode>3_imm_dot2): New. From-SVN: r218593
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool2-6/+9
PR target/64180 * config/rs6000/rs6000.md (*add<mode>3_internal1): Remove addic alternative. From-SVN: r218592
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool2-22/+28
PR target/64180 * config/rs6000/rs6000.md (*ctr<mode>_internal1, *ctr<mode>_internal2, *ctr<mode>_internal5, *ctr<mode>_internal6): Change "r" alternatives to "b". Increase length. (splitters for these): Split to cmp+addi instead of addic. From-SVN: r218591
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool4-30/+35
PR target/64180 * config/rs6000/darwin.md (macho_low_si): Remove "r" alternative. (macho_low_di): Ditto. * config/rs6000/rs6000.md (*largetoc_low): Ditto. (tocref<mode>): Ditto. (elf_low): Ditto. * config/rs6000/spe.md (mov_si<mode>_e500_subreg0_elf_low_be): Ditto. (mov_si<mode>_e500_subreg0_elf_low_le): Ditto. (mov_si<mode>_e500_subreg4_elf_low_be): Ditto. Reformat condition. (mov_si<mode>_e500_subreg4_elf_low_le): Ditto. From-SVN: r218590
2014-12-10re PR target/64180 (PowerPC carry bit improvements)Segher Boessenkool2-0/+22
PR target/64180 * config/rs6000/rs6000.c (TARGET_MD_ASM_CLOBBERS): Define. (rs6000_md_asm_clobbers): New function. From-SVN: r218589
2014-12-10Document libgccjit++.hDavid Malcolm25-35/+10164
gcc/jit/ChangeLog: * docs/cp/index.rst: New file. * docs/cp/intro/index.rst: New file. * docs/cp/intro/tutorial01.rst: New file. * docs/cp/intro/tutorial02.rst: New file. * docs/cp/intro/tutorial03.rst: New file. * docs/cp/intro/tutorial04.rst: New file. * docs/cp/topics/contexts.rst: New file. * docs/cp/topics/expressions.rst: New file. * docs/cp/topics/functions.rst: New file. * docs/cp/topics/index.rst: New file. * docs/cp/topics/locations.rst: New file. * docs/cp/topics/objects.rst: New file. * docs/cp/topics/results.rst: New file. * docs/cp/topics/types.rst: New file. * docs/examples/tut01-hello-world.cc: New file. * docs/examples/tut02-square.c: Fix missing newline in output. * docs/examples/tut02-square.cc: New file. * docs/examples/tut03-sum-of-squares.cc: New file. * docs/examples/tut04-toyvm/toyvm.cc: New file. * docs/index.rst: Move summary to above the table of contents. Add text about the C vs C++ APIs. * docs/topics/contexts.rst: Fix a typo. * docs/_build/texinfo/libgccjit.texi: Regenerate. * docs/_build/texinfo/factorial1.png: New file. * docs/_build/texinfo/sum-of-squares1.png: New file. From-SVN: r218588
2014-12-10re PR testsuite/64048 (UNRESOLVED: gcc.dg/tree-prof/peel-1.c scan-rtl-dump ↵Richard Biener2-2/+7
loop2_unroll) 2014-12-10 Richard Biener <rguenther@suse.de> PR testsuite/64048 * gcc.dg/tree-prof/peel-1.c: Update dump scanning. From-SVN: r218585
2014-12-10re PR fortran/60718 (Test case gfortran.dg/select_type_4.f90 fails on ARM)Bernd Edlinger4-0/+156
2014-12-10 Bernd Edlinger <bernd.edlinger@hotmail.de> PR fortran/60718 * trans-expr.c (gfc_conv_procedure_call): Fix a strict aliasing violation when passing a class object to a formal parameter which has different pointer or allocatable attributes. testsuite: 2014-12-10 Bernd Edlinger <bernd.edlinger@hotmail.de> PR fortran/60718 * gfortran.dg/class_alias.f90: New. From-SVN: r218584
2014-12-10forwprop-29.c: Add -fno-ipa-icf.Richard Biener2-1/+5
2014-12-10 Richard Biener <rguenther@suse.de> * gcc.dg/tree-ssa/forwprop-29.c: Add -fno-ipa-icf. From-SVN: r218583
2014-12-10aarch64-protos.h (aarch64_function_profiler): Remove declaration of removed ↵Felix Yang2-1/+5
function. * config/aarch64/aarch64-protos.h (aarch64_function_profiler): Remove declaration of removed function. From-SVN: r218582
2014-12-102014-12-10 Richard Biener <rguenther@suse.de>Richard Biener2-0/+18
* tree-ssa-loop-im.c (move_computations_dom_walker::before_dom_children): Clear SSA_NAME_RANGE_INFO on moved stmts. From-SVN: r218580
2014-12-10New sreal implementation which uses int64_t as m_sig.Martin Liska4-126/+81
* sreal.c (sreal::shift_right): New implementation for int64_t as m_sig. (sreal::normalize): Likewise. (sreal::to_int): Likewise. (sreal::operator+): Likewise. (sreal::operator-): Likewise. (sreal::operator*): Likewise. (sreal::operator/): Likewise. (sreal::signedless_minus): Removed. (sreal::signedless_plus): Removed. (sreal::debug): const keyword is added. * sreal.h (sreal::operator<): New implementation for int64_t as m_sig. * ipa-inline.c (recursive_inlining): LONG_MIN is replaced with sreal::min (). From-SVN: r218579
2014-12-10re PR ipa/63909 (ICE: SIGSEGV in ipa_icf_gimple::func_checker::compare_bb())Martin Liska5-15/+60
PR ipa/63909 * gimple-iterator.h (gsi_start_bb_nondebug): New function. * ipa-icf-gimple.c (func_checker::compare_bb): Correct iteration replaces loop based on precomputed number of non-debug statements. * gcc.dg/ipa/pr63909.c: New test. From-SVN: r218578
2014-12-10linux.c (linux_has_ifunc_p): Remove.Alexander Ivchenko3-12/+5
gcc/ * config/linux.c (linux_has_ifunc_p): Remove. * config/linux.h (TARGET_HAS_IFUNC_P): Use default version. From-SVN: r218577
2014-12-10check_GNU_style.sh "80 characters exceeded" error fixMantas Mikaitis1-0/+5
2014-12-10 Mantas Mikaitis <mantas.mikaitis@arm.com> * contrib/check_GNU_style.sh (col): Got rid of cut operation from the pipe chain and instead added cut inside awk command. From-SVN: r218575
2014-12-10re PR c++/64127 (ICE on invalid: tree check: expected identifier_node, have ↵Kai Tietz2-0/+12
template_id_expr in cp_parser_diagnose_invalid_type_name, at cp/parser.c:2980) PR c++/64127 * g++.dg/cpp/pr64127.C: New file. From-SVN: r218574
2014-12-10re PR c++/64127 (ICE on invalid: tree check: expected identifier_node, have ↵Kai Tietz2-0/+5
template_id_expr in cp_parser_diagnose_invalid_type_name, at cp/parser.c:2980) PR c++/64127 * parser.c (cp_parser_diagnose_invalid_type_name): Check id for being an identifier before accessing it. From-SVN: r218573
2014-12-10re PR c++/64100 (A static assert using the the current class in a noexcept ↵Kai Tietz2-0/+14
test leads to a segfault) PR c++/64100 * g++.dg/template/pr64100.C: New file. From-SVN: r218572
2014-12-10re PR c++/64100 (A static assert using the the current class in a noexcept ↵Kai Tietz2-0/+11
test leads to a segfault) PR c++/64100 * typeck.c (lookup_destructor): Handle incomplete type. From-SVN: r218571
2014-12-10ChangeLog fix for r218307Matthew Fortune1-0/+5
Remove entry from ChangeLog. Insert entry into appropriate location of gcc/ChangeLog. From-SVN: r218570
2014-12-10re PR tree-optimization/64191 (indirect clobbers messes up dead code ↵Richard Biener4-2/+58
elimination in loop calling dtor) 2014-12-10 Richard Biener <rguenther@suse.de> PR tree-optimization/64191 * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark clobbers as necessary. (eliminate_unnecessary_stmts): Keep clobbers live if we can. * g++.dg/pr64191.C: Make sure we can DCE empty loops with indirect clobbers. From-SVN: r218566
2014-12-10re PR target/63594 (ICE: in ix86_vector_duplicate_value, at ↵Jakub Jelinek5-127/+95
config/i386/i386.c:39831 with -mavx512f) PR target/63594 * config/i386/sse.md (vec_dupv4sf): Move after <mask_codefor><avx512>_vec_dup_gpr<mode><mask_name> pattern. (*vec_dupv4si, *vec_dupv2di): Likewise. (<mask_codefor><avx512>_vec_dup_mem<mode><mask_name>): Merge into ... (<mask_codefor><avx512>_vec_dup_gpr<mode><mask_name>): ... this pattern. (*vec_dup<mode> AVX2_VEC_DUP_MODE splitter): Disable for TARGET_AVX512VL (for QI/HI scalar modes only if TARGET_AVX512BW is set too). * config/i386/i386.c (enum ix86_builtins): Remove IX86_BUILTIN_PBROADCASTQ256_MEM_MASK, IX86_BUILTIN_PBROADCASTQ128_MEM_MASK and IX86_BUILTIN_PBROADCASTQ512_MEM. (bdesc_args): Use __builtin_ia32_pbroadcastq512_gpr_mask, __builtin_ia32_pbroadcastq256_gpr_mask and __builtin_ia32_pbroadcastq128_gpr_mask instead of *_mem_mask regardless of OPTION_MASK_ISA_64BIT. * config/i386/avx512fintrin.h (_mm512_set1_epi64, _mm512_mask_set1_epi64, _mm512_maskz_set1_epi64): Use *_gpr_mask builtins regardless of whether TARGET_64BIT is defined or not. * config/i386/avx512vlintrin.h (_mm256_mask_set1_epi64, _mm256_maskz_set1_epi64, _mm_mask_set1_epi64, _mm_maskz_set1_epi64): Likewise. From-SVN: r218565
2014-12-10sse.md (*mov<mode>_internal, [...]): Use <MODE_SIZE> instead of ↵Jakub Jelinek2-2/+7
GET_MODE_SIZE (<MODE>mode). * config/i386/sse.md (*mov<mode>_internal, *avx512f_gatherdi<mode>_2): Use <MODE_SIZE> instead of GET_MODE_SIZE (<MODE>mode). From-SVN: r218564
2014-12-10re PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)Oleg Endo2-1/+6
gcc/ PR target/53513 * doc/extend.texi (__builtin_sh_set_fpscr): Fix typo. From-SVN: r218563
2014-12-10re PR tree-optimization/61686 (Incorrect check in comparison function ↵Marek Polacek2-1/+7
range_entry_cmp() in tree_ssa_reassoc.c) PR tree-optimization/61686 * tree-ssa-reassoc.c (range_entry_cmp): Use q->high instead of p->high. From-SVN: r218560
2014-12-10libgcc.texi: Update text to match implementation in libgcc/libgcc2.cKito Cheng2-14/+19
* doc/libgcc.texi: Update text to match implementation in libgcc/libgcc2.c From-SVN: r218559
2014-12-10remove gengtype support for param_is use_param, if_marked and splay tree ↵Trevor Saunders13-917/+85
allocators gcc/ * plugin.c, plugin.def, ggc.h, ggc-common.c, gengtype.h, gengtype.c, gengtype-state.c, gengtype-parse.c, gentype-lex.l, gcc-plugin.h, doc/plugins.texi, doc/gty.texi: Remove support for if_marked and param_is. include/ * hashtab.h, splay-tree.h: Remove GTY markers. From-SVN: r218558
2014-12-09re PR c++/64129 (ICE on invalid: in grokfndecl, at cp/decl.c:7658)Jason Merrill3-0/+22
PR c++/64129 * decl.c (grokdeclarator): Recover from variable template specialization declared as function. From-SVN: r218557
2014-12-09re PR c++/64222 (error: ‘__FUNCTION__’ was not declared in this scope)Jason Merrill3-1/+27
PR c++/64222 * parser.c (cp_parser_unqualified_id): Don't declare fname while parsing function parms. From-SVN: r218556
2014-12-10compiler: Don't track fields in compiler-generated hash and eq funcs.Ian Lance Taylor4-0/+23
Also, lower field tracking calls. From-SVN: r218554
2014-12-10re PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)Oleg Endo2-0/+15
gcc/ PR target/53513 * doc/extend.texi (__builtin_sh_get_fpscr, __builtin_sh_get_fpscr): Document it. From-SVN: r218551
2014-12-10Daily bump.GCC Administrator1-1/+1
From-SVN: r218550
2014-12-09re PR middle-end/64225 (-funsafe-math-optimizations generates call to pow ↵Bill Schmidt2-0/+9
where multiply instruction would do) 2014-12-09 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR middle-end/64225 * tree-ssa-reassoc.c (acceptable_pow_call): Disable transformation for BUILT_IN_POW when flag_errno_math is present. From-SVN: r218546
2014-12-09lto-wrapper.c (compile_offload_image): Start processing in_argv from 0 ↵Ilya Verbin2-14/+43
instead of 1. gcc/ * lto-wrapper.c (compile_offload_image): Start processing in_argv from 0 instead of 1. (run_gcc): Put offload objects into offload_argv, put LTO objects and possible preceding arguments into lto_argv. Pass offload_argv to compile_images_for_offload_targets instead of argv. Use lto_argv for LTO recompilation instead of argv. lto-plugin/ * lto-plugin.c (offload_files, num_offload_files): New static variables. (free_1): Use arguments instead of global variables. (free_2): Free offload_files. (all_symbols_read_handler): Add names from offload_files to lto-wrapper arguments. (claim_file_handler): Do not add file to claimed_files if it contains offload sections without LTO sections. Add it to offload_files instead. From-SVN: r218543
2014-12-09toyvm.c: use correct path in debuginfoDavid Malcolm2-8/+34
gcc/jit/ChangeLog: * docs/examples/tut04-toyvm/toyvm.c (toyvm_function_compile): Move logic for determine "funcname" to new function... (get_function_name): ...here, adding logic to skip any leading path from the filename. (toyvm_function_parse): Use the filename for fn_filename, rather than "name", so that the debugger can locate the source .toy file. (toyvm_function_parse): Don't fclose a NULL FILE *. From-SVN: r218540
2014-12-09(libgcc_s) Optional filename-based shared library versioning on AIX.Michael Haubenwallner2-0/+118
2014-12-09 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> (libgcc_s) Optional filename-based shared library versioning on AIX. * gcc/doc/install.texi: Describe --with-aix-soname option. * Makefile.in (with_aix_soname): Define. * config/rs6000/t-slibgcc-aix: Act upon --with-aix-soname option. * configure.ac: Accept --with-aix-soname=aix|svr4|both option. * configure: Recreate. From-SVN: r218539
2014-12-09PR jit/63854: Document how to run the jit testsuite under valgrindDavid Malcolm3-10/+119
gcc/jit/ChangeLog: PR jit/63854 * docs/internals/index.rst (Running under valgrind): New subsection. (docs/_build/texinfo/libgccjit.texi): Regenerate. From-SVN: r218538
2014-12-09[AArch64]Remove aarch64_get_lanedi, unusedAlan Lawrence2-11/+4
* config/aarch64/aarch64-simd.md (aarch64_get_lanedi): Remove. From-SVN: r218537
2014-12-09[AArch64]Remove be_checked_get_lane, check bounds with ↵Alan Lawrence29-283/+682
__builtin_aarch64_im_lane_boundsi. gcc/: PR target/63870 * config/aarch64/aarch64-simd-builtins.def (be_checked_get_lane): Delete. * config/aarch64/aarch64-simd.md (aarch64_be_checked_get_lane<mode\>): Delete. * config/aarch64/arm_neon.h (aarch64_vget_lane_any): Use GCC vector extensions, __aarch64_lane, __builtin_aarch64_im_lane_boundsi. (__aarch64_vget_lane_f32, __aarch64_vget_lane_f64, __aarch64_vget_lane_p8, __aarch64_vget_lane_p16, __aarch64_vget_lane_s8, __aarch64_vget_lane_s16, __aarch64_vget_lane_s32, __aarch64_vget_lane_s64, __aarch64_vget_lane_u8, __aarch64_vget_lane_u16, __aarch64_vget_lane_u32, __aarch64_vget_lane_u64, __aarch64_vgetq_lane_f32, __aarch64_vgetq_lane_f64, __aarch64_vgetq_lane_p8, __aarch64_vgetq_lane_p16, __aarch64_vgetq_lane_s8, __aarch64_vgetq_lane_s16, __aarch64_vgetq_lane_s32, __aarch64_vgetq_lane_s64, __aarch64_vgetq_lane_u8, __aarch64_vgetq_lane_u16, __aarch64_vgetq_lane_u32, __aarch64_vgetq_lane_u64): Delete. (__aarch64_vdup_lane_any): Use __aarch64_vget_lane_any, remove 'q2' argument. (__aarch64_vdup_lane_f32, __aarch64_vdup_lane_f64, __aarch64_vdup_lane_p8, __aarch64_vdup_lane_p16, __aarch64_vdup_lane_s8, __aarch64_vdup_lane_s16, __aarch64_vdup_lane_s32, __aarch64_vdup_lane_s64, __aarch64_vdup_lane_u8, __aarch64_vdup_lane_u16, __aarch64_vdup_lane_u32, __aarch64_vdup_lane_u64, __aarch64_vdup_laneq_f32, __aarch64_vdup_laneq_f64, __aarch64_vdup_laneq_p8, __aarch64_vdup_laneq_p16, __aarch64_vdup_laneq_s8, __aarch64_vdup_laneq_s16, __aarch64_vdup_laneq_s32, __aarch64_vdup_laneq_s64, __aarch64_vdup_laneq_u8, __aarch64_vdup_laneq_u16, __aarch64_vdup_laneq_u32, __aarch64_vdup_laneq_u64): Remove argument to __aarch64_vdup_lane_any. (vget_lane_f32, vget_lane_f64, vget_lane_p8, vget_lane_p16, vget_lane_s8, vget_lane_s16, vget_lane_s32, vget_lane_s64, vget_lane_u8, vget_lane_u16, vget_lane_u32, vget_lane_u64, vgetq_lane_f32, vgetq_lane_f64, vgetq_lane_p8, vgetq_lane_p16, vgetq_lane_s8, vgetq_lane_s16, vgetq_lane_s32, vgetq_lane_s64, vgetq_lane_u8, vgetq_lane_u16, vgetq_lane_u32, vgetq_lane_u64, vdupb_lane_p8, vdupb_lane_s8, vdupb_lane_u8, vduph_lane_p16, vduph_lane_s16, vduph_lane_u16, vdups_lane_f32, vdups_lane_s32, vdups_lane_u32, vdupb_laneq_p8, vdupb_laneq_s8, vdupb_laneq_u8, vduph_laneq_p16, vduph_laneq_s16, vduph_laneq_u16, vdups_laneq_f32, vdups_laneq_s32, vdups_laneq_u32, vdupd_laneq_f64, vdupd_laneq_s64, vdupd_laneq_u64, vfmas_lane_f32, vfma_laneq_f64, vfmad_laneq_f64, vfmas_laneq_f32, vfmss_lane_f32, vfms_laneq_f64, vfmsd_laneq_f64, vfmss_laneq_f32, vmla_lane_f32, vmla_lane_s16, vmla_lane_s32, vmla_lane_u16, vmla_lane_u32, vmla_laneq_f32, vmla_laneq_s16, vmla_laneq_s32, vmla_laneq_u16, vmla_laneq_u32, vmlaq_lane_f32, vmlaq_lane_s16, vmlaq_lane_s32, vmlaq_lane_u16, vmlaq_lane_u32, vmlaq_laneq_f32, vmlaq_laneq_s16, vmlaq_laneq_s32, vmlaq_laneq_u16, vmlaq_laneq_u32, vmls_lane_f32, vmls_lane_s16, vmls_lane_s32, vmls_lane_u16, vmls_lane_u32, vmls_laneq_f32, vmls_laneq_s16, vmls_laneq_s32, vmls_laneq_u16, vmls_laneq_u32, vmlsq_lane_f32, vmlsq_lane_s16, vmlsq_lane_s32, vmlsq_lane_u16, vmlsq_lane_u32, vmlsq_laneq_f32, vmlsq_laneq_s16, vmlsq_laneq_s32, vmlsq_laneq_u16, vmlsq_laneq_u32, vmul_lane_f32, vmul_lane_s16, vmul_lane_s32, vmul_lane_u16, vmul_lane_u32, vmuld_lane_f64, vmuld_laneq_f64, vmuls_lane_f32, vmuls_laneq_f32, vmul_laneq_f32, vmul_laneq_f64, vmul_laneq_s16, vmul_laneq_s32, vmul_laneq_u16, vmul_laneq_u32, vmulq_lane_f32, vmulq_lane_s16, vmulq_lane_s32, vmulq_lane_u16, vmulq_lane_u32, vmulq_laneq_f32, vmulq_laneq_f64, vmulq_laneq_s16, vmulq_laneq_s32, vmulq_laneq_u16, vmulq_laneq_u32) : Use __aarch64_vget_lane_any. gcc/testsuite/: * gcc.target/aarch64/simd/vget_lane_f32_indices_1.c: New test. * gcc.target/aarch64/simd/vget_lane_f64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_p16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_p8_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_s16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_s32_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_s64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_s8_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_u16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_u32_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_u64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vget_lane_u8_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_f32_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_f64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_p16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_p8_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_s16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_s32_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_s64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_s8_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_u16_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_u32_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_u64_indices_1.c: Likewise. * gcc.target/aarch64/simd/vgetq_lane_u8_indices_1.c: Likewise. From-SVN: r218536