- 10 Dec, 2014 38 commits
-
-
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
Segher Boessenkool committed -
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
Segher Boessenkool committed -
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
Segher Boessenkool committed -
PR target/64180 * config/rs6000/rs6000.md (*add<mode>3_internal1): Remove addic alternative. From-SVN: r218592
Segher Boessenkool committed -
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
Segher Boessenkool committed -
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
Segher Boessenkool committed -
PR target/64180 * config/rs6000/rs6000.c (TARGET_MD_ASM_CLOBBERS): Define. (rs6000_md_asm_clobbers): New function. From-SVN: r218589
Segher Boessenkool committed -
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
David Malcolm committed -
2014-12-10 Richard Biener <rguenther@suse.de> PR testsuite/64048 * gcc.dg/tree-prof/peel-1.c: Update dump scanning. From-SVN: r218585
Richard Biener committed -
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
Bernd Edlinger committed -
2014-12-10 Richard Biener <rguenther@suse.de> * gcc.dg/tree-ssa/forwprop-29.c: Add -fno-ipa-icf. From-SVN: r218583
Richard Biener committed -
* config/aarch64/aarch64-protos.h (aarch64_function_profiler): Remove declaration of removed function. From-SVN: r218582
Felix Yang committed -
* tree-ssa-loop-im.c (move_computations_dom_walker::before_dom_children): Clear SSA_NAME_RANGE_INFO on moved stmts. From-SVN: r218580
Richard Biener committed -
* 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
Martin Liska committed -
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
Martin Liska committed -
gcc/ * config/linux.c (linux_has_ifunc_p): Remove. * config/linux.h (TARGET_HAS_IFUNC_P): Use default version. From-SVN: r218577
Alexander Ivchenko committed -
libgomp/ * config.h.in: Regenerate. * configure: Regenerate. * configure.ac: Add GCC_CHECK_EMUTLS. * libgomp.h: Add check for USE_EMUTLS: this case is equal to HAVE_TLS. * team.c: Likewise. From-SVN: r218576
Varvara Rainchik committed -
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
Mantas Mikaitis committed -
re PR c++/64127 (ICE on invalid: tree check: expected identifier_node, have 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
Kai Tietz committed -
re PR c++/64127 (ICE on invalid: tree check: expected identifier_node, have 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
Kai Tietz committed -
re PR c++/64100 (A static assert using the the current class in a noexcept test leads to a segfault) PR c++/64100 * g++.dg/template/pr64100.C: New file. From-SVN: r218572
Kai Tietz committed -
re PR c++/64100 (A static assert using the the current class in a noexcept test leads to a segfault) PR c++/64100 * typeck.c (lookup_destructor): Handle incomplete type. From-SVN: r218571
Kai Tietz committed -
Remove entry from ChangeLog. Insert entry into appropriate location of gcc/ChangeLog. From-SVN: r218570
Matthew Fortune committed -
re PR tree-optimization/64191 (indirect clobbers messes up dead code 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
Richard Biener committed -
re PR target/63594 (ICE: in ix86_vector_duplicate_value, at 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
Jakub Jelinek committed -
* config/i386/sse.md (*mov<mode>_internal, *avx512f_gatherdi<mode>_2): Use <MODE_SIZE> instead of GET_MODE_SIZE (<MODE>mode). From-SVN: r218564
Jakub Jelinek committed -
gcc/ PR target/53513 * doc/extend.texi (__builtin_sh_set_fpscr): Fix typo. From-SVN: r218563
Oleg Endo committed -
re PR tree-optimization/61686 (Incorrect check in comparison function 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
Marek Polacek committed -
* doc/libgcc.texi: Update text to match implementation in libgcc/libgcc2.c From-SVN: r218559
Kito Cheng committed -
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
Trevor Saunders committed -
PR c++/64129 * decl.c (grokdeclarator): Recover from variable template specialization declared as function. From-SVN: r218557
Jason Merrill committed -
PR c++/64222 * parser.c (cp_parser_unqualified_id): Don't declare fname while parsing function parms. From-SVN: r218556
Jason Merrill committed -
* include/bits/regex.h (regex_match, regex_search): LWG DR 2329, add deleted overloads for rvalue strings. (regex_iterator, regex_token_iterator): LWG DR 2332, add deleted constructors for rvalue regexes. * testsuite/28_regex/algorithms/regex_match/dr2329_neg.cc: New. * testsuite/28_regex/algorithms/regex_search/dr2329_neg.cc: New. * testsuite/28_regex/iterators/regex_iterator/ctors/char/dr2332_neg.cc: New. * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/ dr2332_neg.cc: New. From-SVN: r218555
Jonathan Wakely committed -
Also, lower field tracking calls. From-SVN: r218554
Ian Lance Taylor committed -
* include/std/future (__future_base::_Setter::operator(), __future_base::_Task_setter::operator()): Make call operators const. From-SVN: r218553
Jonathan Wakely committed -
* include/bits/locale_facets.tcc (numpunct::_M_cache): Avoid calling virtual functions twice. Only update _M_allocated after all allocations have succeeded. * include/bits/locale_facets_nonio.tcc (moneypunct::_M_cache): Likewise. * include/bits/locale_facets_nonio.h (__timepunct::_M_cache): Remove unused declaration. From-SVN: r218552
Jonathan Wakely committed -
gcc/ PR target/53513 * doc/extend.texi (__builtin_sh_get_fpscr, __builtin_sh_get_fpscr): Document it. From-SVN: r218551
Oleg Endo committed -
From-SVN: r218550
GCC Administrator committed
-
- 09 Dec, 2014 2 commits
-
-
re PR middle-end/64225 (-funsafe-math-optimizations generates call to pow 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
Bill Schmidt committed -
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
Ilya Verbin committed
-