]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
10 years agoPR lto/63270 - new test
marxin [Mon, 22 Sep 2014 09:39:20 +0000 (09:39 +0000)] 
PR lto/63270 - new test

* g++.dg/lto/pr63270_0.C: New test.
* g++.dg/lto/pr63270_1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215451 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
rsandifo [Mon, 22 Sep 2014 07:38:46 +0000 (07:38 +0000)] 
gcc/
* config/i386/i386.c (ix86_cannot_change_mode_class): Remove
GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215450 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
rsandifo [Mon, 22 Sep 2014 07:38:12 +0000 (07:38 +0000)] 
gcc/
* hard-reg-set.h: Include hash-table.h.
(target_hard_regs): Add a finalize method and a x_simplifiable_subregs
field.
* target-globals.c (target_globals::~target_globals): Call
hard_regs->finalize.
* rtl.h (subreg_shape): New structure.
(shape_of_subreg): New function.
(simplifiable_subregs): Declare.
* reginfo.c (simplifiable_subreg): New structure.
(simplifiable_subregs_hasher): Likewise.
(simplifiable_subregs): New function.
(invalid_mode_changes): Delete.
(alid_mode_changes, valid_mode_changes_obstack): New variables.
(record_subregs_of_mode): Remove subregs_of_mode parameter.
Record valid mode changes in valid_mode_changes.
(find_subregs_of_mode): Remove subregs_of_mode parameter.
Update calls to record_subregs_of_mode.
(init_subregs_of_mode): Remove invalid_mode_changes and bitmap
handling.  Initialize new variables.  Update call to
find_subregs_of_mode.
(invalid_mode_change_p): Check new variables instead of
invalid_mode_changes.
(finish_subregs_of_mode): Finalize new variables instead of
invalid_mode_changes.
(target_hard_regs::finalize): New function.
* ira-costs.c (print_allocno_costs): Call invalid_mode_change_p
even when CLASS_CANNOT_CHANGE_MODE is undefined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215449 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
rsandifo [Mon, 22 Sep 2014 07:36:59 +0000 (07:36 +0000)] 
gcc/
* combine.c (subst): Use simplify_subreg_regno rather than
REG_CANNOT_CHANGE_MODE_P to detect invalid mode changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215448 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
rsandifo [Mon, 22 Sep 2014 07:36:51 +0000 (07:36 +0000)] 
gcc/
* rtl.h (subreg_info): Expand commentary
* rtlanal.c (subreg_get_info): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215447 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
rsandifo [Mon, 22 Sep 2014 07:36:42 +0000 (07:36 +0000)] 
gcc/
* hard-reg-set.h (COPY_HARD_REG_SET, COMPL_HARD_REG_SET)
(AND_HARD_REG_SET, AND_COMPL_HARD_REG_SET, IOR_HARD_REG_SET)
(IOR_COMPL_HARD_REG_SET): Allow the "from" set to be constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215446 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust comment.
ebotcazou [Mon, 22 Sep 2014 07:02:24 +0000 (07:02 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust comment.
* gcc-interface/utils.c (gnat_write_global_declarations): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215445 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-22 Zhenqiang Chen <zhenqiang.chen@arm.com>
zqchen [Mon, 22 Sep 2014 02:54:45 +0000 (02:54 +0000)] 
2014-09-22  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* config/arm/arm.c: #include "tm-constrs.h"
(thumb1_size_rtx_costs): Adjust rtx costs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215444 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * crtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS
hp [Mon, 22 Sep 2014 00:49:01 +0000 (00:49 +0000)] 
* crtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS
override USE_PT_GNU_EH_FRAME.
[__LIBGCC_EH_FRAME_SECTION_NAME__ && !USE_PT_GNU_EH_FRAME]: Sanity-
check USE_EH_FRAME_REGISTRY_ALWAYS against
__LIBGCC_EH_FRAME_SECTION_NAME__, emit error if unsane.
* Makefile.in (FORCE_EXPLICIT_EH_REGISTRY): New
variable for substituted force_explicit_eh_registry.
(CRTSTUFF_CFLAGS): Add FORCE_EXPLICIT_EH_REGISTRY.
* configure.ac (explicit-exception-frame-registration):
New AC_ARG_ENABLE.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215443 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Mon, 22 Sep 2014 00:17:07 +0000 (00:17 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215442 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * configure.ac (target_header_dir): Move block defining
hp [Sun, 21 Sep 2014 23:38:05 +0000 (23:38 +0000)] 
* configure.ac (target_header_dir): Move block defining
this to before the block setting inhibit_libc.
(inhibit_libc): When considering $with_headers, just
check it it's explicitly "no".  If not, also check if
$target_header_dir/stdio.h is present.  If not, set
inhibit_libc=true.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215439 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/rs6000/t-spe (MULTILIB_EXCEPTIONS): Allow isel without SPE.
dje [Sun, 21 Sep 2014 22:29:00 +0000 (22:29 +0000)] 
    * config/rs6000/t-spe (MULTILIB_EXCEPTIONS): Allow isel without SPE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215438 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 18:04:53 +0000 (18:04 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (div<mode>3): Fix comment.  Use a different
insn for divides by integer powers of two.
(div<mode>3_sra, *div<mode>3_sra_dot, *div<mode>3_sra_dot2): New.
(mod<mode>3): Fix formatting.
(three anonymous define_insn and two define_split): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215437 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 18:03:52 +0000 (18:03 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (ashr<mode>3, *ashr<mode>3, *ashrsi3_64,
*ashr<mode>3_dot, *ashr<mode>3_dot2): Clobber CA_REGNO.
(floatdisf2_internal2): Ditto.
(ashrdi3_no_power): Ditto.  Fix formatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215436 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 18:02:54 +0000 (18:02 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (ctz<mode>2, ffs<mode>2, popcount<mode>2,
popcntb<mode>2, popcntd<mode>2, parity<mode>2, parity<mode>2_cmpb):
Tidy.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215435 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 18:01:59 +0000 (18:01 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (strlensi): Don't use subsi3 with a
constant, use addsi3 directly.
(three anonymous define_insn, two define_split): Delete.
(sub<mode>3): Move.  Do not allow constant second operand.
Generate different insn for constant first operand.
(*subf<mode>3, *subf<mode>3_dot, *subf<mode>3_dot2): New.
(subf<mode>3_imm): New.
(ctz<mode>2, ffs<mode>2): Clobber CA_REGNO where required.
(*plus_ltu<mode>): Only handle registers.
(*plus_ltu<mode>_1): New.  Handle integer third operand.
(*plus_gtu<mode>): Only handle registers.
(*plus_gtu<mode>_1): New.  Handle integer third operand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215434 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 18:01:01 +0000 (18:01 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (iorxor): New code_iterator.
(iorxor): New code_attr.
(IORXOR): New code_attr.
(*and<mode>3, *and<mode>3_dot, *and<mode>3_dot2): Delete.
(ior<mode>3, xor<mode>3): Delete.
(<iorxor><mode>3): New.
(splitter for "big" integer ior, xor): New.
(*bool<mode>3): Move.  Also handle AND.
(*bool<mode>3_dot, *bool<mode>3_dot2): Also handle AND.
(splitter for "big" integer ior, xor): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215433 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 17:59:40 +0000 (17:59 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (*neg<mode>2_internal): Delete.
(two anonymous define_insn and two define_split): Delete.
(*neg<mode>2, *neg<mode>2_dot, *neg<mode>2_dot2): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215432 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 17:58:41 +0000 (17:58 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (*one_cmpl<mode>2): Generate "not" insn.
(two anonymous define_insn and two define_split): Delete.
(*one_cmpl<mode>2_dot, *one_cmpl<mode>2_dot2): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215431 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 17:57:28 +0000 (17:57 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.c (rs6000_rtx_costs) <NE>: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215430 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
segher [Sun, 21 Sep 2014 17:56:25 +0000 (17:56 +0000)] 
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/predicates.md (ca_operand): Allow subregs.
(input_operand): Do not allow ca_operand.
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): For the
carry bit, allow SImode and Pmode.
(rs6000_init_hard_regno_mode_ok): Make the carry bit class NO_REGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215429 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/i386/i386.c (ix86_expand_call): Generate MS->SYSV extra
uros [Sun, 21 Sep 2014 15:13:14 +0000 (15:13 +0000)] 
* config/i386/i386.c (ix86_expand_call): Generate MS->SYSV extra
clobbered registers using clobber_reg.  Remove UNSPEC decoration.
* config/i386/i386.md (unspec) <UNSPEC_MS_TO_SYSV_CALL>: Remove.
(*call_rex64_ms_sysv): Remove.
(*call_value_rex64_ms_sysv): Ditto.
* config/i386/predicates.md (call_rex64_ms_sysv_operation): Remove.

testsuite/ChangeLog:

* gcc.target/i386/avx-vzeroupper-16.c (dg-final): Remove check
for call_value_rex64_ms_sysv.
* gcc.target/i386/avx-vzeroupper-17.c (dg-final): Ditto.
* gcc.target/i386/avx-vzeroupper-18.c (dg-final): Remove check
for call_rex64_ms_sysv.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215428 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/62017
jason [Sun, 21 Sep 2014 02:42:40 +0000 (02:42 +0000)] 
PR c++/62017
* decl.c (begin_destructor_body): Only clobber the as-base part of
*this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215427 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sun, 21 Sep 2014 00:16:33 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215426 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoruntime: Restore copyright notice accidentally removed from mgc0.c.
ian [Sat, 20 Sep 2014 20:42:59 +0000 (20:42 +0000)] 
runtime: Restore copyright notice accidentally removed from mgc0.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215423 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/epiphany/epiphany.md (sub_f_add_imm): Change constraint of
amylaar [Sat, 20 Sep 2014 19:37:10 +0000 (19:37 +0000)] 
    * config/epiphany/epiphany.md (sub_f_add_imm): Change constraint of
        operand 3 to "CnL".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215422 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-20 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
burnus [Sat, 20 Sep 2014 14:14:08 +0000 (14:14 +0000)] 
2014-09-20  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
            Tobias Burnus  <burnus@net-b.de>

gcc/fortran
        * trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with
        generating temporary for value argument.

gcc/testsuite/
        * gfortran.dg/coarray_atomic_5.f90: New

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215421 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-20 Joost VandeVondele <vondele@gcc.gnu.org>
vondele [Sat, 20 Sep 2014 11:48:00 +0000 (11:48 +0000)] 
2014-09-20  Joost VandeVondele  <vondele@gcc.gnu.org>

* trans-expr.c (gfc_reset_vptr): Fix comment whitespace.
(gfc_conv_class_to_class): Likewise.
(gfc_conv_procedure_call): Likewise.
(arrayfunc_assign_needs_temporary): Likewise.
(realloc_lhs_loop_for_fcn_call): Likewise.
(gfc_trans_assignment_1): Likewise.
* trans-array.c (gfc_conv_array_ref): Likewise.
(gfc_array_allocate): Likewise.
(gfc_alloc_allocatable_for_assignment): Likewise.
* symbol.c (generate_isocbinding_symbol): Likewise.
* class.c (finalization_scalarizer): Likewise.
(finalizer_insert_packed_call): Likewise.
(generate_finalization_wrapper): Likewise.
(find_intrinsic_vtab): Likewise.
* decl.c (gfc_match_import): Likewise.
(match_procedure_decl): Likewise.
(gfc_match_subroutine): Likewise.
(gfc_match_bind_c): Likewise.
(gfc_match_volatile): Likewise.
* trans-common.c (create_common): Likewise.
* error.c (gfc_diagnostic_starter): Likewise.
* trans-stmt.c (gfc_trans_sync): Likewise.
(gfc_trans_critical): Likewise.
(gfc_trans_simple_do): Likewise.
(gfc_trans_do): Likewise.
(gfc_trans_where_assign): Likewise.
* expr.c (gfc_is_simply_contiguous): Likewise.
* module.c (unquote_string): Likewise.
* trans.c (gfc_add_finalizer_call): Likewise.
* trans-types.c (gfc_init_kinds): Likewise.
* scanner.c (preprocessor_line): Likewise.
* gfortranspec.c (lang_specific_driver): Likewise.
* frontend-passes.c (create_var): Likewise.
(cfe_expr_0): Likewise.
* resolve.c (check_host_association): Likewise.
(gfc_resolve_code): Likewise.
(resolve_fl_derived0): Likewise.
(resolve_symbol): Likewise.
* f95-lang.c (poplevel): Likewise.
* trans-decl.c (create_main_function): Likewise.
* trans-io.c (transfer_expr): Likewise.
* arith.c (gfc_arith_divide): Likewise.
* parse.c (resolve_all_program_units): Likewise.
* check.c (gfc_check_rank): Likewise.
(gfc_check_sizeof): Likewise.
(is_c_interoperable): Likewise.
* dependency.c (gfc_dep_difference): Likewise.
* primary.c (gfc_match_rvalue): Likewise.
* trans-intrinsic.c (conv_intrinsic_system_clock): Likewise.
(conv_isocbinding_subroutine): Likewise.
* options.c (gfc_post_options): Likewise.
(gfc_handle_fpe_option): Likewise.
(gfc_get_option_string): Likewise.
* simplify.c (simplify_transformation_to_scalar): Likewise.
(gfc_simplify_spread): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215420 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago* config/ia64/ia64.md: Remove constraints from define_split
schwab [Sat, 20 Sep 2014 06:52:45 +0000 (06:52 +0000)] 
* config/ia64/ia64.md: Remove constraints from define_split
patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215419 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors.
hubicka [Sat, 20 Sep 2014 06:22:58 +0000 (06:22 +0000)] 
* ipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors.
(possible_polymorphic_call_targets, dump_possible_polymorphic_call_targets,
possible_polymorphic_call_target_p, possible_polymorphic_call_target_p): Simplify.
(get_dynamic_type): Remove.
* ipa-devirt.c (ipa_dummy_polymorphic_call_context): Remove.
(clear_speculation): Bring to ipa-deivrt.h
(get_class_context): Rename to ...
(ipa_polymorphic_call_context::restrict_to_inner_class): ... this one.
(contains_type_p): Update.
(get_dynamic_type): Rename to ...
ipa_polymorphic_call_context::get_dynamic_type(): ... this one.
(possible_polymorphic_call_targets): UPdate.
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Update.
* ipa-prop.c (ipa_analyze_call_uses): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215418 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ipa-visibility.c (varpool_node::externally_visible_p): Do not
hubicka [Sat, 20 Sep 2014 03:11:04 +0000 (03:11 +0000)] 
* ipa-visibility.c (varpool_node::externally_visible_p): Do not
privatize dynamic TLS variables.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215417 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * diagnostic.c (warning_n): New function.
hubicka [Sat, 20 Sep 2014 03:06:26 +0000 (03:06 +0000)] 
* diagnostic.c (warning_n): New function.
* diagnostic-core.h (warning_n): Declare.
* ipa-devirt.c (ipa_devirt): Handle singulars correctly;
output dynamic counts when available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215416 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR tree-optimization/63255
hubicka [Sat, 20 Sep 2014 02:58:42 +0000 (02:58 +0000)] 
PR tree-optimization/63255
* ipa.c (symbol_table::remove_unreachable_nodes): Fix ordering
issue in setting body_removed flag.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215415 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/61392
jason [Sat, 20 Sep 2014 00:55:14 +0000 (00:55 +0000)] 
PR c++/61392
* mangle.c (write_expression): Use unresolved-name mangling for
DR850 case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215414 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/61465
jason [Sat, 20 Sep 2014 00:54:55 +0000 (00:54 +0000)] 
PR c++/61465
* call.c (convert_like_real) [ck_identity]: Call mark_rvalue_use
after pulling out an element from a CONSTRUCTOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215413 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sat, 20 Sep 2014 00:16:42 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215412 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/61825
hubicka [Fri, 19 Sep 2014 23:56:52 +0000 (23:56 +0000)] 
PR c++/61825
* c-family/c-common.c (handle_alias_ifunc_attribute): Check
that visibility change is possible
(handle_weakref_attribute): Likewise.
* cgraph.h (symtab_node): Add method get_create and
field refuse_visibility_changes.
(symtab_node::get_create): New method.
* fold-const.c (tree_single_nonzero_warnv_p): Use get_create.
* varasm.c (mark_weak): Verify that visibility change is
possible.

* gcc.dg/tree-ssa/nonzero-1.c: Require error to be output.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215409 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Fri, 19 Sep 2014 19:36:57 +0000 (19:36 +0000)] 
2014-09-19  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/predicates.md (fusion_gpr_mem_load): Move testing
for base_reg_operand to be common between LO_SUM and PLUS.
(fusion_gpr_mem_combo): New predicate to match a fused address
that combines the addis and memory offset address.

* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Change
calling signature.
(emit_fusion_gpr_load): Likewise.

* config/rs6000/rs6000.c (fusion_gpr_load_p): Change calling
signature to pass each argument separately, rather than
using an operands array.  Rewrite the insns found by peephole2 to
be a single insn, rather than hoping the insns will still be
together when the peephole pass is done.  Drop being called via a
normal peephole.
(emit_fusion_gpr_load): Change calling signature to be called from
the fusion_gpr_load_<mode> insns with a combined memory address
instead of the peephole pass passing the addis and offset
separately.

* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): New unspec for GPR
fusion.
(power8 fusion peephole): Drop support for doing power8 via a
normal peephole that was created by the peephole2 pass.
(power8 fusion peephole2): Create a new insn with the fused
address, so that the fused operation is kept together after
register allocation is done.
(fusion_gpr_load_<mode>): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215404 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/63286
hubicka [Fri, 19 Sep 2014 18:54:23 +0000 (18:54 +0000)] 
PR lto/63286
* tree.c (need_assembler_name_p): Do not mangle variadic types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215403 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agocompiler: Pass constant arguments directly to thunk functions.
ian [Fri, 19 Sep 2014 18:53:50 +0000 (18:53 +0000)] 
compiler: Pass constant arguments directly to thunk functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215402 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix mcount test cases to only run on supported targets
ak [Fri, 19 Sep 2014 17:09:10 +0000 (17:09 +0000)] 
Fix mcount test cases to only run on supported targets

       * gcc.dg/pg-override.c: Only run on x86 Linux.
       * gcc.dg/pg.c: Dito.
       * gcc.target/i386/fentry-override.c: Exclude for PIC.
       * gcc.target/i386/fentry.c: Dito.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215401 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Segher Boessenkool <segher@kernel.crashing.org>
segher [Fri, 19 Sep 2014 16:57:04 +0000 (16:57 +0000)] 
2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

* dg-extract-results.py (Prog.result_re): Include options in test name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215400 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Segher Boessenkool <segher@kernel.crashing.org>
segher [Fri, 19 Sep 2014 16:42:26 +0000 (16:42 +0000)] 
2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

* recog.c (scratch_operand): Do not simply allow all hard registers:
only allow those that are allocatable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215399 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * cfgrtl.c ira.c ira-color.c ira-conflicts ira-lives.c: Update
law [Fri, 19 Sep 2014 16:28:42 +0000 (16:28 +0000)] 
    * cfgrtl.c ira.c ira-color.c ira-conflicts ira-lives.c: Update
        comments and fix spacing to conform to coding style.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215398 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRe: [Patch] Teach genrecog/genoutput that scratch registers require write constraint...
jgreenhalgh [Fri, 19 Sep 2014 16:23:44 +0000 (16:23 +0000)] 
Re: [Patch] Teach genrecog/genoutput that scratch registers require write constraint modifiers

gcc/

* genrecog.c (validate_pattern): Allow empty constraints in
a match_scratch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215397 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * dwarf2out.c (decl_ultimate_origin): Update comment.
aldyh [Fri, 19 Sep 2014 16:02:21 +0000 (16:02 +0000)] 
* dwarf2out.c (decl_ultimate_origin): Update comment.
* tree.c (block_ultimate_origin): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215396 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
uweigand [Fri, 19 Sep 2014 15:49:21 +0000 (15:49 +0000)] 
* config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
Update GCC version name to GCC 5.
(rs6000_function_arg_boundary): Likewise.
(rs6000_function_arg): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215395 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * simple-object-elf.c (simple_object_elf_write_ehdr): Correctly
ian [Fri, 19 Sep 2014 15:24:56 +0000 (15:24 +0000)] 
* simple-object-elf.c (simple_object_elf_write_ehdr): Correctly
handle objects with more than SHN_LORESERVE sections.
(simple_object_elf_write_shdr): Add sh_link parameter.
(simple_object_elf_write_to_file): Correctly handle objects with
more than SHN_LORESERVE sections.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215394 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago[Patch sh] Fixup use of constraints in define_split
jgreenhalgh [Fri, 19 Sep 2014 14:51:57 +0000 (14:51 +0000)] 
[Patch sh] Fixup use of constraints in define_split

* config/sh/sh.md: Fix use of constraints in define_split.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215393 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoPR ipa/61998 Fix crash -Wsuggest-final-types crash
trippels [Fri, 19 Sep 2014 14:44:09 +0000 (14:44 +0000)] 
PR ipa/61998 Fix crash -Wsuggest-final-types crash

-Wsuggest-final-types crashes when used on mininal testcases.
Fix by bailing out early when odr_types_ptr is NULL in ipa_devirt()

2014-09-19  Markus Trippelsdorf  <markus@trippelsdorf.de>

        PR ipa/61998
        * ipa-devirt.c (ipa_devirt): Bail out if odr_types_ptr is NULL.

2014-09-19  Markus Trippelsdorf  <markus@trippelsdorf.de>

        PR ipa/61998
        * g++.dg/warn/Wsuggest-final-2.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215392 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago[Patch] Teach genrecog/genoutput that scratch registers require write constraint...
jgreenhalgh [Fri, 19 Sep 2014 10:37:40 +0000 (10:37 +0000)] 
[Patch] Teach genrecog/genoutput that scratch registers require write  constraint modifiers

gcc/

* doc/md.texi (Modifiers): Consistently use "read/write"
nomenclature rather than "input/output".
* genrecog.c (constraints_supported_in_insn_p): New.
(validate_pattern): If needed, also check constraints on
MATCH_SCRATCH operands.
* genoutput.c (validate_insn_alternatives): Catch earlyclobber
operands with no '=' or '+' modifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215388 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Joost VandeVondele <vondele@gcc.gnu.org>
vondele [Fri, 19 Sep 2014 10:28:00 +0000 (10:28 +0000)] 
2014-09-19  Joost VandeVondele  <vondele@gcc.gnu.org>

PR fortran/63152
* trans-array.c (gfc_trans_deferred_array): Only nullify allocatables.

2014-09-19  Joost VandeVondele  <vondele@gcc.gnu.org>

PR fortran/63152
* gfortran.dg/auto_char_dummy_array_1.f90: Fix undefined behavior.
* gfortran.dg/pr63152.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215387 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 19 Sep 2014 09:34:14 +0000 (09:34 +0000)] 
2014-09-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58328
* g++.dg/cpp0x/nsdmi10.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215386 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago[PATCH AArch64]: Add constraint letter for stack_protect_test pattern
jgreenhalgh [Fri, 19 Sep 2014 09:31:01 +0000 (09:31 +0000)] 
[PATCH AArch64]: Add constraint letter for stack_protect_test  pattern

gcc/

* config/aarch64/aarch64.md (stack_protect_test_<mode>): Mark
scratch register as an output to placate register renaming.

gcc/testsuite/

* gcc.dg/ssp-3.c: New.
* gcc.dg/ssp-4.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215385 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 19 Sep 2014 09:23:08 +0000 (09:23 +0000)] 
2014-09-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_emit_epilogue): Remove bogus
assignment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215384 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 19 Sep 2014 09:17:00 +0000 (09:17 +0000)] 
2014-09-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.md ("trunctdsd2", "extendsdtd2"): New
expanders.

2014-09-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/dfp-conv1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215382 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 19 Sep 2014 09:14:59 +0000 (09:14 +0000)] 
2014-09-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR target/62662
* config/s390/s390.c (s390_emit_epilogue): When doing the return
address load optimization force s390_optimize_prologue to leave it
that way.  Only do the optimization if we already decided to push
r14 into a stack slot.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215381 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/ChangeLog:
mzakirov [Fri, 19 Sep 2014 08:29:04 +0000 (08:29 +0000)] 
gcc/ChangeLog:

2014-09-19  Marat Zakirov  <m.zakirov@samsung.com>

* asan.c (build_check_stmt): Alignment arg was added.
(asan_expand_check_ifn): Optimization for alignment >= 8.

gcc/testsuite/ChangeLog:

2014-09-19  Marat Zakirov  <m.zakirov@samsung.com>

* c-c++-common/asan/red-align-1.c: New test.
* c-c++-common/asan/red-align-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215380 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Olivier Hainque <hainque@adacore.com>
hainque [Fri, 19 Sep 2014 08:19:04 +0000 (08:19 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215378 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Olivier Hainque <hainque@adacore.com>
hainque [Fri, 19 Sep 2014 08:11:55 +0000 (08:11 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215377 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-19 Olivier Hainque <hainque@adacore.com>
hainque [Fri, 19 Sep 2014 08:02:44 +0000 (08:02 +0000)] 
2014-09-19  Olivier Hainque  <hainque@adacore.com>

        * varasm.c (default_section_type_flags): Flag .persistent.bss
        sections as SECTION_BSS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215376 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/rl78/rl78.c (rl78_expand_epilogue): Generate a USE of the
nickc [Fri, 19 Sep 2014 07:45:22 +0000 (07:45 +0000)] 
* config/rl78/rl78.c (rl78_expand_epilogue): Generate a USE of the
pop'ed registers so that DCE does not eliminate them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215375 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/63298
hubicka [Fri, 19 Sep 2014 02:04:20 +0000 (02:04 +0000)] 
PR lto/63298
* ipa-devirt.c (odr_subtypes_equivalent_p): Fix thinko in a condition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215374 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Fri, 19 Sep 2014 00:16:48 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215373 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoUpdate gcc.dg/pr61053.c for x32
hjl [Thu, 18 Sep 2014 23:45:21 +0000 (23:45 +0000)] 
Update gcc.dg/pr61053.c for x32

* gcc.dg/pr61053.c: Updated for x32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215369 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove LIBGCC2_TF_CEXT target macro.
jsm28 [Thu, 18 Sep 2014 23:27:26 +0000 (23:27 +0000)] 
Remove LIBGCC2_TF_CEXT target macro.

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__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215368 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoAdd header guard to several header files.
jsm28 [Thu, 18 Sep 2014 22:34:23 +0000 (22:34 +0000)] 
Add header guard to several header files.

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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215365 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 18 Sep 2014 19:14:19 +0000 (19:14 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215364 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Joel Sherrill <joel.sherrill@oarcorp.com>
joel [Thu, 18 Sep 2014 18:44:52 +0000 (18:44 +0000)] 
2014-09-18  Joel Sherrill <joel.sherrill@oarcorp.com>

* config-list.mk (LIST): Add v850-rtems.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215362 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/63248
jakub [Thu, 18 Sep 2014 16:43:28 +0000 (16:43 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215359 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 18 Sep 2014 15:57:06 +0000 (15:57 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215358 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
joel [Thu, 18 Sep 2014 15:26:32 +0000 (15:26 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215357 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/62017
jakub [Thu, 18 Sep 2014 14:08:28 +0000 (14:08 +0000)] 
PR c++/62017
* asan.c (transform_statements): Don't instrument clobber statements.

* g++.dg/asan/pr62017.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215354 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR testsuite/63292
jakub [Thu, 18 Sep 2014 13:50:10 +0000 (13:50 +0000)] 
PR testsuite/63292
* gcc.dg/vect/pr59594.c (b): Increase size to N + 2 elements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215352 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago/cp
paolo [Thu, 18 Sep 2014 13:48:33 +0000 (13:48 +0000)] 
/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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215351 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
jason [Thu, 18 Sep 2014 12:34:43 +0000 (12:34 +0000)] 
* libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
dynamic_cast more gracefully.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215350 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix i386 FP_TRAPPING_EXCEPTIONS.
jsm28 [Thu, 18 Sep 2014 12:00:21 +0000 (12:00 +0000)] 
Fix i386 FP_TRAPPING_EXCEPTIONS.

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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215347 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago[ARM] Fix insn type of movmisalign neon load pattern.
ktkachov [Thu, 18 Sep 2014 10:06:05 +0000 (10:06 +0000)] 
[ARM] Fix insn type of movmisalign neon load pattern.

* config/arm/neon.md (*movmisalign<mode>_neon_load): Change type
to neon_load1_1reg<q>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215346 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 18 Sep 2014 09:15:25 +0000 (09:15 +0000)] 
2014-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61745
* g++.dg/template/pr61745.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215345 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Thu, 18 Sep 2014 00:16:38 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215344 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix indentation
jb [Wed, 17 Sep 2014 21:59:09 +0000 (21:59 +0000)] 
Fix indentation

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215340 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c/61854
mpolacek [Wed, 17 Sep 2014 21:49:46 +0000 (21:49 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215339 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoPR libfortran/62768 Use gfc_unit.filename also when HAVE_TTYNAME{_R} is not defined.
jb [Wed, 17 Sep 2014 21:44:15 +0000 (21:44 +0000)] 
PR libfortran/62768 Use gfc_unit.filename also when HAVE_TTYNAME{_R} is not 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215338 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * Makefile.in (LIBGCOV_INTERFACE): Add _gcov_dump from ...
nathan [Wed, 17 Sep 2014 20:13:17 +0000 (20:13 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215337 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR debug/63284
jakub [Wed, 17 Sep 2014 19:05:49 +0000 (19:05 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215331 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ada/acats/run_all.sh: Redirect mkdir stderr to /dev/null.
jakub [Wed, 17 Sep 2014 18:23:30 +0000 (18:23 +0000)] 
* ada/acats/run_all.sh: Redirect mkdir stderr to /dev/null.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215330 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago Minor cleanup, don't run tests for which compilation is enough.
jason [Wed, 17 Sep 2014 17:34:01 +0000 (17:34 +0000)] 
Minor cleanup, don't run tests for which compilation is enough.
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215329 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ipa-devirt.c (type_pair, default_hashset_traits): New types.
hubicka [Wed, 17 Sep 2014 16:15:29 +0000 (16:15 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215328 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-17 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 17 Sep 2014 14:30:18 +0000 (14:30 +0000)] 
2014-09-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/63241
* g++.dg/cpp0x/constexpr-63241.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215326 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-17 Sebastian Huber <sebastian.huber@embedded-brains.de>
joel [Wed, 17 Sep 2014 14:15:53 +0000 (14:15 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215324 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-17 Olivier Hainque <hainque@adacore.com>
hainque [Wed, 17 Sep 2014 13:04:49 +0000 (13:04 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215323 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDisallow -mfpu=neon for unsuitable architectures.
ams [Wed, 17 Sep 2014 10:59:54 +0000 (10:59 +0000)] 
Disallow -mfpu=neon for unsuitable architectures.

2014-09-17  Andrew Stubbs  <ams@codesourcery.com>

* config/arm/arm.c (arm_option_override): Reject -mfpu=neon
when architecture is older than ARMv7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215321 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Wed, 17 Sep 2014 00:16:41 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215313 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/61853
danglin [Tue, 16 Sep 2014 23:39:28 +0000 (23:39 +0000)] 
PR target/61853
* config/pa/pa.c (pa_function_value): Directly handle aggregates
that fit exactly in a word or double word.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215309 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoPR libfortran/62768 Handle filenames with embedded null characters.
jb [Tue, 16 Sep 2014 21:40:28 +0000 (21:40 +0000)] 
PR libfortran/62768 Handle filenames with embedded null characters.

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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215307 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix a typo in gcc.dg/pg-override.c
hjl [Tue, 16 Sep 2014 17:59:16 +0000 (17:59 +0000)] 
Fix a typo in gcc.dg/pg-override.c

* gcc.dg/pg-override.c: Fix a typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215304 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix a typo in gcc.dg/pg.c
hjl [Tue, 16 Sep 2014 15:35:15 +0000 (15:35 +0000)] 
Fix a typo in gcc.dg/pg.c

* gcc.dg/pg.c: Fix a typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215301 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2014-09-16 Richard Biener <rguenther@suse.de>
rguenth [Tue, 16 Sep 2014 14:10:07 +0000 (14:10 +0000)] 
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".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215299 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
tocarip [Tue, 16 Sep 2014 11:57:56 +0000 (11:57 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215297 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoAVX-512. Extend extract insn patterns.
kyukhin [Tue, 16 Sep 2014 11:00:24 +0000 (11:00 +0000)] 
AVX-512. Extend extract insn patterns.

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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215296 138bc75d-0d04-0410-961f-82ee72b054a4