Jan Hubicka [Mon, 5 May 2014 23:27:40 +0000 (01:27 +0200)]
re PR ipa/60965 (IPA: Devirtualization versus placement new)
PR ipa/60965
* ipa-devirt.c (get_class_context): Allow POD to change to non-POD.
* g++.dg/ipa/devirt-32.C: New testcase.
From-SVN: r210086
Radovan Obradovic [Mon, 5 May 2014 22:51:36 +0000 (22:51 +0000)]
Add call_fusage_contains_non_callee_clobbers hook
2014-05-05 Radovan Obradovic <robradovic@mips.com>
Tom de Vries <tom@codesourcery.com>
* target.def (call_fusage_contains_non_callee_clobbers): New DEFHOOKPOD.
* doc/tm.texi.in (@node Stack and Calling): Add Miscellaneous Register
Hooks to @menu.
(@node Miscellaneous Register Hooks): New node.
(@hook TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): New hook.
* doc/tm.texi: Regenerate.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r210085
Ian Lance Taylor [Mon, 5 May 2014 21:48:52 +0000 (21:48 +0000)]
compiler: Use backend interface for type info expressions.
From-SVN: r210084
Marek Polacek [Mon, 5 May 2014 20:37:47 +0000 (20:37 +0000)]
re PR driver/61065 ([4.9/4.10 Regresion] invalid args to -fsanitize should be an error not a warning)
PR driver/61065
* opts.c (common_handle_option): Call error_at instead of warning_at.
From-SVN: r210080
Ian Lance Taylor [Mon, 5 May 2014 19:05:59 +0000 (19:05 +0000)]
compiler: Use backend interface for sink expressions.
From-SVN: r210078
Ian Lance Taylor [Mon, 5 May 2014 18:49:39 +0000 (18:49 +0000)]
compiler: Use backend interface for set and use temporaries.
From-SVN: r210077
Ian Lance Taylor [Mon, 5 May 2014 17:55:03 +0000 (17:55 +0000)]
compiler: Use backend interface for struct field offsets.
From-SVN: r210074
Richard Biener [Mon, 5 May 2014 17:40:08 +0000 (17:40 +0000)]
passes.c (execute_function_todo): Don't reset TODO_verify_ssa from last_verified if update_ssa ran.
2014-05-05 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Don't reset TODO_verify_ssa
from last_verified if update_ssa ran. Move TODO_verify_rtl_sharing
under the TODO_verify_il umbrella.
From-SVN: r210073
Ian Lance Taylor [Mon, 5 May 2014 17:22:40 +0000 (17:22 +0000)]
compiler: Use backend interface for bound method expressions.
From-SVN: r210072
Richard Biener [Mon, 5 May 2014 09:28:39 +0000 (09:28 +0000)]
passes.c (execute_function_todo): Move TODO_verify_flow under the TODO_verify_ul umbrella.
2014-05-05 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Move TODO_verify_flow under
the TODO_verify_ul umbrella.
From-SVN: r210068
Richard Biener [Mon, 5 May 2014 09:23:31 +0000 (09:23 +0000)]
re PR middle-end/61010 (Infinite recursion in fold)
2014-05-05 Richard Biener <rguenther@suse.de>
PR middle-end/61010
* fold-const.c (fold_binary_loc): Consistently avoid
canonicalizing X & CST away from a CST that is the mask
of a mode.
* gcc.dg/torture/pr61010.c: New testcase.
From-SVN: r210066
Jan-Benedict Glaw [Mon, 5 May 2014 08:28:45 +0000 (08:28 +0000)]
picochip-protos.h (picochip_regno_nregs): Change int argument to enum machine_mode.
2014-05-05 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/picochip/picochip-protos.h (picochip_regno_nregs): Change
int argument to enum machine_mode.
(picochip_class_max_nregs): Ditto.
* config/picochip/picochip.c (picochip_regno_nregs): Ditto.
(picochip_class_max_nregs): Ditto.
From-SVN: r210065
Andreas Schwab [Mon, 5 May 2014 08:10:37 +0000 (08:10 +0000)]
Update libstdc++ baseline symbols for ia64
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt
(CXXABI_1.3.9): Remove __float128 symbols.
From-SVN: r210063
Andreas Krebbel [Mon, 5 May 2014 07:55:26 +0000 (07:55 +0000)]
target.def: Add new target hook.
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* target.def: Add new target hook.
* doc/tm.texi: Regenerate.
* targhooks.h (default_keep_leaf_when_profiled): Add prototype.
* targhooks.c (default_keep_leaf_when_profiled): New function.
* config/s390/s390.c (s390_keep_leaf_when_profiled): New function.
(TARGET_KEEP_LEAF_WHEN_PROFILED): Define.
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.target/s390/leaf-profile.c: New testcase.
From-SVN: r210061
Andreas Krebbel [Mon, 5 May 2014 07:53:35 +0000 (07:53 +0000)]
hoist-register-pressure-1.c: Replace int with long.
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.dg/hoist-register-pressure-1.c: Replace int with long.
Disable asm scan for s390.
* gcc.dg/hoist-register-pressure-2.c: Likewise.
* gcc.dg/hoist-register-pressure-3.c: Likewise.
From-SVN: r210060
Bin Cheng [Mon, 5 May 2014 07:36:30 +0000 (07:36 +0000)]
re PR tree-optimization/60363 (logical_op_short_circuit, gcc.dg/tree-ssa/ssa-dom-thread-4.c scan-tree-dump-times dom1 "Threaded" 4)
PR tree-optimization/60363
* gcc/tree-ssa-threadupdate.c (get_value_locus_in_path): New.
(copy_phi_args): New parameters. Call get_value_locus_in_path.
(update_destination_phis): New parameter.
(create_edge_and_update_destination_phis): Ditto.
(ssa_fix_duplicate_block_edges): Pass new arguments.
(thread_single_edge): Ditto.
PR tree-optimization/60363
* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Revert XFAIL test.
From-SVN: r210059
Peter Bergner [Mon, 5 May 2014 01:52:30 +0000 (20:52 -0500)]
rs6000.h (RS6000_BTM_HARD_FLOAT): New define.
gcc/
* config/rs6000/rs6000.h (RS6000_BTM_HARD_FLOAT): New define.
(RS6000_BTM_COMMON): Add RS6000_BTM_HARD_FLOAT.
(TARGET_EXTRA_BUILTINS): Add TARGET_HARD_FLOAT.
* config/rs6000/rs6000-builtin.def (BU_MISC_1):
Use RS6000_BTM_HARD_FLOAT.
(BU_MISC_2): Likewise.
* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Handle
RS6000_BTM_HARD_FLOAT.
(rs6000_option_override_internal): Enforce -mhard-float if -mhard-dfp
is explicitly used.
(rs6000_invalid_builtin): Add hard floating builtin support.
(rs6000_expand_builtin): Relax the gcc_assert to allow the new
hard float builtins.
(rs6000_builtin_mask_names): Add RS6000_BTM_HARD_FLOAT.
gcc/testsuite/
* gcc.target/powerpc/pack02.c (dg-options): Add -mhard-float.
(dg-require-effective-target): Change target to powerpc_fprs.
* gcc.target/powerpc/pack03.c (dg-options): Add -mhard-dfp.
(dg-require-effective-target): Change target to dfprt.
From-SVN: r210054
GCC Administrator [Mon, 5 May 2014 00:16:25 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210053
GCC Administrator [Sun, 4 May 2014 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210047
Paolo Carlini [Sat, 3 May 2014 22:44:22 +0000 (22:44 +0000)]
re PR c++/58582 ([c++11] ICE defining and instantiating deleted template function)
/cp
2014-05-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58582
* decl.c (grokfndecl): Check duplicate_decls return value for
error_mark_node.
* pt.c (instantiate_decl): A deleted function is defined.
/testsuite
2014-05-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58582
* g++.dg/cpp0x/deleted4.C: New.
* g++.dg/cpp0x/deleted5.C: Likewise.
* g++.dg/cpp0x/deleted6.C: Likewise.
From-SVN: r210043
Oleg Endo [Sat, 3 May 2014 20:22:09 +0000 (20:22 +0000)]
sh_optimize_sett_clrt.cc (sh_optimize_sett_clrt::execute): Add missing function* argument.
* config/sh/sh_optimize_sett_clrt.cc (sh_optimize_sett_clrt::execute):
Add missing function* argument.
From-SVN: r210040
Richard Sandiford [Sat, 3 May 2014 19:19:56 +0000 (19:19 +0000)]
lra-constraints.c (valid_address_p): Move earlier in file.
gcc/
* lra-constraints.c (valid_address_p): Move earlier in file.
Add a constraint argument to the address_info version.
(satisfies_memory_constraint_p): New function.
(satisfies_address_constraint_p): Likewise.
(process_alt_operands, curr_insn_transform): Use them.
(process_address): Pass the constraint to valid_address_p when
checking address operands.
From-SVN: r210039
Richard Sandiford [Sat, 3 May 2014 19:18:40 +0000 (19:18 +0000)]
mips.c (mips_isa_rev): New variable.
gcc/
* config/mips/mips.c (mips_isa_rev): New variable.
(mips_set_architecture): Set it.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Set __mips_isa_rev
from mips_isa_rev.
(ISA_HAS_MUL3, ISA_HAS_FP_CONDMOVE, ISA_HAS_8CC, ISA_HAS_FP4)
(ISA_HAS_PAIRED_SINGLE, ISA_HAS_MADD_MSUB, ISA_HAS_FP_RECIP_RSQRT)
(ISA_HAS_CLZ_CLO, ISA_HAS_ROR, ISA_HAS_WSBH, ISA_HAS_PREFETCH)
(ISA_HAS_SEB_SEH, ISA_HAS_EXT_INS, ISA_HAS_MXHC1)
(ISA_HAS_HILO_INTERLOCKS, ISA_HAS_SYNCI, MIN_FPRS_PER_FMT): Reexpress
conditions in terms of mips_isa_rev.
(mips_isa_rev): Declare.
From-SVN: r210038
Oleg Endo [Sat, 3 May 2014 17:47:27 +0000 (17:47 +0000)]
sh-mem.cc: Use tabs instead of spaces.
* config/sh/sh-mem.cc: Use tabs instead of spaces.
(prob_unlikely, prob_likely): Make variables const.
From-SVN: r210037
Denis Chertykov [Sat, 3 May 2014 14:23:24 +0000 (18:23 +0400)]
avr.c (avr_adjust_insn_length): Handle JUMP_TABLE_DATA.
* config/avr/avr.c (avr_adjust_insn_length): Handle JUMP_TABLE_DATA.
From-SVN: r210035
Dominique d'Humieres [Sat, 3 May 2014 12:16:53 +0000 (14:16 +0200)]
2014-05-03 Dominique d'Humieres <dominiq@lps.ens.fr>
Fix typos in log entries.
From-SVN: r210034
Oleg Endo [Sat, 3 May 2014 11:50:38 +0000 (11:50 +0000)]
sh.h (SH_ASM_SPEC): Handle m1, m2*, m3* and m4* cases.
* config/sh/sh.h (SH_ASM_SPEC): Handle m1, m2*, m3* and m4* cases.
From-SVN: r210033
Oleg Endo [Sat, 3 May 2014 09:42:52 +0000 (09:42 +0000)]
sh.h (ROUND_ADVANCE): Delete macro.
* config/sh/sh.h (ROUND_ADVANCE): Delete macro.
(ROUND_REG, PASS_IN_REG_P): Move and rename macros to ...
* config/sh/sh.c (sh_round_reg, sh_pass_in_reg_p): ... these new
functions.
(sh_arg_partial_bytes, sh_function_arg, sh_function_arg_advance,
sh_setup_incoming_varargs): Replace usage of PASS_IN_REG_P with
sh_pass_in_reg_p.
Replace usage of ROUND_REG with sh_round_reg.
Use CEIL instead of ROUND_ADVANCE.
From-SVN: r210032
Dominique d'Humieres [Sat, 3 May 2014 09:08:15 +0000 (11:08 +0200)]
re PR testsuite/61025 (FAIL: gfortran.dg/coarray_lib_this_image_1.f90)
2014-05-03 Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/61025
* gfortran.dg/coarray_lib_this_image_1.f90: Adjust the dg-final
regexps for -m32.
* gfortran.dg/coarray_lib_this_image_2.f90: Likewise.
* gfortran.dg/coarray_poly_7.f90: Likewise.
* gfortran.dg/coarray_poly_8.f90: Likewise.
* gfortran.dg/coarray_poly_9.f90: Likewise.
From-SVN: r210031
Oleg Endo [Sat, 3 May 2014 07:51:02 +0000 (07:51 +0000)]
re PR target/61026 (sh-rtems4.11 build of 4.9.0 fails on FreeBSD 10 c++ (clang).)
PR target/61026
* config/sh/sh.c: Include stdlib headers before everything else.
From-SVN: r210028
GCC Administrator [Sat, 3 May 2014 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210026
Jason Merrill [Fri, 2 May 2014 20:56:41 +0000 (16:56 -0400)]
* decl2.c (vague_linkage_p): Local statics have vague linkage.
From-SVN: r210019
Jason Merrill [Fri, 2 May 2014 19:47:40 +0000 (15:47 -0400)]
re PR c++/60992 (ICE in tsubst_copy, at cp/pt.c:12637)
PR c++/60992
* lambda.c (lambda_capture_field_type): Wrap anything dependent
other than 'this'.
(add_capture): Check for VLA before calling it.
* semantics.c (is_this_parameter): Accept any 'this' parameter, not
just the current one. Make non-static.
* cp-tree.h: Declare it.
* pt.c (tsubst_copy) [VAR_DECL]: Also build a new VAR_DECL if
the operand was static or constant.
From-SVN: r210017
Jonathan Wakely [Fri, 2 May 2014 18:29:48 +0000 (19:29 +0100)]
re PR libstdc++/61036 (shared_ptr<void>(new T) rejected)
PR libstdc++/61036
* include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
Check the correct type in the static assertion.
* testsuite/20_util/shared_ptr/cons/61036.cc: New.
From-SVN: r210015
Marek Polacek [Fri, 2 May 2014 18:13:43 +0000 (18:13 +0000)]
re PR c/25801 (bad diagnostic for increment/decrement of pointer to incomplete array)
PR c/25801
* c-typeck.c (c_size_in_bytes): Update comment. Don't call error.
Return size_one_node when the type is not complete.
(pointer_diff): Remove comment.
(build_unary_op): Improve error messages.
* gcc.dg/pr25801.c: New test.
From-SVN: r210013
Marek Polacek [Fri, 2 May 2014 18:09:42 +0000 (18:09 +0000)]
c-typeck.c (c_finish_return): Separate warning_at calls.
c/
* c-typeck.c (c_finish_return): Separate warning_at calls.
cp/
* typeck.c (maybe_warn_about_returning_address_of_local): Separate
warning_at calls.
From-SVN: r210012
Marek Polacek [Fri, 2 May 2014 18:07:40 +0000 (18:07 +0000)]
* c.opt (Wsizeof-pointer-memaccess): Describe option.
From-SVN: r210011
Jakub Jelinek [Fri, 2 May 2014 17:43:40 +0000 (19:43 +0200)]
gimplify.c (gimplify_adjust_omp_clauses_1): Handle GOVD_FIRSTPRIVATE | GOVD_LASTPRIVATE.
* gimplify.c (gimplify_adjust_omp_clauses_1): Handle
GOVD_FIRSTPRIVATE | GOVD_LASTPRIVATE.
(gimplify_adjust_omp_clauses): Simd region is never
directly nested in combined parallel. Instead, for linear
with copyin/copyout, if in combined for simd loop, make decl
firstprivate/lastprivate on OMP_FOR.
* omp-low.c (expand_omp_for_generic, expand_omp_for_static_nochunk,
expand_omp_for_static_chunk): When setting endvar, also set
fd->loop.v to the same value.
libgomp/
* testsuite/libgomp.c/simd-10.c: New test.
* testsuite/libgomp.c/simd-11.c: New test.
* testsuite/libgomp.c/simd-12.c: New test.
* testsuite/libgomp.c/simd-13.c: New test.
From-SVN: r210009
Jonathan Wakely [Fri, 2 May 2014 16:01:30 +0000 (17:01 +0100)]
re PR libstdc++/59476 (gdb pretty-printer cannot print C++11 _Rb_tree_iterator)
PR libstdc++/59476
* python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
function to handle both C++03 and C++11 _Rb_tree_node implementations.
(StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
* testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
refer to...
* testsuite/libstdc++-prettyprinters/simple11.cc: New.
From-SVN: r210008
Richard Sandiford [Fri, 2 May 2014 15:35:33 +0000 (15:35 +0000)]
hwint.h (zext_hwi): Fix signed overflow for prec == 63.
gcc/
* hwint.h (zext_hwi): Fix signed overflow for prec == 63.
From-SVN: r210006
Alan Lawrence [Fri, 2 May 2014 15:11:04 +0000 (15:11 +0000)]
One-line tidy of bit-twiddle expression in aarch64.c
* config/aarch64/aarch64.c (aarch64_expand_vec_perm_1): Tidy bit-flip
expression.
From-SVN: r210005
Marek Polacek [Fri, 2 May 2014 08:24:49 +0000 (08:24 +0000)]
* doc/invoke.texi: Describe -fsanitize=float-divide-by-zero.
From-SVN: r210002
Marek Polacek [Fri, 2 May 2014 07:57:59 +0000 (07:57 +0000)]
c-tree.h (error_init): Remove declaration.
* c-tree.h (error_init): Remove declaration.
(pedwarn_init): Likewise.
* c-typeck.c (error_init): Make static and move above.
(pedwarn_init): Likewise.
(warning_init): Move above.
(maybe_warn_string_init): Likewise.
From-SVN: r210001
Kito Cheng [Fri, 2 May 2014 06:03:22 +0000 (06:03 +0000)]
defaults.h (HONOR_REG_ALLOC_ORDER): Change HONOR_REG_ALLOC_ORDER to a C expression marco.
2014-02-26 Kito Cheng <kito@0xlab.org>
* defaults.h (HONOR_REG_ALLOC_ORDER): Change HONOR_REG_ALLOC_ORDER
to a C expression marco.
* ira-color.c (HONOR_REG_ALLOC_ORDER) : Ditto.
* config/arm/arm.h (HONOR_REG_ALLOC_ORDER): Ditto.
* config/nds32/nds32.h (HONOR_REG_ALLOC_ORDER): Ditto.
* doc/tm.texi (HONOR_REG_ALLOC_ORDER): Update document for
HONOR_REG_ALLOC_ORDER.
* doc/tm.texi.in (HONOR_REG_ALLOC_ORDER): Ditto.
From-SVN: r210000
Jeff Law [Fri, 2 May 2014 05:46:38 +0000 (23:46 -0600)]
revert: c-parser.c (c_parser_sizeof_expression): Reorganize slightly to avoid goto.
2014-05-01 Jeff Law <law@redhat.com>
Revert:
2014-04-24 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
* c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
avoid goto.
From-SVN: r209999
Marek Polacek [Fri, 2 May 2014 05:40:38 +0000 (05:40 +0000)]
re PR c/60784 (Spurious -Wmissing-field-initializers warning for anonymous structure)
PR c/60784
* c-typeck.c (push_init_level): Set constructor_designated to
p->designated for structures.
* gcc.dg/pr60784.c: New test.
From-SVN: r209998
Jeff Law [Fri, 2 May 2014 03:54:33 +0000 (21:54 -0600)]
[multiple changes]
2014-05-01 Jeff Law <law@redhat.com>
* Revert:
2014-04-24 Jincheng Miao <jincheng.miao@gmail.com>
* zh_CN.po: Fix typo for -mfentry.
From-SVN: r209997
GCC Administrator [Fri, 2 May 2014 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r209996
Joseph Myers [Thu, 1 May 2014 21:33:52 +0000 (22:33 +0100)]
* sv.po: Update.
From-SVN: r209989
Richard Sandiford [Thu, 1 May 2014 20:51:11 +0000 (20:51 +0000)]
* config.sub, config.guess: Import from upstream.
From-SVN: r209988
Ian Lance Taylor [Thu, 1 May 2014 19:18:56 +0000 (19:18 +0000)]
compiler: Use backend interface for heap expressions.
From-SVN: r209983
Steve Ellcey [Thu, 1 May 2014 15:07:00 +0000 (15:07 +0000)]
longlong.h: Use 'defined()' to check __mips16.
2014-05-01 Steve Ellcey <sellcey@mips.com>
* include/longlong.h: Use 'defined()' to check __mips16.
From-SVN: r209980
Jan-Benedict Glaw [Thu, 1 May 2014 13:00:10 +0000 (13:00 +0000)]
arc.c (TARGET_LRA_P): Undef before redefine.
2014-05-01 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/arc/arc.c (TARGET_LRA_P): Undef before redefine.
From-SVN: r209979
Jan-Benedict Glaw [Thu, 1 May 2014 12:16:42 +0000 (12:16 +0000)]
arc.c (arc_select_cc_mode): Fix typo.
2014-05-01 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/arc/arc.c (arc_select_cc_mode): Fix typo.
From-SVN: r209978
Marek Polacek [Thu, 1 May 2014 07:40:26 +0000 (07:40 +0000)]
re PR c/60915 (confusing diagnostic from attribute on function definition)
PR c/60915
* c-parser.c (c_parser_declaration_or_fndef): Give better error if
function-definition has an attribute after the declarator.
* gcc.dg/pr60915.c: New test.
From-SVN: r209975
Marek Polacek [Thu, 1 May 2014 07:35:05 +0000 (07:35 +0000)]
re PR c/60257 (Incorrect column number and confusing message in -Woverride-init)
PR c/60257
* c-typeck.c (warning_init): Add location_t parameter. Call
warning_at instead of warning.
(push_init_level): Pass input_location to warning_init.
(add_pending_init): Add location_t parameter. Pass loc to
warning_init.
(set_nonincremental_init): Pass input_location to add_pending_init.
(set_nonincremental_init_from_string): Likewise.
(output_init_element): Pass loc to warning_init and to
add_pending_init.
* gcc.dg/pr60257.c: New test.
From-SVN: r209974
Marek Polacek [Thu, 1 May 2014 07:29:38 +0000 (07:29 +0000)]
re PR c/43395 (Gcc warns label as local variable)
PR c/43395
c/
* c-typeck.c (c_finish_return): Distinguish between label and variable
when warning about returning local address.
cp/
* typeck.c (maybe_warn_about_returning_address_of_local): Distinguish
between label and variable when warning about returning local address.
testsuite/
* c-c++-common/pr43395.c: New test.
From-SVN: r209973
Yuri Rumyantsev [Thu, 1 May 2014 07:23:06 +0000 (07:23 +0000)]
tree-if-conv.c (is_cond_scalar_reduction): New function.
gcc/
* tree-if-conv.c (is_cond_scalar_reduction): New function.
(convert_scalar_cond_reduction): Likewise.
(predicate_scalar_phi): Add recognition and transformation
of simple conditioanl reduction to be vectorizable.
gcc/testsuite/
* gcc.dg/cond-reduc-1.c: New test.
* gcc.dg/cond-reduc-2.c: Likewise.
From-SVN: r209972
Marek Polacek [Thu, 1 May 2014 07:21:07 +0000 (07:21 +0000)]
re PR c/29467 (-ansi -pedantic accepts _Bool without diagnostic)
PR c/29467
* c-decl.c (declspecs_add_type): Pedwarn if boolean types are used
in C89 mode.
* gcc.dg/pr29467.c: New test.
* gcc.dg/declspec-13.c: Renumber some dg-warnings. Add dg-warnings
about boolean types.
* gfortran.dg/bind_c_usage_24_c.c: Include <stdbool.h>. Change _Bool
to bool.
* gfortran.dg/c_f_pointer_logical_driver.c: Change _Bool to bool.
From-SVN: r209971
Marek Polacek [Thu, 1 May 2014 07:16:10 +0000 (07:16 +0000)]
re PR c/43245 (add option to control "discarding qualifiers" warnings)
PR c/43245
* doc/invoke.texi: Document -Wdiscarded-qualifiers.
c-family/
* c.opt (Wdiscarded-qualifiers): Add.
c/
* c-typeck.c (convert_for_assignment): Pass OPT_Wdiscarded_qualifiers
instead of 0 to WARN_FOR_QUALIFIERS.
testsuite/
* gcc.dg/pr43245.c: New test.
From-SVN: r209970
Marek Polacek [Thu, 1 May 2014 07:08:19 +0000 (07:08 +0000)]
re PR c/56989 (wrong location in error message)
PR c/56989
* c-typeck.c (default_conversion): Use better location for
error call.
* gcc.dg/pr56989.c: New test.
From-SVN: r209969
Chris Manghane [Thu, 1 May 2014 01:20:07 +0000 (01:20 +0000)]
go-backend.c: #include "diagnostics.h".
* go-backend.c: #include "diagnostics.h".
(saw_errors): New function.
* go-c.h (saw_errors): Declare.
* Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
From-SVN: r209968
Ian Lance Taylor [Thu, 1 May 2014 00:35:58 +0000 (00:35 +0000)]
runtime: ask $GOC rather than $CC for the version and multi-os-directory
The Go compiler may have different values for these than the C compiler.
From-SVN: r209967
GCC Administrator [Thu, 1 May 2014 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r209966
Ian Lance Taylor [Wed, 30 Apr 2014 21:39:41 +0000 (21:39 +0000)]
go-test.exp (go-gc-tests): For rundir...
* go.test/go-test.exp (go-gc-tests): For rundir, pass extra files
in go_compile_args rather than in argument to go-torture-execute.
From-SVN: r209959
Soundararajan Dhakshinamoorthy [Wed, 30 Apr 2014 21:09:21 +0000 (21:09 +0000)]
pr58419.c: Use dummy no-inline function instead of getpid.
2014-04-30 Soundararajan Dhakshinamoorthy <sounderarajan.d@atmel.com>
* gcc.c-torture/execute/pr58419.c: Use dummy no-inline function
instead of getpid.
From-SVN: r209957
Tobias Burnus [Wed, 30 Apr 2014 19:10:16 +0000 (21:10 +0200)]
trans-decl.c (create_function_arglist): Add hidden coarray
2014-04-30 Tobias Burnus <burnus@net-b.de>
* trans-decl.c (create_function_arglist): Add hidden coarray
* arguments
also for polymorphic coarrays.
* trans-expr.c (gfc_conv_procedure_call): Pass hidden coarray
arguments also for polymorphic coarrays.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_poly_7.f90
* gfortran.dg/coarray_poly_8.f90
* gfortran.dg/coarray_poly_9.f90
From-SVN: r209953
Tobias Burnus [Wed, 30 Apr 2014 19:08:19 +0000 (21:08 +0200)]
resolve.c (resolve_function): Don't do assumed-size check for lcobound/ucobound.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* resolve.c (resolve_function): Don't do
assumed-size check for lcobound/ucobound.
* trans-types.c (gfc_build_array_type): Only build an array
descriptor with codimensions for allocatable coarrays.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_lib_this_image_2.f90: Update dump.
* gfortran.dg/coarray_lib_token_4.f90: Ditto.
* gfortran.dg/coarray/codimension.f90: New.
From-SVN: r209952
Tobias Burnus [Wed, 30 Apr 2014 19:02:23 +0000 (21:02 +0200)]
gfortran.h (gfc_init_coarray_decl): Remove.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* gfortran.h (gfc_init_coarray_decl): Remove.
* parse.c (translate_all_program_units): Remove call to it.
(gfc_parse_file): Update call.
* trans.h (gfor_fndecl_caf_this_image,
gfor_fndecl_caf_num_images): Add.
(gfort_gvar_caf_num_images,
gfort_gvar_caf_this_image): Remove.
* trans-decl.c (gfor_fndecl_caf_this_image,
gfor_fndecl_caf_num_images): Add.
(gfort_gvar_caf_num_images,
gfort_gvar_caf_this_image): Remove.
(gfc_build_builtin_function_decls): Init new decl.
(gfc_init_coarray_dec): Remove.
(create_main_function): Change calls.
* trans-intrinsic.c (trans_this_image, trans_image_index,
conv_intrinsic_cobound): Generate call to new library function
instead of to a static variable.
* trans-stmt.c (gfc_trans_sync): Ditto.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_lib_this_image_1.f90: New.
* gfortran.dg/coarray_lib_this_image_2.f90: New.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* caf/libcaf.h (_gfortran_caf_this_image,
* _gfortran_caf_num_images):
New prototypes.
(_gfortran_caf_init): Change prototype.
(mpi_token_t): New typedef.
(TOKEN): New define.
* caf/mpi.c (_gfortran_caf_this_image,
* _gfortran_caf_num_images):
New functions.
(_gfortran_caf_init): Update.
(_gfortran_caf_finalize, _gfortran_caf_register,
_gfortran_caf_deregister): Use mpi_token_t.
* caf/single.c (_gfortran_caf_this_image,
* _gfortran_caf_num_images):
New functions.
(_gfortran_caf_init): Update.
(_gfortran_caf_finalize, _gfortran_caf_register,
_gfortran_caf_deregister): Use mpi_token_t, simplify.
From-SVN: r209951
Tobias Burnus [Wed, 30 Apr 2014 18:39:15 +0000 (20:39 +0200)]
trans-expr.c (get_tree_for_caf_expr): Fix handling of
2014-04-30 Tobias Burnus <burnus@net-b.de>
* trans-expr.c (get_tree_for_caf_expr): Fix handling of
* polymorphic
and derived-type coarrays.
2014-04-30 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_poly_4.f90: New.
* gfortran.dg/coarray_poly_5.f90: New.
From-SVN: r209948
Alan Lawrence [Wed, 30 Apr 2014 18:10:56 +0000 (18:10 +0000)]
Add execution tests of ARM UZP Intrinsics.
* gcc.target/arm/simd/vuzpqf32_1.c: New file.
* gcc.target/arm/simd/vuzpqp16_1.c: New file.
* gcc.target/arm/simd/vuzpqp8_1.c: New file.
* gcc.target/arm/simd/vuzpqs16_1.c: New file.
* gcc.target/arm/simd/vuzpqs32_1.c: New file.
* gcc.target/arm/simd/vuzpqs8_1.c: New file.
* gcc.target/arm/simd/vuzpqu16_1.c: New file.
* gcc.target/arm/simd/vuzpqu32_1.c: New file.
* gcc.target/arm/simd/vuzpqu8_1.c: New file.
* gcc.target/arm/simd/vuzpf32_1.c: New file.
* gcc.target/arm/simd/vuzpp16_1.c: New file.
* gcc.target/arm/simd/vuzpp8_1.c: New file.
* gcc.target/arm/simd/vuzps16_1.c: New file.
* gcc.target/arm/simd/vuzps32_1.c: New file.
* gcc.target/arm/simd/vuzps8_1.c: New file.
* gcc.target/arm/simd/vuzpu16_1.c: New file.
* gcc.target/arm/simd/vuzpu32_1.c: New file.
* gcc.target/arm/simd/vuzpu8_1.c: New file.
From-SVN: r209947
Chris Manghane [Wed, 30 Apr 2014 17:55:59 +0000 (17:55 +0000)]
compiler: Remove GCC langhooks from frontend proper.
* go-lang.c (go_langhook_type_for_size): Do it here, rather than
calling into Go frontend.
(go_langhook_type_for_mode): Likewise.
* go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
From-SVN: r209945
Alan Lawrence [Wed, 30 Apr 2014 17:04:53 +0000 (17:04 +0000)]
Rewrite AArch64 UZP Intrinsics using __builtin_shuffle.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/vuzps32_1.c: Expect zip1/2 insn rather than uzp1/2.
* gcc.target/aarch64/vuzpu32_1.c: Likewise.
* gcc.target/aarch64/vuzpf32_1.c: Likewise.
gcc/ChangeLog:
* config/aarch64/arm_neon.h (vuzp1_f32, vuzp1_p8, vuzp1_p16, vuzp1_s8,
vuzp1_s16, vuzp1_s32, vuzp1_u8, vuzp1_u16, vuzp1_u32, vuzp1q_f32,
vuzp1q_f64, vuzp1q_p8, vuzp1q_p16, vuzp1q_s8, vuzp1q_s16, vuzp1q_s32,
vuzp1q_s64, vuzp1q_u8, vuzp1q_u16, vuzp1q_u32, vuzp1q_u64, vuzp2_f32,
vuzp2_p8, vuzp2_p16, vuzp2_s8, vuzp2_s16, vuzp2_s32, vuzp2_u8,
vuzp2_u16, vuzp2_u32, vuzp2q_f32, vuzp2q_f64, vuzp2q_p8, vuzp2q_p16,
vuzp2q_s8, vuzp2q_s16, vuzp2q_s32, vuzp2q_s64, vuzp2q_u8, vuzp2q_u16,
vuzp2q_u32, vuzp2q_u64): Replace temporary asm with __builtin_shuffle.
From-SVN: r209943
Bernd Edlinger [Wed, 30 Apr 2014 16:53:51 +0000 (16:53 +0000)]
Work around for current cygwin32 build problems.
2014-04-30 Bernd Edlinger <bernd.edlinger@hotmail.de>
Work around for current cygwin32 build problems.
* config/i386/cygming-crtbegin.c (__register_frame_info,
__deregister_frame_info, _Jv_RegisterClasses): Compile weak default
functions only for 64-bit systems.
From-SVN: r209942
Chris Manghane [Wed, 30 Apr 2014 16:47:02 +0000 (16:47 +0000)]
go-gcc.cc: #include "langhooks.h".
* go-gcc.cc: #include "langhooks.h".
(Gcc_backend::Gcc_backend): Add constructor.
(Gcc_backend::lookup_function): New function.
(Gcc_backend::define_builtin): New private function.
(Gcc_backend::gcc_backend): Remove.
(go_get_backend): Use new to create new Gcc_backend.
From-SVN: r209941
Alan Lawrence [Wed, 30 Apr 2014 16:36:07 +0000 (16:36 +0000)]
Add execution + assembler tests of AArch64 UZP Intrinsics.
* gcc.target/aarch64/simd/vuzpf32_1.c: New file.
* gcc.target/aarch64/simd/vuzpf32.x: New file.
* gcc.target/aarch64/simd/vuzpp16_1.c: New file.
* gcc.target/aarch64/simd/vuzpp16.x: New file.
* gcc.target/aarch64/simd/vuzpp8_1.c: New file.
* gcc.target/aarch64/simd/vuzpp8.x: New file.
* gcc.target/aarch64/simd/vuzpqf32_1.c: New file.
* gcc.target/aarch64/simd/vuzpqf32.x: New file.
* gcc.target/aarch64/simd/vuzpqp16_1.c: New file.
* gcc.target/aarch64/simd/vuzpqp16.x: New file.
* gcc.target/aarch64/simd/vuzpqp8_1.c: New file.
* gcc.target/aarch64/simd/vuzpqp8.x: New file.
* gcc.target/aarch64/simd/vuzpqs16_1.c: New file.
* gcc.target/aarch64/simd/vuzpqs16.x: New file.
* gcc.target/aarch64/simd/vuzpqs32_1.c: New file.
* gcc.target/aarch64/simd/vuzpqs32.x: New file.
* gcc.target/aarch64/simd/vuzpqs8_1.c: New file.
* gcc.target/aarch64/simd/vuzpqs8.x: New file.
* gcc.target/aarch64/simd/vuzpqu16_1.c: New file.
* gcc.target/aarch64/simd/vuzpqu16.x: New file.
* gcc.target/aarch64/simd/vuzpqu32_1.c: New file.
* gcc.target/aarch64/simd/vuzpqu32.x: New file.
* gcc.target/aarch64/simd/vuzpqu8_1.c: New file.
* gcc.target/aarch64/simd/vuzpqu8.x: New file.
* gcc.target/aarch64/simd/vuzps16_1.c: New file.
* gcc.target/aarch64/simd/vuzps16.x: New file.
* gcc.target/aarch64/simd/vuzps32_1.c: New file.
* gcc.target/aarch64/simd/vuzps32.x: New file.
* gcc.target/aarch64/simd/vuzps8_1.c: New file.
* gcc.target/aarch64/simd/vuzps8.x: New file.
* gcc.target/aarch64/simd/vuzpu16_1.c: New file.
* gcc.target/aarch64/simd/vuzpu16.x: New file.
* gcc.target/aarch64/simd/vuzpu32_1.c: New file.
* gcc.target/aarch64/simd/vuzpu32.x: New file.
* gcc.target/aarch64/simd/vuzpu8_1.c: New file.
* gcc.target/aarch64/simd/vuzpu8.x: New file.
From-SVN: r209940
Joern Rennecke [Wed, 30 Apr 2014 16:06:07 +0000 (16:06 +0000)]
arc.opt (mlra): Move comment above option name to avoid mis-parsing as language options.
* config/arc/arc.opt (mlra): Move comment above option name
to avoid mis-parsing as language options.
From-SVN: r209939
Jason Merrill [Wed, 30 Apr 2014 14:23:18 +0000 (10:23 -0400)]
re PR c++/60980 (ICE in build_special_member_call, at cp/call.c:7447)
PR c++/60980
* init.c (build_value_init): Don't try to call an array constructor.
From-SVN: r209934
Jason Merrill [Wed, 30 Apr 2014 14:23:11 +0000 (10:23 -0400)]
re PR c++/60951 ([C++11] ICE with braced-init-list assignment and constexpr constructor)
PR c++/60951
* typeck2.c (massage_init_elt): Use maybe_constant_init.
From-SVN: r209933
Richard Sandiford [Wed, 30 Apr 2014 14:12:32 +0000 (14:12 +0000)]
longlong.h (__i386__): Remove W_TYPE_SIZE==64 handling.
include/
* longlong.h (__i386__): Remove W_TYPE_SIZE==64 handling.
From-SVN: r209932
Rainer Orth [Wed, 30 Apr 2014 14:10:44 +0000 (14:10 +0000)]
Simplify Solaris 2 configuration
* config/sol2-10.h (TARGET_LIBC_HAS_FUNCTION): Move ...
* config/sol2.h: ... here.
* config/sol2-10.h: Remove.
* config/sol2-bi.h (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE)
(WINT_TYPE_SIZE, MULTILIB_DEFAULTS, DEF_ARCH32_SPEC)
(DEF_ARCH64_SPEC, ASM_CPU_DEFAULT_SPEC, LINK_ARCH64_SPEC_BASE)
(LINK_ARCH64_SPEC, ARCH_DEFAULT_EMULATION, TARGET_LD_EMULATION)
(LINK_ARCH_SPEC, SUBTARGET_EXTRA_SPECS): Move ...
* config/sol2.h: ... here.
(SECTION_NAME_FORMAT): Don't redefine.
(STARTFILE_ARCH32_SPEC): Rename to ...
(STARTFILE_ARCH_SPEC): ... this.
(ASM_OUTPUT_ALIGNED_COMMON): Move ...
* config/sparc/sol2.h: ... here.
(SECTION_NAME_FORMAT): Don't undef.
* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC)
(SUBTARGET_EXTRA_SPECS): Remove.
* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
* config/i386/sol2-bi.h (TARGET_SUBTARGET_DEFAULT)
(MD_STARTFILE_PREFIX): Remove.
(SUBTARGET_OPTIMIZATION_OPTIONS, ASM_CPU32_DEFAULT_SPEC)
(ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC, ASM_SPEC, DEFAULT_ARCH32_P)
(ARCH64_SUBDIR, ARCH32_EMULATION, ARCH64_EMULATION)
(ASM_COMMENT_START, JUMP_TABLES_IN_TEXT_SECTION)
(ASM_OUTPUT_DWARF_PCREL, ASM_OUTPUT_ALIGNED_COMMON)
(USE_IX86_FRAME_POINTER, USE_X86_64_FRAME_POINTER): Move ...
* config/i386/sol2.h: ... here.
(TARGET_SUBTARGET_DEFAULT, SIZE_TYPE, PTRDIFF_TYPE): Remove.
* config/i386/sol2-bi.h: Remove.
* config/sol2.h (MD_STARTFILE_PREFIX): Remove.
(LINK_ARCH32_SPEC_BASE): Remove /usr/ccs/lib/libp, /usr/ccs/lib.
* config/i386/t-sol2-64: Rename to ...
* config/i386/t-sol2: ... this.
* config/sparc/t-sol2-64: Rename to ...
* config/sparc/t-sol2: ... this.
* config.gcc (*-*-solaris2*): Split sol2_tm_file into
sol2_tm_file_head, sol2_tm_file_tail.
Include ${cpu_type}/sol2.h before sol2.h.
Remove sol2-10.h.
(i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Include
i386/x86-64.h between sol2_tm_file_head and sol2_tm_file_tail.
Remove i386/sol2-bi.h, sol2-bi.h from tm_file.
Reflect i386/t-sol2-64 renaming.
(sparc*-*-solaris2*): Remove sol2-bi.h from tm_file.
Reflect sparc/t-sol2-64 renaming.
From-SVN: r209931
Richard Biener [Wed, 30 Apr 2014 11:43:41 +0000 (11:43 +0000)]
re PR tree-optimization/48329 (Missed vectorization of reduction due to PRE)
2014-04-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/48329
* gfortran.dg/vect/pr48329.f90: New testcase.
From-SVN: r209930
Richard Biener [Wed, 30 Apr 2014 08:06:49 +0000 (08:06 +0000)]
passes.c (execute_function_todo): Move TODO_verify_stmts and TODO_verify_ssa under the TODO_verify_il umbrella.
2014-04-30 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Move TODO_verify_stmts
and TODO_verify_ssa under the TODO_verify_il umbrella.
* tree-ssa.h (verify_ssa): Adjust prototype.
* tree-ssa.c (verify_ssa): Add parameter to tell whether
we should verify SSA operands.
* tree-cfg.h (verify_gimple_in_cfg): Adjust prototype.
* tree-cfg.c (verify_gimple_in_cfg): Add parameter to tell
whether we should verify whether not throwing stmts have EH info.
* graphite-scop-detection.c (create_sese_edges): Adjust.
* tree-ssa-loop-manip.c (verify_loop_closed_ssa): Likewise.
* tree-eh.c (lower_try_finally_switch): Do not add the
default case label twice.
From-SVN: r209928
Marek Polacek [Wed, 30 Apr 2014 07:34:43 +0000 (07:34 +0000)]
gcc.c (sanitize_spec_function): Handle SANITIZE_FLOAT_DIVIDE.
* gcc.c (sanitize_spec_function): Handle SANITIZE_FLOAT_DIVIDE.
* builtins.def: Initialize builtins even for SANITIZE_FLOAT_DIVIDE.
* flag-types.h (enum sanitize_code): Add SANITIZE_FLOAT_DIVIDE.
* opts.c (common_handle_option): Add -fsanitize=float-divide-by-zero.
c-family/
* c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
INT_MIN / -1 sanitization only for integer types.
c/
* c-typeck.c (build_binary_op): Call ubsan_instrument_division
also when SANITIZE_FLOAT_DIVIDE is on.
cp/
* typeck.c (cp_build_binary_op): Call ubsan_instrument_division
even when SANITIZE_FLOAT_DIVIDE is on. Set doing_div_or_mod even
for non-integer types.
testsuite/
* c-c++-common/ubsan/div-by-zero-5.c: Fix formatting.
* c-c++-common/ubsan/float-div-by-zero-1.c: New test.
From-SVN: r209927
Marek Polacek [Wed, 30 Apr 2014 06:14:39 +0000 (06:14 +0000)]
re PR c/60139 (Imprecise column number for -pedantic on non-computable initializer element)
PR c/60139
* c-typeck.c (output_init_element): Pass OPT_Wpedantic to pedwarn
and pedwarn_init. Use loc insted of input_location.
* gcc.dg/pr60139.c: New test.
From-SVN: r209926
Marek Polacek [Wed, 30 Apr 2014 06:08:17 +0000 (06:08 +0000)]
re PR c/60351 (Incorrect column number for warning on "right shift count is negative")
PR c/60351
* c-typeck.c (build_binary_op): Use location when warning about
shift count.
* gcc.dg/pr60351.c: New test.
From-SVN: r209925
Ian Lance Taylor [Wed, 30 Apr 2014 02:38:30 +0000 (02:38 +0000)]
compiler: Don't overwrite memory if an archive has a bad file name.
From-SVN: r209924
GCC Administrator [Wed, 30 Apr 2014 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r209922
Alan Lawrence [Tue, 29 Apr 2014 19:14:43 +0000 (19:14 +0000)]
Add execution tests of ARM ZIP Intrinsics.
* gcc.target/arm/simd/simd.exp: New file.
* gcc.target/arm/simd/vzipqf32_1.c: New file.
* gcc.target/arm/simd/vzipqp16_1.c: New file.
* gcc.target/arm/simd/vzipqp8_1.c: New file.
* gcc.target/arm/simd/vzipqs16_1.c: New file.
* gcc.target/arm/simd/vzipqs32_1.c: New file.
* gcc.target/arm/simd/vzipqs8_1.c: New file.
* gcc.target/arm/simd/vzipqu16_1.c: New file.
* gcc.target/arm/simd/vzipqu32_1.c: New file.
* gcc.target/arm/simd/vzipqu8_1.c: New file.
* gcc.target/arm/simd/vzipf32_1.c: New file.
* gcc.target/arm/simd/vzipp16_1.c: New file.
* gcc.target/arm/simd/vzipp8_1.c: New file.
* gcc.target/arm/simd/vzips16_1.c: New file.
* gcc.target/arm/simd/vzips32_1.c: New file.
* gcc.target/arm/simd/vzips8_1.c: New file.
* gcc.target/arm/simd/vzipu16_1.c: New file.
* gcc.target/arm/simd/vzipu32_1.c: New file.
* gcc.target/arm/simd/vzipu8_1.c: New file.
From-SVN: r209908
Jason Merrill [Tue, 29 Apr 2014 18:04:50 +0000 (14:04 -0400)]
DR 1351 Represent the unevaluated exception specification of an implicitly declared or deleted function with a simple placeholder...
DR 1351
Represent the unevaluated exception specification of an implicitly
declared or deleted function with a simple placeholder, not a list
of functions.
* cp-tree.h (UNEVALUATED_NOEXCEPT_SPEC_P): New.
* except.c (unevaluated_noexcept_spec): New.
* class.c (deduce_noexcept_on_destructor): Use it.
* decl.c (check_redeclaration_exception_specification): Call
maybe_instantiate_noexcept.
(duplicate_decls): Call it before merge_types.
(start_preparsed_function): Call maybe_instantiate_noexcept.
* decl2.c (mark_used): Call maybe_instantiate_noexcept earlier.
* init.c (get_nsdmi): Factor out of perform_member_init.
* method.c (process_subob_fn): Call maybe_instantiate_noexcept.
(walk_field_subobs): Consider NSDMI for EH spec.
(get_defaulted_eh_spec): New.
(implicitly_declare_fn): Use unevaluated_noexcept_spec.
(defaulted_late_check): Defer EH checking in non-template classes.
(after_nsdmi_defaulted_late_checks): New.
* parser.c (cp_parser_class_specifier_1): Use it.
(unparsed_classes): New macro.
* parser.h (cp_unparsed_functions_entry_d): Add classes field.
* pt.c (maybe_instantiate_noexcept): Use get_defaulted_eh_spec.
Remove list-of-functions handling.
* typeck2.c (merge_exception_specifiers): Remove list-of-functions
handling and FN parameter.
* typeck.c (merge_types): Adjust.
From-SVN: r209907
Alan Lawrence [Tue, 29 Apr 2014 16:55:48 +0000 (16:55 +0000)]
arm_neon.h (vzip1_f32, [...]): Replace inline __asm__ with __builtin_shuffle.
* config/aarch64/arm_neon.h (vzip1_f32, vzip1_p8, vzip1_p16, vzip1_s8,
vzip1_s16, vzip1_s32, vzip1_u8, vzip1_u16, vzip1_u32, vzip1q_f32,
vzip1q_f64, vzip1q_p8, vzip1q_p16, vzip1q_s8, vzip1q_s16, vzip1q_s32,
vzip1q_s64, vzip1q_u8, vzip1q_u16, vzip1q_u32, vzip1q_u64, vzip2_f32,
vzip2_p8, vzip2_p16, vzip2_s8, vzip2_s16, vzip2_s32, vzip2_u8,
vzip2_u16, vzip2_u32, vzip2q_f32, vzip2q_f64, vzip2q_p8, vzip2q_p16,
vzip2q_s8, vzip2q_s16, vzip2q_s32, vzip2q_s64, vzip2q_u8, vzip2q_u16,
vzip2q_u32, vzip2q_u64): Replace inline __asm__ with __builtin_shuffle.
From-SVN: r209906
Paolo Carlini [Tue, 29 Apr 2014 16:53:27 +0000 (16:53 +0000)]
re PR c++/51707 ([c++11] constexpr constructor cannot initialize const reference member)
2014-04-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51707
* g++.dg/cpp0x/constexpr-51707.C: New.
From-SVN: r209905
David Malcolm [Tue, 29 Apr 2014 15:02:16 +0000 (15:02 +0000)]
Dump the return type of functions in gimple dumps
gcc/
* tree-cfg.c (dump_function_to_file): Dump the return type of
functions, in a line to itself before the function body, mimicking
the layout of a C function.
gcc/testsuite/
* gcc.dg/tree-ssa/pr23401.c: Update the expected number of
occurrences of "int" in the gimple dump to reflect that the return
types of functions now show up in such dumps.
* gcc.dg/tree-ssa/pr27810.c: Likewise.
From-SVN: r209902
Jakub Jelinek [Tue, 29 Apr 2014 14:44:07 +0000 (16:44 +0200)]
re PR tree-optimization/60971 (Wrong code when coercing unsigned char to bool)
PR tree-optimization/60971
* tree-tailcall.c (process_assignment): Reject conversions which
reduce precision.
* c-c++-common/turtore/pr60971.c: New test.
From-SVN: r209900
Nick Clifton [Tue, 29 Apr 2014 13:59:00 +0000 (13:59 +0000)]
msp430.md (umulsidi): Fix typo.
* config/msp430/msp430.md (umulsidi): Fix typo.
(mulhisi3): Enable even inside interrupt handlers.
* config/msp430/msp430.c (msp430_print_operand): %O: Allow for the
bigger return address pushed in large mode.
From-SVN: r209898
James Greenhalgh [Tue, 29 Apr 2014 13:46:23 +0000 (13:46 +0000)]
Remove PUSH_ARGS_REVERSED from the RTL expander.
gcc/
* calls.c (initialize_argument_information): Always treat
PUSH_ARGS_REVERSED as 1, simplify code accordingly.
(expand_call): Likewise.
(emit_library_call_calue_1): Likewise.
* expr.c (PUSH_ARGS_REVERSED): Do not define.
(emit_push_insn): Always treat PUSH_ARGS_REVERSED as 1, simplify
code accordingly.
From-SVN: r209897
Alan Lawrence [Tue, 29 Apr 2014 13:20:52 +0000 (13:20 +0000)]
MAINTAINERS (Write After Approval): Put myself in correct order.
* MAINTAINERS (Write After Approval): Put myself in correct order.
From-SVN: r209896
Alan Lawrence [Tue, 29 Apr 2014 13:14:38 +0000 (13:14 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r209895
Nick Clifton [Tue, 29 Apr 2014 13:09:03 +0000 (13:09 +0000)]
arc.c (arc_select_cc_mode): Fix parentheses.
* config/arc/arc.c (arc_select_cc_mode): Fix parentheses.
(arc_init_reg_tables): Use a machine_mode enum to iterate over
available modes.
* config/m32r/m32r.c (init_reg_tables): Likewise.
* config/m32c/m32c.c (m32c_illegal_subreg_p): Use a machine_mode
enum to hold the modes.
From-SVN: r209894
Alan Lawrence [Tue, 29 Apr 2014 13:08:46 +0000 (13:08 +0000)]
Add execution + assembler tests of the AArch64 ZIP Intrinsics.
* gcc.target/aarch64/simd/simd.exp: New file.
* gcc.target/aarch64/simd/vzipf32_1.c: New file.
* gcc.target/aarch64/simd/vzipf32.x: New file.
* gcc.target/aarch64/simd/vzipp16_1.c: New file.
* gcc.target/aarch64/simd/vzipp16.x: New file.
* gcc.target/aarch64/simd/vzipp8_1.c: New file.
* gcc.target/aarch64/simd/vzipp8.x: New file.
* gcc.target/aarch64/simd/vzipqf32_1.c: New file.
* gcc.target/aarch64/simd/vzipqf32.x: New file.
* gcc.target/aarch64/simd/vzipqp16_1.c: New file.
* gcc.target/aarch64/simd/vzipqp16.x: New file.
* gcc.target/aarch64/simd/vzipqp8_1.c: New file.
* gcc.target/aarch64/simd/vzipqp8.x: New file.
* gcc.target/aarch64/simd/vzipqs16_1.c: New file.
* gcc.target/aarch64/simd/vzipqs16.x: New file.
* gcc.target/aarch64/simd/vzipqs32_1.c: New file.
* gcc.target/aarch64/simd/vzipqs32.x: New file.
* gcc.target/aarch64/simd/vzipqs8_1.c: New file.
* gcc.target/aarch64/simd/vzipqs8.x: New file.
* gcc.target/aarch64/simd/vzipqu16_1.c: New file.
* gcc.target/aarch64/simd/vzipqu16.x: New file.
* gcc.target/aarch64/simd/vzipqu32_1.c: New file.
* gcc.target/aarch64/simd/vzipqu32.x: New file.
* gcc.target/aarch64/simd/vzipqu8_1.c: New file.
* gcc.target/aarch64/simd/vzipqu8.x: New file.
* gcc.target/aarch64/simd/vzips16_1.c: New file.
* gcc.target/aarch64/simd/vzips16.x: New file.
* gcc.target/aarch64/simd/vzips32_1.c: New file.
* gcc.target/aarch64/simd/vzips32.x: New file.
* gcc.target/aarch64/simd/vzips8_1.c: New file.
* gcc.target/aarch64/simd/vzips8.x: New file.
* gcc.target/aarch64/simd/vzipu16_1.c: New file.
* gcc.target/aarch64/simd/vzipu16.x: New file.
* gcc.target/aarch64/simd/vzipu32_1.c: New file.
* gcc.target/aarch64/simd/vzipu32.x: New file.
* gcc.target/aarch64/simd/vzipu8_1.c: New file.
* gcc.target/aarch64/simd/vzipu8.x: New file.
From-SVN: r209893