Age | Commit message (Collapse) | Author | Files | Lines |
|
2014-09-19 Olivier Hainque <hainque@adacore.com>
* config/i386/vxworksae.h: Remove obsolete definitions.
(STACK_CHECK_PROTECT): Define.
* config/i386/vx-common.h: Remove. Merge contents within
config/i386/vxworks.h.
* config.gcc (i?86-vxworks*): Use i386/vxworks.h instead of
i386/vx-common.h.
From-SVN: r215378
|
|
2014-09-18 Olivier Hainque <hainque@adacore.com>
gcc/
* config.gcc (powerpc-wrs-vxworksmils): New configuration.
* config/rs6000/t-vxworksmils: New file.
* config/rs6000/vxworksmils.h: New file.
libgcc/
* config.host (powerpc-wrs-vxworksmils): New configuration,
same as vxworksae.
contrib/
* config-list.mk (LIST): Add powerpc-wrs-vxworksmils.
From-SVN: r215377
|
|
SECTION_BSS.
2014-09-19 Olivier Hainque <hainque@adacore.com>
* varasm.c (default_section_type_flags): Flag .persistent.bss
sections as SECTION_BSS.
From-SVN: r215376
|
|
that DCE does not eliminate them.
* config/rl78/rl78.c (rl78_expand_epilogue): Generate a USE of the
pop'ed registers so that DCE does not eliminate them.
From-SVN: r215375
|
|
ipa-devirt.c:449 with LTO)
PR lto/63298
* ipa-devirt.c (odr_subtypes_equivalent_p): Fix thinko in a condition.
From-SVN: r215374
|
|
From-SVN: r215373
|
|
* gcc.dg/pr61053.c: Updated for x32.
From-SVN: r215369
|
|
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
|
|
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
|
|
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
|
|
2014-09-18 Joel Sherrill <joel.sherrill@oarcorp.com>
* config-list.mk (LIST): Add v850-rtems.
From-SVN: r215362
|
|
with templates)
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
|
|
-mtune=bdver4)
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
|
|
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
|
|
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
|
|
gcc.dg/vect/pr59594.c.)
PR testsuite/63292
* gcc.dg/vect/pr59594.c (b): Increase size to N + 2 elements.
From-SVN: r215352
|
|
/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
|
|
gracefully.
* libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
dynamic_cast more gracefully.
From-SVN: r215350
|
|
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
|
|
* config/arm/neon.md (*movmisalign<mode>_neon_load): Change type
to neon_load1_1reg<q>.
From-SVN: r215346
|
|
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
|
|
From-SVN: r215344
|
|
From-SVN: r215340
|
|
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
|
|
defined.
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
|
|
* 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
|
|
__builtin_unreachable ())
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
|
|
From-SVN: r215330
|
|
* 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
|
|
* 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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
From-SVN: r215313
|
|
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
|
|
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
|
|
* gcc.dg/pg-override.c: Fix a typo.
From-SVN: r215304
|
|
* gcc.dg/pg.c: Fix a typo.
From-SVN: r215301
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
Test fentry and no_instrument_function overriding.
gcc/testsuite/:
2014-09-15 Andi Kleen <ak@linux.intel.com>
* gcc.dg/pg-override.c: New test.
* gcc.dg/pg.c: New test.
* gcc.target/i386/fentry-override.c: New test.
* gcc.target/i386/fentry.c: New test.
From-SVN: r215285
|
|
When profiling is disabled force DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT
for each function to one. This information is then preserved
through LTO.
With this patch for LTO builds -pg needs to be set on both the
LTO final link and the original source build, to allow -pg
(or -pg -fentry) to be active for that source file. This allows
to build large projects mostly with -pg, except for a few files,
and still use LTO.
gcc/:
2014-09-15 Andi Kleen <ak@linux.intel.com>
* function.c (allocate_struct_function): Force
DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT to one when
profiling is disabled.
From-SVN: r215284
|
|
* pt.c (lookup_template_class_1): Splice out abi_tag attribute if
necessary. Call inherit_targ_abi_tags here.
* class.c (check_bases_and_members): Not here.
(inherit_targ_abi_tags): Check CLASS_TYPE_P.
* cp-tree.h: Declare inherit_targ_abi_tags.
From-SVN: r215283
|
|
gcc/
* cfgrtl.c, combine.c, config/arc/arc.c, config/mcore/mcore.c,
config/rs6000/rs6000.c, config/sh/sh.c, cprop.c, dwarf2out.c,
emit-rtl.c, final.c, function.c, gcse.c, jump.c, reg-stack.c,
reload1.c, reorg.c, resource.c, sel-sched-ir.c: Replace INSN_DELETED_P
macro with statically checked member functions.
* rtl.h (rtx_insn::deleted): New method.
(rtx_insn::set_deleted): Likewise.
(rtx_insn::set_undeleted): Likewise.
(INSN_DELETED_P): Remove.
From-SVN: r215282
|
|
gcc/ChangeLog:
2014-09-15 Trevor Saunders <tsaunders@mozilla.com>
* config/mn10300/mn10300.c (mn10300_insert_setlb_lcc): Assign the
result of emit_jump_insn_before to a new variable.
* jump.c (mark_jump_label): Change the type of insn to rtx_insn *.
(mark_jump_label_1): Likewise.
(mark_jump_label_asm): Likewise.
* reload1.c (gen_reload): Change type of tem to rtx_insn *.
* rtl.h (mark_jump_label): Adjust.
From-SVN: r215281
|
|
From-SVN: r215280
|