Andre Vieira [Fri, 23 Sep 2016 13:26:44 +0000 (23 13:26 +0000)]
backport: [multiple changes]
2016-09-23 Andre Vieira <andre.simoesdiasvieira@arm.com>
Backport from mainline
gcc/ChangeLog.arm:
2016-09-23 Uros Bizjak <ubizjak@gmail.com>
Jakub Jelinek <jakub@redhat.com>
* hooks.h (hook_uint_uintp_false): Rename to...
(hook_bool_uint_uintp_false): ... this.
* hooks.c (hook_uint_uintp_false): Rename to...
(hook_bool_uint_uintp_false): ... this.
* target.def (elf_flags_numeric): Use hook_bool_uint_uintp_false
instead of hook_uint_uintp_false.
2016-09-23 Richard Biener <rguenther@suse.de>
* hooks.h (hook_uint_uintp_false): Declare.
2016-09-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
Terry Guo <terry.guo@arm.com>
* target.def (elf_flags_numeric): New target hook.
* targhooks.h (default_asm_elf_flags_numeric): New.
* hooks.c (hook_uint_uintp_false): New.
* varasm.c (default_asm_elf_flags_numeric): New.
(default_elf_asm_named_section): Use new target hook.
* config/arm/arm.opt (mpure-code): New.
* config/arm/arm.h (SECTION_ARM_PURECODE): New.
* config/arm/arm.c (arm_asm_init_sections): Add section
attribute to default text section if -mpure-code.
(arm_option_option_override): Diagnose use of option with
non supported targets and/or options.
(arm_asm_elf_flags_numeric): New.
(arm_function_section): New.
(arm_elf_section_type_flags): New.
* config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Disable
for -mpure-code.
* gcc/doc/texi (TARGET_ASM_ELF_FLAGS_NUMERIC): New.
* gcc/doc/texi.in (TARGET_ASM_ELF_FLAGS_NUMERIC): Likewise.
gcc/testsuite/ChangeLog.arm:
2016-09-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
Terry Guo <terry.guo@arm.com>
* gcc.target/arm/pure-code/ffunction-sections.c: New.
* gcc.target/arm/pure-code/no-literal-pool.c: New.
* gcc.target/arm/pure-code/pure-code.exp: New.
From-SVN: r240432
Thomas Preud'homme [Thu, 22 Sep 2016 15:28:50 +0000 (22 15:28 +0000)]
arm.h (TARGET_HAVE_LDREX): Define for ARMv8-M Baseline.
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/arm.h (TARGET_HAVE_LDREX): Define for ARMv8-M Baseline.
(TARGET_HAVE_LDREXBH): Likewise.
(TARGET_HAVE_LDACQ): Likewise.
gcc/testsuite/
* gcc.target/arm/atomic-comp-swap-release-acquire-3.c: New test.
* gcc.target/arm/atomic-op-acq_rel-3.c: Likewise.
* gcc.target/arm/atomic-op-acquire-3.c: Likewise.
* gcc.target/arm/atomic-op-char-3.c: Likewise.
* gcc.target/arm/atomic-op-consume-3.c: Likewise.
* gcc.target/arm/atomic-op-int-3.c: Likewise.
* gcc.target/arm/atomic-op-relaxed-3.c: Likewise.
* gcc.target/arm/atomic-op-release-3.c: Likewise.
* gcc.target/arm/atomic-op-seq_cst-3.c: Likewise.
* gcc.target/arm/atomic-op-short-3.c: Likewise.
From-SVN: r240374
Thomas Preud'homme [Thu, 22 Sep 2016 15:25:55 +0000 (22 15:25 +0000)]
target-supports.exp (add_options_for_arm_arch_v6m): Add -mfloat-abi=soft option.
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* lib/target-supports.exp (add_options_for_arm_arch_v6m): Add
-mfloat-abi=soft option.
(add_options_for_arm_arch_v8m_base): Likewise.
From-SVN: r240372
Thomas Preud'homme [Thu, 22 Sep 2016 15:23:54 +0000 (22 15:23 +0000)]
arm.c (arm_split_atomic_op): Add function comment.
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/arm.c (arm_split_atomic_op): Add function comment. Add
logic to to decide whether to copy over old value to register for new
value.
* config/arm/sync.md: Add comments explaning why mode and code
attribute are not defined in iterators.md
(thumb1_atomic_op_str): New code attribute.
(thumb1_atomic_newop_str): Likewise.
(thumb1_atomic_fetch_op_str): Likewise.
(thumb1_atomic_fetch_newop_str): Likewise.
(thumb1_atomic_fetch_oldop_str): Likewise.
(atomic_exchange<mode>): Add new ARMv8-M Baseline only alternatives to
mirror the more restrictive constraints of the Thumb-1 insns after
split compared to Thumb-2 counterpart insns.
(atomic_<sync_optab><mode>): Likewise. Add comment to keep constraints
in sync with non atomic version.
(atomic_nand<mode>): Likewise.
(atomic_fetch_<sync_optab><mode>): Likewise.
(atomic_fetch_nand<mode>): Likewise.
(atomic_<sync_optab>_fetch<mode>): Likewise.
(atomic_nand_fetch<mode>): Likewise.
* config/arm/thumb1.md (thumb1_addsi3): Add comment to keep contraint
in sync with atomic version.
(thumb1_subsi3_insn): Likewise.
(thumb1_andsi3_insn): Likewise.
(thumb1_iorsi3_insn): Likewise.
(thumb1_xorsi3_insn): Likewise.
From-SVN: r240371
Thomas Preud'homme [Thu, 22 Sep 2016 15:21:32 +0000 (22 15:21 +0000)]
sync.md (atomic_compare_and_swap<mode>_1): Add new ARMv8-M Baseline only alternatives to (i) hold store atomic success...
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/sync.md (atomic_compare_and_swap<mode>_1): Add new ARMv8-M
Baseline only alternatives to (i) hold store atomic success value in a
return register rather than a scratch register, (ii) use a low register
for it and to (iii) ensure the cbranchsi insn generated by the split
respect the constraints of Thumb-1 cbranchsi4_insn and
cbranchsi4_scratch.
* config/arm/thumb1.md (cbranchsi4_insn): Add comment to indicate
constraints must match those in atomic_compare_and_swap.
(cbranchsi4_scratch): Likewise.
From-SVN: r240370
Thomas Preud'homme [Thu, 22 Sep 2016 15:19:25 +0000 (22 15:19 +0000)]
arm.c (arm_expand_compare_and_swap): Add new bdst local variable.
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/arm.c (arm_expand_compare_and_swap): Add new bdst local
variable. Add the new parameter to the insn generator. Set that
parameter to be CC flag for 32-bit targets, bval otherwise. Set the
return value from the negation of that parameter for Thumb-1, keeping
the logic unchanged otherwise except for using bdst as the destination
register of the compare_and_swap insn.
(arm_split_compare_and_swap): Add explanation about how is the value
returned to the function comment. Rename scratch variable to
neg_bval. Adapt initialization of variables holding operands to the
new operand numbers. Use return register to hold result of store
exclusive for Thumb-1, scratch register otherwise. Construct the
appropriate cbranch for Thumb-1 targets, keeping the logic unchanged
for 32-bit targets. Guard Z flag setting to restrict to 32bit targets.
Use gen_cbranchsi4 rather than hand-written conditional branch to loop
for strongly ordered compare_and_swap.
* config/arm/predicates.md (cc_register_operand): New predicate.
* config/arm/sync.md (atomic_compare_and_swap<mode>_1): Use a
match_operand with the new predicate to accept either the CC flag or a
destination register for the boolean return value, restricting it to
CC flag only via constraint. Adapt operand numbers accordingly.
From-SVN: r240368
Thomas Preud'homme [Thu, 22 Sep 2016 15:17:58 +0000 (22 15:17 +0000)]
constraints.md (Q constraint): Document its use for Thumb-1.
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/constraints.md (Q constraint): Document its use for
Thumb-1.
(Pf constraint): New constraint for relaxed, consume or relaxed memory
models.
* config/arm/sync.md (atomic_load<mode>): Add new ARMv8-M Baseline only
alternatives to allow any register when memory model matches Pf and
thus lda is used, but only low registers otherwise. Use unpredicated
output template for Thumb-1 targets.
(atomic_store<mode>): Likewise for stl.
(arm_load_exclusive<mode>): Add new ARMv8-M Baseline only alternative
whose output template does not have predication.
(arm_load_acquire_exclusive<mode>): Likewise.
(arm_load_exclusivesi): Likewise.
(arm_load_acquire_exclusivesi): Likewise.
(arm_store_release_exclusive<mode>): Likewise.
(arm_store_exclusive<mode>): Use unpredicated output template for
Thumb-1 targets.
From-SVN: r240367
Thomas Preud'homme [Thu, 22 Sep 2016 15:14:34 +0000 (22 15:14 +0000)]
tree.h (memmodel_from_int, [...]): Move to ...
2016-09-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* tree.h (memmodel_from_int, memmodel_base, is_mm_relaxed,
is_mm_consume, is_mm_acquire, is_mm_release, is_mm_acq_rel,
is_mm_seq_cst, is_mm_sync): Move to ...
* memmodel.h: This. New file.
* builtins.c: Include memmodel.h.
* optabs.c: Likewise.
* tsan.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arm/arm.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/sparc/sparc.c: Likewise.
* genconditions.c: Include memmodel.h in generated file.
* genemit.c: Likewise.
* genoutput.c: Likewise.
* genpeep.c: Likewise.
* genpreds.c: Likewise.
* genrecog.c: Likewise.
gcc/c-family/
* c-common.c: Include memmodel.h.
From-SVN: r240366
Thomas Preud'homme [Wed, 21 Sep 2016 08:44:18 +0000 (21 08:44 +0000)]
revert: [multiple changes]
2016-09-19 Thomas Preud'homme <thomas.preudhomme@arm.com>
Revert changes made in lra-constraints.c by:
2016-09-19 Thomas Preud'homme <thomas.preudhomme@arm.com>
Backport from mainline
2015-11-29 Jan Hubicka <hubicka@ucw.cz>
From-SVN: r240305
Thomas Preud'homme [Mon, 19 Sep 2016 17:20:36 +0000 (19 17:20 +0000)]
Merge from gcc-5-branch.
From-SVN: r240244
Thomas Preud'homme [Mon, 19 Sep 2016 17:06:18 +0000 (19 17:06 +0000)]
backport: cgraph.c (cgraph_node::make_local): No name is unique during incremental linking.
2016-09-19 Thomas Preud'homme <thomas.preudhomme@arm.com>
Backport from mainline
2015-11-29 Jan Hubicka <hubicka@ucw.cz>
* cgraph.c (cgraph_node::make_local): No name is unique during
incremental linking.
* cgraph.h (can_be_discarded_p): Update comment; also common and
WEAK in named sections can be discarded; when doing incremental
link do not rely on resolution being the final one.
* varasm.c (default_binds_local_p_3, decl_binds_to_current_def_p):
When symbol can be discarded, do not rely on resolution info.
* symtab.c (symtab_node::nonzero_address): Take into account that
symbol can be discarded.
* ipa-visibility.c (update_visibility_by_resolution_info): Handle
definition correctly.
(function_and_variable_visibility): Do not set unique_name when
incrementally linking.
From-SVN: r240240
GCC Administrator [Mon, 19 Sep 2016 00:16:06 +0000 (19 00:16 +0000)]
Daily bump.
From-SVN: r240222
GCC Administrator [Sun, 18 Sep 2016 00:16:05 +0000 (18 00:16 +0000)]
Daily bump.
From-SVN: r240216
GCC Administrator [Sat, 17 Sep 2016 00:16:04 +0000 (17 00:16 +0000)]
Daily bump.
From-SVN: r240211
Jonathan Wakely [Fri, 16 Sep 2016 21:38:50 +0000 (16 22:38 +0100)]
Fix documentation for overflow-checking builtins
* doc/extend.texi (Integer Overflow Builtins): Fix type of out
parameters for functions taking long long arguments.
From-SVN: r240202
GCC Administrator [Fri, 16 Sep 2016 00:16:05 +0000 (16 00:16 +0000)]
Daily bump.
From-SVN: r240170
GCC Administrator [Thu, 15 Sep 2016 00:16:05 +0000 (15 00:16 +0000)]
Daily bump.
From-SVN: r240149
GCC Administrator [Wed, 14 Sep 2016 00:16:06 +0000 (14 00:16 +0000)]
Daily bump.
From-SVN: r240125
GCC Administrator [Tue, 13 Sep 2016 00:16:05 +0000 (13 00:16 +0000)]
Daily bump.
From-SVN: r240104
GCC Administrator [Mon, 12 Sep 2016 00:16:05 +0000 (12 00:16 +0000)]
Daily bump.
From-SVN: r240086
GCC Administrator [Sun, 11 Sep 2016 00:16:05 +0000 (11 00:16 +0000)]
Daily bump.
From-SVN: r240077
GCC Administrator [Sat, 10 Sep 2016 00:16:05 +0000 (10 00:16 +0000)]
Daily bump.
From-SVN: r240060
GCC Administrator [Fri, 9 Sep 2016 00:16:05 +0000 (9 00:16 +0000)]
Daily bump.
From-SVN: r240040
GCC Administrator [Thu, 8 Sep 2016 00:16:04 +0000 (8 00:16 +0000)]
Daily bump.
From-SVN: r240034
GCC Administrator [Wed, 7 Sep 2016 00:16:05 +0000 (7 00:16 +0000)]
Daily bump.
From-SVN: r240020
Dominique d'Humieres [Tue, 6 Sep 2016 22:26:11 +0000 (7 00:26 +0200)]
re PR debug/57519 (DW_TAG_imported_declaration put in wrong class (base class instead of derived class))
2016-09-07 Dominique d'Humieres <dominiq@lps.ens.fr>
PR debug/57519
* g++.dg/debug/dwarf2/imported-decl-2.C: Likewise.
From-SVN: r240017
Uros Bizjak [Tue, 6 Sep 2016 15:25:09 +0000 (6 17:25 +0200)]
c_by_val_1.f: Correct the call to c_to_c and c_to_c8.
* gfortran.dg/c_by_val_1.f: Correct the call to c_to_c and c_to_c8.
From-SVN: r240011
GCC Administrator [Tue, 6 Sep 2016 00:16:08 +0000 (6 00:16 +0000)]
Daily bump.
From-SVN: r240002
GCC Administrator [Mon, 5 Sep 2016 00:16:05 +0000 (5 00:16 +0000)]
Daily bump.
From-SVN: r239983
GCC Administrator [Sun, 4 Sep 2016 00:16:05 +0000 (4 00:16 +0000)]
Daily bump.
From-SVN: r239972
GCC Administrator [Sat, 3 Sep 2016 00:16:05 +0000 (3 00:16 +0000)]
Daily bump.
From-SVN: r239967
GCC Administrator [Fri, 2 Sep 2016 00:16:05 +0000 (2 00:16 +0000)]
Daily bump.
From-SVN: r239950
GCC Administrator [Thu, 1 Sep 2016 00:16:07 +0000 (1 00:16 +0000)]
Daily bump.
From-SVN: r239909
Jakub Sejdak [Wed, 31 Aug 2016 09:39:22 +0000 (31 09:39 +0000)]
* config.host: Add support for arm*-*-phoenix* targets.
From-SVN: r239887
Jakub Sejdak [Wed, 31 Aug 2016 09:38:42 +0000 (31 09:38 +0000)]
config.gcc: Add support for arm*-*-phoenix* targets.
* config.gcc: Add support for arm*-*-phoenix* targets.
* config/arm/t-phoenix: New.
* config/phoenix.h: New.
From-SVN: r239886
Jakub Sejdak [Wed, 31 Aug 2016 09:37:05 +0000 (31 09:37 +0000)]
* config.sub: Add support for Phoenix-RTOS targets.
From-SVN: r239885
GCC Administrator [Wed, 31 Aug 2016 00:16:05 +0000 (31 00:16 +0000)]
Daily bump.
From-SVN: r239876
GCC Administrator [Tue, 30 Aug 2016 00:16:07 +0000 (30 00:16 +0000)]
Daily bump.
From-SVN: r239848
Uros Bizjak [Mon, 29 Aug 2016 20:26:13 +0000 (29 22:26 +0200)]
re PR target/77403 (assemble failure of vinserti64x4 with -masm=intel)
PR target/77403
* config/i386/sse.md (vec_set_lo_<mode><mask_name>): Fix assembler
template for intel asm dialect.
(vec_set_hi_<mode><mask_name>): Ditto.
testsuite/ChangeLog:
PR target/77403
* gcc.target/i386/pr77403.c: New test.
From-SVN: r239842
Eric Botcazou [Mon, 29 Aug 2016 14:44:41 +0000 (29 14:44 +0000)]
* Makefile.in (gcov-iov.h): Add dummy recipe.
From-SVN: r239825
Tom de Vries [Mon, 29 Aug 2016 07:57:16 +0000 (29 07:57 +0000)]
backport: re PR sanitizer/64078 (FAIL: c-c++-common/ubsan/object-size-9.c)
2016-08-29 Tom de Vries <tom@codesourcery.com>
backport from trunk:
2015-09-17 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR sanitizer/64078
* c-c++-common/ubsan/object-size-9.c (s): Add alignment attribute.
(f2, f3): Make the function static.
* c-c++-common/ubsan/object-size-10.c (a, b): Add alignment attribute.
From-SVN: r239816
Tom de Vries [Mon, 29 Aug 2016 07:20:03 +0000 (29 07:20 +0000)]
backport: re PR testsuite/65940 (g++.dg/other/anon5.C requires dwarf4 support in ld)
2016-08-29 Tom de Vries <tom@codesourcery.com>
backport from trunk:
PR testsuite/65940
2016-02-01 Uros Bizjak <ubizjak@gmail.com>
* g++.dg/other/anon5.C (dg-opetions): Use -gdwarf-2 instead of -g.
From-SVN: r239815
GCC Administrator [Mon, 29 Aug 2016 00:16:05 +0000 (29 00:16 +0000)]
Daily bump.
From-SVN: r239812
Tom de Vries [Sun, 28 Aug 2016 22:02:07 +0000 (28 22:02 +0000)]
re PR testsuite/77034 (g++.dg/init/elide5.C fails on powerpc64-unknown-linux-gnu with -m32)
2016-08-28 Tom de Vries <tom@codesourcery.com>
PR testsuite/77034
Backported from mainline
2016-07-25 Jason Merrill <jason@redhat.com>
* g++.dg/init/elide5.C (operator new): Use decltype(sizeof(1)) instead
of unsigned long.
From-SVN: r239811
GCC Administrator [Sun, 28 Aug 2016 00:16:05 +0000 (28 00:16 +0000)]
Daily bump.
From-SVN: r239802
GCC Administrator [Sat, 27 Aug 2016 00:16:05 +0000 (27 00:16 +0000)]
Daily bump.
From-SVN: r239791
Kyrylo Tkachov [Fri, 26 Aug 2016 09:37:20 +0000 (26 09:37 +0000)]
[AArch64][GCC 5] Backport Work around for PR target/64971
Backport from mainline
2016-04-20 Andrew Pinski <apinski@cavium.com>
Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/64971
* config/aarch64/aarch64.md (sibcall): Force call
address to be DImode for ILP32.
(sibcall_value): Likewise.
* gcc.c-torture/compile/pr37433-1.c: New testcase.
From-SVN: r239770
GCC Administrator [Fri, 26 Aug 2016 00:16:05 +0000 (26 00:16 +0000)]
Daily bump.
From-SVN: r239764
Bill Schmidt [Thu, 25 Aug 2016 16:12:23 +0000 (25 16:12 +0000)]
backport: re PR target/72863 (Powerpc64le: redundant swaps when using vec_vsx_ld/st)
[gcc]
2016-08-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Backport from mainline (minus test for POWER9 support)
2016-08-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/72863
* vsx.md (vsx_load_<mode>): For P8LE, emit swaps at expand time.
(vsx_store_<mode>): Likewise.
[gcc/testsuite]
2016-08-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Backport from mainline
2016-08-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/72863
* gcc.target/powerpc/pr72863.c: New test.
From-SVN: r239762
Kyrylo Tkachov [Thu, 25 Aug 2016 09:26:15 +0000 (25 09:26 +0000)]
[expr.c] PR middle-end/71700: zero-extend sub-word value when widening constructor element
Backport from mainline
2016-07-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR middle-end/71700
* expr.c (store_constructor): Mask sign-extended bits when widening
sub-word constructor element at the start of a word.
* gcc.c-torture/execute/pr71700.c: New test.
From-SVN: r239754
GCC Administrator [Thu, 25 Aug 2016 00:16:08 +0000 (25 00:16 +0000)]
Daily bump.
From-SVN: r239749
GCC Administrator [Wed, 24 Aug 2016 00:16:05 +0000 (24 00:16 +0000)]
Daily bump.
From-SVN: r239724
Jonathan Wakely [Tue, 23 Aug 2016 14:23:40 +0000 (23 15:23 +0100)]
* testsuite/23_containers/map/77334.cc: Use dg-options for C++11.
From-SVN: r239703
Jonathan Wakely [Tue, 23 Aug 2016 14:20:50 +0000 (23 15:20 +0100)]
libstdc++/77334 move assign RB trees of non-copyable types
PR libstdc++/77334
* include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
(_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
Include _Compare in noexcept.
* testsuite/23_containers/map/77334.cc: New test.
From-SVN: r239701
Jonathan Wakely [Tue, 23 Aug 2016 12:23:16 +0000 (23 13:23 +0100)]
Update links to libstdc++ Doxygen pages
* doc/xml/api.xml: Replace hardcoded links for specific versions with
link to docs for all releases.
* doc/html/*: Regenerate.
From-SVN: r239697
Jonathan Wakely [Tue, 23 Aug 2016 12:23:11 +0000 (23 13:23 +0100)]
libstdc++/71771 constrain reverse_iterator difference op
* include/bits/stl_iterator.h
(operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Constrain
for C++11 and later.
* testsuite/24_iterators/reverse_iterator/71771.cc: New test.
From-SVN: r239696
GCC Administrator [Tue, 23 Aug 2016 00:16:05 +0000 (23 00:16 +0000)]
Daily bump.
From-SVN: r239678
Uros Bizjak [Mon, 22 Aug 2016 18:57:37 +0000 (22 20:57 +0200)]
backport: re PR target/76342 (AVX512: _mm512_undefined_epi32() intrinsic missing (incorrectly named _mm512_undefined_si512))
Backport from mainline
2016-08-14 Uros Bizjak <ubizjak@gmail.com>
PR target/76342
* config/i386/avx512fintrin.h (_mm512_undefined_epi32):
Renamed from _mm512_undefined_si512.
(_mm_undefined_si512): New definition.
Backport from mainline:
2016-08-09 David Wohlferd <dw@LimeGreenSocks.com>
* config/i3836/avx512fintrin.h (_mm512_cvtsepi64_epi32): Remove
unused variable __O.
Backport from mainline:
2016-08-09 Uros Bizjak <ubizjak@gmail.com>
PR target/72843
* config/i386/i386.md (*movtf_internal): Use
lra_in_progress || reload_completed instead of !can_create_pseudo_p
in the insn constraint.
(*movxf_internal): Ditto.
(*movdf_internal): Ditto.
(*movsf_internal): Ditto.
testsuite/ChangeLog:
Backport from mainline
2016-08-14 Uros Bizjak <ubizjak@gmail.com>
PR target/76342
* gcc.target/i386/pr76342.c: New test.
From-SVN: r239669
GCC Administrator [Mon, 22 Aug 2016 00:16:05 +0000 (22 00:16 +0000)]
Daily bump.
From-SVN: r239644
GCC Administrator [Sun, 21 Aug 2016 00:16:05 +0000 (21 00:16 +0000)]
Daily bump.
From-SVN: r239640
GCC Administrator [Sat, 20 Aug 2016 00:16:04 +0000 (20 00:16 +0000)]
Daily bump.
From-SVN: r239634
GCC Administrator [Fri, 19 Aug 2016 00:16:05 +0000 (19 00:16 +0000)]
Daily bump.
From-SVN: r239601
Oleg Endo [Thu, 18 Aug 2016 12:14:33 +0000 (18 12:14 +0000)]
backport: re PR target/71338 ([RL78] mulu instruction not used on G10)
gcc/
Backport from mainline
2016-06-17 DJ Delorie <dj@redhat.com>
PR target/71338
* config/rl78/rl78-expand.c (umulqihi3): Enable for G10.
* config/rl78/rl78-virtual.c (umulhi3_shift_virt): Likewise.
(umulqihi3_virt): Likewise.
* config/rl78/rl78-real.c (umulhi3_shift_real): Likewise.
(umulqihi3_real): Likewise.
From-SVN: r239568
GCC Administrator [Thu, 18 Aug 2016 00:16:05 +0000 (18 00:16 +0000)]
Daily bump.
From-SVN: r239551
GCC Administrator [Wed, 17 Aug 2016 00:16:06 +0000 (17 00:16 +0000)]
Daily bump.
From-SVN: r239516
Eric Botcazou [Tue, 16 Aug 2016 12:43:30 +0000 (16 12:43 +0000)]
* doc/install.texi (*-*-solaris2*): Adjust latest change.
From-SVN: r239501
GCC Administrator [Tue, 16 Aug 2016 00:16:05 +0000 (16 00:16 +0000)]
Daily bump.
From-SVN: r239490
Martin Liska [Mon, 15 Aug 2016 11:20:09 +0000 (15 13:20 +0200)]
Fix invalid memory access in gcc.c (driver/72765)
Backported from mainline
2016-08-15 Martin Liska <mliska@suse.cz>
PR driver/72765
* gcc.c (do_spec_1): Call save_string with the right size.
(save_string): Do an assert about string we copy.
From-SVN: r239477
Eric Botcazou [Mon, 15 Aug 2016 09:16:49 +0000 (15 09:16 +0000)]
install.texi (*-*-solaris2*): Fix version number and document requirement on GNU make for building libjava...
* doc/install.texi (*-*-solaris2*): Fix version number and document
requirement on GNU make for building libjava with the Solaris linker.
From-SVN: r239466
GCC Administrator [Mon, 15 Aug 2016 00:16:05 +0000 (15 00:16 +0000)]
Daily bump.
From-SVN: r239458
GCC Administrator [Sun, 14 Aug 2016 00:16:05 +0000 (14 00:16 +0000)]
Daily bump.
From-SVN: r239450
Thomas Koenig [Sat, 13 Aug 2016 15:04:04 +0000 (13 15:04 +0000)]
backport: re PR fortran/68147 (Potential incorrect code generation for string self-assignment)
2016-08-13 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
PR fortran/68147
* frontend-passes.c (realloc_string_callback): Don't set
walk_subtrees.
2016-08-13 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
* gfortran.dg/realloc_on_assign_26.f90: New test case.
From-SVN: r239445
GCC Administrator [Sat, 13 Aug 2016 00:16:04 +0000 (13 00:16 +0000)]
Daily bump.
From-SVN: r239439
Bernd Edlinger [Fri, 12 Aug 2016 18:56:30 +0000 (12 18:56 +0000)]
backport: re PR tree-optimization/71083 (Unaligned bit-field address when predictive commoning)
2016-08-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
Backport from mainline
2016-08-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR tree-optimization/71083
* tree-predcom.c (ref_at_iteration): Correctly align the
reference type.
testsuite:
2016-08-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
Backport from mainline
2016-08-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR tree-optimization/71083
* gcc.c-torture/execute/pr71083.c: New test.
* gnat.dg/loop_optimization23.adb: New test.
* gnat.dg/loop_optimization23_pkg.ads: New test.
* gnat.dg/loop_optimization23_pkg.adb: New test.
From-SVN: r239424
GCC Administrator [Fri, 12 Aug 2016 00:16:05 +0000 (12 00:16 +0000)]
Daily bump.
From-SVN: r239398
Jerry DeLisle [Thu, 11 Aug 2016 17:28:51 +0000 (11 17:28 +0000)]
backport: re PR libfortran/71123 (Namelist read failure on Windows)
2016-08-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Backport from trunk
PR libgfortran/71123
PR libgfortran/73142
* io/list_read (eat_spaces): Eat '\r' as part of spaces.
* gfortran.dg/namelist_90.f: New test.
From-SVN: r239382
Andre Vehreschild [Thu, 11 Aug 2016 07:57:58 +0000 (11 09:57 +0200)]
backport: re PR fortran/72698 (ICE in lhd_incomplete_type_error, at langhooks.c:205)
gcc/testsuite/ChangeLog:
2016-08-11 Andre Vehreschild <vehre@gcc.gnu.org>
Backport from trunk:
PR fortran/72698
* gfortran.dg/allocate_with_source_20.f03: New test.
gcc/fortran/ChangeLog:
2016-08-11 Andre Vehreschild <vehre@gcc.gnu.org>
Backport from trunk:
PR fortran/72698
* trans-stmt.c (gfc_trans_allocate): Prevent generating code for
copy of zero sized string and with it an ICE.
From-SVN: r239353
GCC Administrator [Thu, 11 Aug 2016 00:16:05 +0000 (11 00:16 +0000)]
Daily bump.
From-SVN: r239349
GCC Administrator [Wed, 10 Aug 2016 00:16:04 +0000 (10 00:16 +0000)]
Daily bump.
From-SVN: r239312
Thomas Koenig [Tue, 9 Aug 2016 20:33:00 +0000 (9 20:33 +0000)]
backport: re PR fortran/71795 (Two Bugs in array constructors (optimization))
2016-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
PR fortran/71795
* frontend-passes.c (combine_array_constructor): Don't
do anything if the expression is inside an array iterator.
2016-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
PR fortran/71795
* gfortran.dg/array_constructor_50.f90: New test.
From-SVN: r239302
Thomas Koenig [Tue, 9 Aug 2016 06:28:57 +0000 (9 06:28 +0000)]
backport: re PR fortran/69742 (ICE with -O3 and ASSOCIATE containing repeated expression)
2016-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
PR fortran/69742
* frontend-passes.c (cfe-expr_0): Don't register functions
from within an ASSOCIATE statement.
2016-08-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/69742
* gfortran.dg/associate_21.f90: New test.
From-SVN: r239271
GCC Administrator [Tue, 9 Aug 2016 00:16:05 +0000 (9 00:16 +0000)]
Daily bump.
From-SVN: r239262
Thomas Koenig [Mon, 8 Aug 2016 22:00:37 +0000 (8 22:00 +0000)]
backport: re PR fortran/60526 (Accepts-invalid: Variable name same as type name)
2016-08-08 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport from trunk
PR fortran/60526
* decl.c (build_sym): If the name has already been defined as a
type, it has a symtree with an upper case letter at the beginning.
If such a symtree exists, issue an error and exit. Don't do
this if there is no corresponding upper case letter.
2016-08-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/60526
* gfortran.dg/type_decl_4.f90: New test.
From-SVN: r239259
Georg-Johann Lay [Mon, 8 Aug 2016 10:13:54 +0000 (8 10:13 +0000)]
backport: re PR rtl-optimization/71976 (insn-combiner deletes a live 64-bit shift)
Backport from 2016-07-29 trunk r238863.
PR rtl-optimization/71976
* combine.c (get_last_value): Return 0 if the argument for which
the function is called has a wider mode than the recorded value.
From-SVN: r239239
Andre Vehreschild [Mon, 8 Aug 2016 08:24:22 +0000 (8 10:24 +0200)]
backport: re PR fortran/70524 (ICE when using -frepack-arrays -Warray-temporaries)
gcc/testsuite/ChangeLog:
2016-08-08 Andre Vehreschild <vehre@gcc.gnu.org>
Backport from trunk:
PR fortran/70524
* gfortran.dg/dependency_48.f90: New test.
gcc/fortran/ChangeLog:
2016-08-08 Andre Vehreschild <vehre@gcc.gnu.org>
Backport from trunk:
PR fortran/70524
* trans-array.c (gfc_trans_dummy_array_bias): Ensure that the
location information is correctly set.
* trans-decl.c (gfc_trans_deferred_vars): Set the locus of the
current construct early.
From-SVN: r239232
Thomas Koenig [Mon, 8 Aug 2016 06:29:16 +0000 (8 06:29 +0000)]
re PR fortran/70040 (ICE in gimplify.c with deferred-length strings)
2016-08-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/70040
Backport from trunk
* gfortran.dg/pr70040.f90: New testcase.
From-SVN: r239229
GCC Administrator [Mon, 8 Aug 2016 00:16:05 +0000 (8 00:16 +0000)]
Daily bump.
From-SVN: r239226
GCC Administrator [Sun, 7 Aug 2016 00:16:05 +0000 (7 00:16 +0000)]
Daily bump.
From-SVN: r239214
Jonathan Wakely [Sat, 6 Aug 2016 12:21:55 +0000 (6 13:21 +0100)]
Use correct value category in std::function constraint
* include/std/functional (function::_Callable): Use lvalue in
result_of expression.
* testsuite/20_util/function/cons/refqual.cc: New test.
From-SVN: r239208
Jonathan Wakely [Sat, 6 Aug 2016 12:21:51 +0000 (6 13:21 +0100)]
Move allocator in RB tree move constructors
Backport from mainline
2016-07-22 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/71964
* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
* testsuite/23_containers/set/allocator/71964.cc: New test.
From-SVN: r239207
Jonathan Wakely [Sat, 6 Aug 2016 12:21:46 +0000 (6 13:21 +0100)]
Fix std::wstring allocator tests
* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
Likewise.
* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
Likewise.
* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
Likewise.
* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
Likewise.
* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
Likewise.
* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
Likewise.
From-SVN: r239206
Jonathan Wakely [Sat, 6 Aug 2016 12:21:42 +0000 (6 13:21 +0100)]
Fix construction of std::function from null pointer-to-member
PR libstdc++/69293
* include/std/functional (_Function_base::_M_not_empty_function):
Change overloads for pointers to take arguments by value.
* testsuite/20_util/function/cons/57465.cc: Add tests for
pointer-to-member cases.
From-SVN: r239205
Jonathan Wakely [Sat, 6 Aug 2016 12:21:38 +0000 (6 13:21 +0100)]
Change libstdc++ manual to refer to release not trunk
* doc/xml/manual/status_cxx2011.xml: Change "mainline GCC SVN" to
refer to the release series.
* doc/xml/manual/status_cxx2014.xml: Likewise.
* doc/html/manual/status.xml: Regenerate.
From-SVN: r239204
Jonathan Wakely [Sat, 6 Aug 2016 12:21:33 +0000 (6 13:21 +0100)]
Improve comments on check_v3_target_filesystem_ts
* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
comments.
From-SVN: r239203
GCC Administrator [Sat, 6 Aug 2016 00:16:06 +0000 (6 00:16 +0000)]
Daily bump.
From-SVN: r239186
Nathan Sidwell [Fri, 5 Aug 2016 19:58:36 +0000 (5 19:58 +0000)]
re PR c++/68724 (ice in unify, at cp/pt.c:19902)
PR c++/68724
* pt.c (unify): TRAIT_EXPR is an expr.
PR c++/68724
* g++.dg/cpp0x/pr68724.C: New.
From-SVN: r239177
GCC Administrator [Fri, 5 Aug 2016 00:16:05 +0000 (5 00:16 +0000)]
Daily bump.
From-SVN: r239158
Uros Bizjak [Thu, 4 Aug 2016 21:25:33 +0000 (4 23:25 +0200)]
re PR target/72805 (AVX512: invalid code generation involving masks)
PR target/72805
* config/i386/avx512fintrin.h (_mm512_cmp_epi32_mask) [!__OPTIMIZE__]:
Cast builtin function result to __mmask16 instead of __mmask8.
(_mm512_cmp_epu32_mask) [!__OPTIMIZE__]: Ditto.
(_mm512_mask_cmp_epi32_mask) [!__OPTIMIZE__]: Ditto.
(_mm512_mask_cmp_epu32_mask) [!__OPTIMIZE__]: Ditto.
From-SVN: r239155
GCC Administrator [Thu, 4 Aug 2016 00:16:05 +0000 (4 00:16 +0000)]
Daily bump.
From-SVN: r239110
GCC Administrator [Wed, 3 Aug 2016 00:16:05 +0000 (3 00:16 +0000)]
Daily bump.
From-SVN: r239006