- 19 Sep, 2014 2 commits
-
-
PR lto/63298 * ipa-devirt.c (odr_subtypes_equivalent_p): Fix thinko in a condition. From-SVN: r215374
Jan Hubicka committed -
From-SVN: r215373
GCC Administrator committed
-
- 18 Sep, 2014 16 commits
-
-
* gcc.dg/pr61053.c: Updated for x32. From-SVN: r215369
H.J. Lu committed -
This patch removes the (undocumented) LIBGCC2_TF_CEXT target macro, replacing it by -fbuilding-libgcc predefines (and thereby gets rid of another LIBGCC2_LONG_DOUBLE_TYPE_SIZE conditional, though some more patches are needed before that target macro can be eliminated). This macro indicated the suffix used on __builtin_huge_val, __builtin_copysign, __builtin_fabs built-in function names to produce the names for a given floating-point mode. Predefines are added for all floating-point modes supported for libgcc, not just TFmode. These are fully accurate for modes corresponding to float, double and long double. For other modes, the suffix for *constants* is determined by the targetm.c.mode_for_suffix hook (the limit to two possible suffixes 'w' and 'q' being hardcoded in various places). This is in fact the suffix for built-in functions as well where such functions exist. * For i386, the *q functions always exist (whether or not TFmode is used for long double). The *w functions never exist (but this doesn't matter for libgcc, since no i386 configuration treats XFmode as a supported scalar mode if long double is TFmode; if __float80 were to be supported for 64-bit Android, properly such functions ought to be added). * For ia64, the *q functions exist for non-HP-UX (under HP-UX, long double is TFmode, so they aren't needed). The *w functions never exist. This is an issue for this libgcc code for the XFmode complex functions in libgcc on HP-UX; as I understand it, right now those will accidentally be using TFmode versions of those three functions, so involving unnecessary conversions, while the sanity check on CEXT accidentally passes because all it tests is the sizes of the types. Because of the lack of 'w' functions, the patch uses 'l' when the constant suffix is 'w', matching what the existing libgcc code would do for IA64 HP-UX in that case. Ideally there would be generic code to create such built-in functions for all supported floating-point types. That may be something to consider if support for TS 18661-3 (standard bindings for IEEE 754-2008, defining names such as _Float128, and function names such as copysignf128) is added in future. Bootstrapped with no regressions on x86_64-unknown-linux-gnu. gcc: * system.h (LIBGCC2_TF_CEXT): Poison. * config/i386/cygming.h (LIBGCC2_TF_CEXT): Remove. * config/i386/darwin.h (LIBGCC2_TF_CEXT): Likewise. * config/i386/dragonfly.h (LIBGCC2_TF_CEXT): Likewise. * config/i386/freebsd.h (LIBGCC2_TF_CEXT): Likewise. * config/i386/gnu-user-common.h (LIBGCC2_TF_CEXT): Likewise. * config/i386/openbsdelf.h (LIBGCC2_TF_CEXT): Likewise. * config/i386/sol2.h (LIBGCC2_TF_CEXT): Likewise. * config/ia64/ia64.h (LIBGCC2_TF_CEXT): Likewise. * config/ia64/linux.h (LIBGCC2_TF_CEXT): Likewise. gcc/c-family: * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__ for supported floating-point modes. libgcc: * libgcc2.c (CEXT): Define using __LIBGCC_*_FUNC_EXT__. From-SVN: r215368
Joseph Myers committed -
2014-09-19 Kito Cheng <kito@0xlab.org> * except.h: Fix header guard. * addresses.h: Add missing header guard. * cfghooks.h: Likewise. * collect-utils.h: Likewise. * collect2-aix.h: Likewise. * conditions.h: Likewise. * cselib.h: Likewise. * dwarf2asm.h: Likewise. * graphds.h: Likewise. * graphite-scop-detection.h: Likewise. * gsyms.h: Likewise. * hw-doloop.h: Likewise. * incpath.h: Likewise. * ipa-inline.h: Likewise. * ipa-ref.h: Likewise. * ira-int.h: Likewise. * ira.h: Likewise. * lra-int.h: Likewise. * lra.h: Likewise. * lto-section-names.h: Likewise. * read-md.h: Likewise. * reload.h: Likewise. * rtl-error.h: Likewise. * sdbout.h: Likewise. * targhooks.h: Likewise. * tree-affine.h: Likewise. * xcoff.h: Likewise. * xcoffout.h: Likewise. From-SVN: r215365
Kito Cheng committed -
2014-09-18 Vladimir Makarov <vmakarov@redhat.com> PR debug/63285 * haifa-sched.c (schedule_block): Advance cycle at the end of BB if advance != 0. 2014-09-18 Vladimir Makarov <vmakarov@redhat.com> PR debug/63285 * gcc.target/i386/pr63285.c: New test. From-SVN: r215364
Vladimir Makarov committed -
2014-09-18 Joel Sherrill <joel.sherrill@oarcorp.com> * config-list.mk (LIST): Add v850-rtems. From-SVN: r215362
Joel Sherrill committed -
PR c++/63248 * semantics.c (finish_omp_clauses): Don't call cp_omp_mappable_type on type of type dependent expressions, and don't call it if handle_omp_array_sections has kept TREE_LIST because something was type dependent. * pt.c (tsubst_expr) <case OMP_TARGET, case OMP_TARGET_DATA>: Use keep_next_level, begin_omp_structured_block and finish_omp_structured_block instead of push_stmt_list and pop_stmt_list. libgomp/ * testsuite/libgomp.c++/pr63248.C: New test. From-SVN: r215359
Jakub Jelinek committed -
2014-09-18 Vladimir Makarov <vmakarov@redhat.com> PR target/61360 * lra.c (lra): Call recog_init. 2014-09-18 Vladimir Makarov <vmakarov@redhat.com> PR target/61360 * gcc.target/i386/pr61360.c: New. From-SVN: r215358
Vladimir Makarov committed -
2014-09-18 Sebastian Huber <sebastian.huber@embedded-brains.de> * config-list.mk (LIST): Add arm-rtems. Add nios2-rtems. Remove extra option from powerpc-rtems. From-SVN: r215357
Sebastian Huber committed -
re PR c++/62017 (AddressSanitizer reports *-buffer-overflow in destructor when multiple virtual inheritance is used) PR c++/62017 * asan.c (transform_statements): Don't instrument clobber statements. * g++.dg/asan/pr62017.C: New test. From-SVN: r215354
Jakub Jelinek committed -
PR testsuite/63292 * gcc.dg/vect/pr59594.c (b): Increase size to N + 2 elements. From-SVN: r215352
Jakub Jelinek committed -
/cp 2014-09-18 Paolo Carlini <paolo.carlini@oracle.com> PR c++/62232 * class.c (finish_struct_1): Do not -Wnon-virtual-dtor warn for final class types. /testsuite 2014-09-18 Paolo Carlini <paolo.carlini@oracle.com> PR c++/62232 * g++.dg/cpp0x/Wdtor1.C: New. From-SVN: r215351
Paolo Carlini committed -
* libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction dynamic_cast more gracefully. From-SVN: r215350
Jason Merrill committed -
The i386 sfp-machine.h defines FP_TRAPPING_EXCEPTIONS in a way that is always wrong: it treats a set bit as indicating the exception is trapping, when actually a set bit (both for 387 and SSE floating point) indicates it is masked, and a clear bit indicates it is trapping. This patch fixes this bug. Bootstrapped with no regressions on x86_64-unknown-linux-gnu. libgcc: * config/i386/sfp-machine.h (FP_TRAPPING_EXCEPTIONS): Treat clear bits not set bits as indicating trapping exceptions. gcc/testsuite: * gcc.dg/torture/float128-exact-underflow.c: New test. From-SVN: r215347
Joseph Myers committed -
* config/arm/neon.md (*movmisalign<mode>_neon_load): Change type to neon_load1_1reg<q>. From-SVN: r215346
Kyrylo Tkachov committed -
re PR c++/61745 (template friend for dyadic operator- is only accepted if the monadic operator- follows it) 2014-09-18 Paolo Carlini <paolo.carlini@oracle.com> PR c++/61745 * g++.dg/template/pr61745.C: New. From-SVN: r215345
Paolo Carlini committed -
From-SVN: r215344
GCC Administrator committed
-
- 17 Sep, 2014 13 commits
-
-
From-SVN: r215340
Janne Blomqvist committed -
PR c/61854 libcpp/ * init.c (struct lang_flags): Remove cplusplus_comments. (cpp_set_lang): Likewise. (post_options): Likewise. * lex.c (_cpp_lex_direct): Disallow C++ style comments in C90/C94. testsuite/ * gcc.dg/cpp/pr61854-1.c: New test. * gcc.dg/cpp/pr61854-2.c: New test. * gcc.dg/cpp/pr61854-3.c: New test. * gcc.dg/cpp/pr61854-3.h: New test. * gcc.dg/cpp/pr61854-4.c: New test. * gcc.dg/cpp/pr61854-5.c: New test. * gcc.dg/cpp/pr61854-6.c: New test. * gcc.dg/cpp/pr61854-7.c: New test. * gcc.dg/cpp/pr61854-c90.c: New test. * gcc.dg/cpp/pr61854-c94.c: New test. From-SVN: r215339
Marek Polacek committed -
2014-09-18 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/62768 * io/inquire.c (inquire_via_unit): Use gfc_unit.filename also when HAVE_TTYNAME{_R} is not defined. From-SVN: r215338
Janne Blomqvist committed -
* Makefile.in (LIBGCOV_INTERFACE): Add _gcov_dump from ... (LIBGCOV_DRIVER): ... here. * libgcov-driver.c (gcov_master): New. (gcov_exit): Remove from master chain. (__gcov_init): Add to master chain if version compatible. Don't clear the version. * libgcov_interface (__gcov_flust): Call gcov_dump_int. (gcov_reset_int): Clear master chain, if compatible. (gcov_dump_int): New internal interface. Dump master chain, if compatible. (gcov_dump): Alias for gcov_dump_int. * libgcov.h (struct gcov_root): Add next and prev fields. (struct gcov_master): New struct. (__gcov_master): New. (gcov_dump_int): Declare. From-SVN: r215337
Nathan Sidwell committed -
PR debug/63284 * tree-cfgcleanup.c (fixup_noreturn_call): Don't split block if there are only debug stmts after the noreturn call, instead remove the debug stmts. * gcc.dg/pr63284.c: New test. From-SVN: r215331
Jakub Jelinek committed -
From-SVN: r215330
Jakub Jelinek committed -
* g++.dg/g++.dg/cpp1y/var-templ1.C: Change return to static_assert, compile instead of running. * g++.dg/g++.dg/cpp1y/var-templ3.C: Likewise. * g++.dg/g++.dg/cpp1y/var-templ4.C: Likewise. * g++.dg/g++.dg/cpp1y/var-templ5.C: Likewise. From-SVN: r215329
Jason Merrill committed -
* ipa-devirt.c (type_pair, default_hashset_traits): New types. (odr_types_equivalent_p): Use pair hash. (odr_subtypes_equivalent_p): Likewise, do structural compare on ODR types that may be mismatched. (warn_odr): Support warning when only one field is given. (odr_types_equivalent_p): Strenghten comparsions made; support VOIDtype. (add_type_duplicate): Update VISITED hash set. From-SVN: r215328
Jan Hubicka committed -
re PR c++/63241 (Internal error in gimplify_init_constructor when using constexr and multidimensional arrays) 2014-09-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/63241 * g++.dg/cpp0x/constexpr-63241.C: New. From-SVN: r215326
Paolo Carlini committed -
2014-09-17 Sebastian Huber <sebastian.huber@embedded-brains.de> * config.gcc (*-*-rtems*): Default to 'rtems' thread model. Enable selection of 'posix' or no thread model. From-SVN: r215324
Sebastian Huber committed -
config.host (x86_64-*-mingw*): Add i386/t-cygming to tmake_file and crtbegin.o + crtend.o to extra_parts. 2014-09-17 Olivier Hainque <hainque@adacore.com> * config.host (x86_64-*-mingw*): Add i386/t-cygming to tmake_file and crtbegin.o + crtend.o to extra_parts. From-SVN: r215323
Olivier Hainque committed -
2014-09-17 Andrew Stubbs <ams@codesourcery.com> * config/arm/arm.c (arm_option_override): Reject -mfpu=neon when architecture is older than ARMv7. From-SVN: r215321
Andrew Stubbs committed -
From-SVN: r215313
GCC Administrator committed
-
- 16 Sep, 2014 9 commits
-
-
PR target/61853 * config/pa/pa.c (pa_function_value): Directly handle aggregates that fit exactly in a word or double word. From-SVN: r215309
John David Anglin committed -
testsuite ChangeLog: 2014-09-17 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/62768 * gfortran.dg/filename_null.f90: New test. libgfortran ChangeLog: 2014-09-17 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/62768 * io/io.h (gfc_unit): Store C string for the filename. * io/close.c (st_close): Use gfc_unit.filename. * io/inquire.c (inquire_via_unit): Likewise. * io/open.c (new_unit): Likewise. (already_open): Likewise, unlink file before freeing filename. * io/unit.c (init_units): Likewise. (close_unit_1): Likewise. (filename_from_unit): Likewise. * io/unix.c (compare_file_filename): Likewise. (find_file0): Likewise. (delete_file): Likewise. From-SVN: r215307
Janne Blomqvist committed -
* gcc.dg/pg-override.c: Fix a typo. From-SVN: r215304
H.J. Lu committed -
* gcc.dg/pg.c: Fix a typo. From-SVN: r215301
H.J. Lu committed -
re PR testsuite/63258 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c scan-tree-dump-times vect "vectorization not profitable" 1) 2014-09-16 Richard Biener <rguenther@suse.de> PR testsuite/63258 * gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c: Remove scan for "vectorization not profitable". From-SVN: r215299
Richard Biener committed -
gcc/ 2014-09-16 Ilya Tocar <ilya.tocar@intel.com> * config/i386/driver-i386.c (host_detect_local_cpu): Detect lack of zmm/k regs support. testsuite/ 2014-09-16 Ilya Tocar <ilya.tocar@intel.com> * gcc.target/i386/avx512f-os-support.h: Remove magic number. From-SVN: r215297
Ilya Tocar committed -
gcc/ * config/i386/i386.c (ix86_expand_vector_extract): Handle V32HI and V64QI modes. * config/i386/sse.md (define_mode_iterator VI48F_256): New. (define_mode_attr extract_type): Ditto. (define_mode_attr extract_suf): Ditto. (define_mode_iterator AVX512_VEC): Ditto. (define_expand "<extract_type>_vextract<shuffletype><extract_suf>_mask"): Use AVX512_VEC. (define_insn "avx512dq_vextract<shuffletype>64x2_1_maskm"): New. (define_insn "<mask_codefor>avx512dq_vextract<shuffletype>64x2_1<mask_name>"): Ditto. (define_mode_attr extract_type_2): Ditto. (define_mode_attr extract_suf_2): Ditto. (define_mode_iterator AVX512_VEC_2): Ditto. (define_expand "<extract_type_2>_vextract<shuffletype><extract_suf_2>_mask"): Use AVX512_VEC_2 mode iterator. (define_insn "vec_extract_hi_<mode>_maskm"): Ditto. (define_expand "avx512vl_vextractf128<mode>"): Ditto. (define_insn_and_split "vec_extract_lo_<mode>"): Delete. (define_insn "vec_extract_lo_<mode><mask_name>"): New. (define_split for V16FI mode): Ditto. (define_insn_and_split "vec_extract_lo_<mode>"): Delete. (define_insn "vec_extract_lo_<mode><mask_name>"): New. (define_split for VI8F_256 mode): Ditto. (define_insn "vec_extract_hi_<mode><mask_name>"): Add masking. (define_insn_and_split "vec_extract_lo_<mode>"): Delete. (define_insn "vec_extract_lo_<mode><mask_name>"): New. (define_split for VI4F_256 mode): Ditto. (define_insn "vec_extract_lo_<mode>_maskm"): Ditto. (define_insn "vec_extract_hi_<mode>_maskm"): Ditto. (define_insn "vec_extract_hi_<mode><mask_name>"): Add masking. (define_mode_iterator VEC_EXTRACT_MODE): Add V64QI and V32HI modes. (define_insn "vcvtph2ps<mask_name>"): Fix pattern condition. (define_insn "avx512f_vextract<shuffletype>32x4_1_maskm"): Ditto. (define_insn "<mask_codefor>avx512f_vextract<shuffletype>32x4_1<mask_name>"): Update `type' attribute, remove explicit `memory' attribute calculation. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> From-SVN: r215296
Alexander Ivchenko committed -
PR fortran/56408 * gfortran.dg/dg.exp (dg-compile-aux-modules): Workaround missing nexted dg-test call support in dejaGNU 1.4.4. From-SVN: r215293
Jakub Jelinek committed -
gcc/ * ira.c (ira): Don't initialize ira_spilled_reg_stack_slots and ira_spilled_reg_stack_slots_num if using lra. (do_reload): Remove release ira_spilled_reg_stack_slots part. * ira-color.c (ira_sort_regnos_for_alter_reg): Add assertion to make sure not using lra. (ira_reuse_stack_slot): Likewise. (ira_mark_new_stack_slot): Likewise. From-SVN: r215286
Kito Cheng committed
-