ian [Fri, 16 Dec 2011 23:11:37 +0000 (23:11 +0000)]
PR middle-end/51592
* gcc.dg/
20111216-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182419
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 16 Dec 2011 22:34:49 +0000 (22:34 +0000)]
PR c++/51461
* decl.c (check_static_variable_definition): Check COMPLETE_TYPE_P
before literal_type_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182415
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 16 Dec 2011 22:34:39 +0000 (22:34 +0000)]
PR c++/51331
* class.c (convert_to_base_statically): Just call
build_simple_base_path.
(build_simple_base_path): Check field offset.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182414
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Dec 2011 20:16:23 +0000 (20:16 +0000)]
PR testsuite/50803
* gcc.dg/ipa/inline-5.c: XFAIL for 32-bit hppa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182411
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Fri, 16 Dec 2011 18:43:06 +0000 (18:43 +0000)]
PR libstdc++/51135
* libsupc++/unwind-cxx.h (__cxa_exception): Mark
exceptionDestructor by _GLIBCXX_CDTOR_CALLABI.
* libsupc++/eh_throw.cc (__cxa_throw): Mark destructor
function argument by _GLIBCXX_CDTOR_CALLABI.
* libsupc++/cxxabi.h (__cxa_throw): Likewise.
(_GLIBCXX_CDTOR_CALLABI): Add empty default
definition.
* config/os/mingw32-w64/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Define
for IA-32 target as __thiscall.
* config/os/mingw32/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182410
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Dec 2011 16:36:49 +0000 (16:36 +0000)]
PR tree-optimization/51575
* g++.dg/opt/pr51575.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182409
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Fri, 16 Dec 2011 16:29:52 +0000 (16:29 +0000)]
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/alpha/vms.h (USE_TM_CLONE_REGISTRY): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182408
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Fri, 16 Dec 2011 15:50:11 +0000 (15:50 +0000)]
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_use_linkage): Follow transparent alias.
(alpha_write_one_linkage): Use assemble_name to emit linkage name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182407
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Fri, 16 Dec 2011 15:33:18 +0000 (15:33 +0000)]
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/vms/t-vms (vms.o, vms-c.o): Force output filename.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182406
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Fri, 16 Dec 2011 15:25:30 +0000 (15:25 +0000)]
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/vms/vms.c (VMS_CRTL_GLOBAL): Define.
(vms_patch_builtins): Handle.
* config/vms/vms-crtlmap.map: Add an entry for environ.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182405
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Dec 2011 15:21:48 +0000 (15:21 +0000)]
PR debug/51557
* sel-sched-ir.c (create_copy_of_insn_rtx): Copy all notes
other than REG_EQUAL, REG_EQUIV and REG_LABEL_OPERAND.
* gcc.dg/pr51557.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182404
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 16 Dec 2011 15:20:35 +0000 (15:20 +0000)]
PR tree-optimization/51576
* tree-cfg.c (replace_uses_by): Call maybe_clean_or_replace_eh_stmt
even if fold_stmt didn't change anything.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182403
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 16 Dec 2011 14:45:49 +0000 (14:45 +0000)]
os: Fix fileInfoFromStat for Solaris.
From Rainer Orth.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182402
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 16 Dec 2011 14:31:14 +0000 (14:31 +0000)]
2011-12-16 Richard Guenther <rguenther@suse.de>
PR lto/51572
* dwarf2out.c (gen_type_die_with_usage): Use the context of
the TYPE_DECL as well if it is file-scope.
* gcc.dg/lto/pr51572-1_0.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182401
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 16 Dec 2011 00:19:07 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182398
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 15 Dec 2011 22:15:21 +0000 (22:15 +0000)]
2011-12-15 Paolo Carlini <paolo.carlini@oracle.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/51558
* include/bits/functional_hash.h (struct hash): Add static_assert.
* src/compatibility-c++0x.cc: Adjust compatibility definitions.
* testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182392
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 15 Dec 2011 21:55:31 +0000 (21:55 +0000)]
PR c++/51458
* decl.c (has_designator_problem): New.
(reshape_init_r): Check for improper use of
designated initializers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182391
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Thu, 15 Dec 2011 20:58:15 +0000 (20:58 +0000)]
* config/rl78/rl78.md (return): Rename to rl78_return.
* config/rl78/rl78.c (rl78_expand_epilogue): Use new name.
(rl78_expand_eh_epilogue): Use new name.
(rl78_calculate_death_notes): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182390
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Thu, 15 Dec 2011 20:51:19 +0000 (20:51 +0000)]
2011-12-15 Paul Thomas <pault@gcc.gnu.org>
* trans-expr.c (gfc_walk_function_expr): Detect elemental
procedure components as well as elemental procedures.
* trans-array.c (gfc_conv_procedure_call): Ditto.
* trans-decl.c (gfc_trans_deferred_vars): Correct erroneous
break for class pointers to continue.
2011-12-15 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/class_array_3.f03: Remove explicit indexing of
A%disp() to use scalarizer.
* gfortran.dg/class_array_9.f03: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182389
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 20:47:29 +0000 (20:47 +0000)]
* tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt
field, add pattern_def_seq.
(STMT_VINFO_PATTERN_DEF_STMT): Remove.
(STMT_VINFO_PATTERN_DEF_SEQ): Define.
(NUM_PATTERNS): Bump to 10.
* tree-vect-loop.c (vect_determine_vectorization_factor,
vect_transform_loop): Adjust for pattern def changing from a single
gimple stmt to gimple_seq.
* tree-vect-stmts.c (vect_analyze_stmt, new_stmt_vec_info,
free_stmt_vec_info): Likewise.
* tree-vect-patterns.c (vect_recog_over_widening_pattern,
vect_recog_vector_vector_shift_pattern,
vect_recog_mixed_size_cond_pattern, adjust_bool_pattern_cast,
adjust_bool_pattern, vect_mark_pattern_stmts): Likewise.
(vect_recog_sdivmod_pow2_pattern): New function.
(vect_vect_recog_func_ptrs): Add it.
* config/i386/sse.md (vcond<V_256:mode><VI_256:mode>,
vcond<V_128:mode><VI124_128:mode>, vcond<VI8F_128:mode>v2di):
Use general_operand instead of nonimmediate_operand for
operand 5 and no predicate for operands 1 and 2.
* config/i386/i386.c (ix86_expand_int_vcond): Optimize
x < 0 ? -1 : 0 and x < 0 ? 1 : 0 into vector arithmetic
resp. logical shift.
* gcc.dg/vect/vect-sdivmod-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182388
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 20:45:53 +0000 (20:45 +0000)]
PR c++/51463
* decl.c (grokdeclarator): Set DECL_INITIAL of decl
to error_mark_node to disallow NSDMI if declspecs->storage_class
is sc_static.
* parser.c (cp_parser_late_parse_one_default_arg): Return early
if default_arg is error_mark_node.
* g++.dg/cpp0x/pr51463.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182387
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Thu, 15 Dec 2011 19:30:08 +0000 (19:30 +0000)]
* config/avr/avr-protos.h (print_operand): Remove.
(print_operand_address): Remove.
* config/avr/avr.h (PRINT_OPERAND): Remove.
(PRINT_OPERAND_ADDRESS): Remove.
(PRINT_OPERAND_PUNCT_VALID_P): Remove.
* config/avr/avr.c (TARGET_PRINT_OPERAND): New hook define.
(TARGET_PRINT_OPERAND_ADDRESS): New hook define.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P): New hook define.
(print_operand_address): Rename to...
(avr_print_operand_address): ...this and make static.
(print_operand): Rename to...
(avr_print_operand): ...this and make static.
(avr_print_operand_punct_valid_p): New static function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182386
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 15 Dec 2011 19:02:51 +0000 (19:02 +0000)]
2011-12-15 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
locale, add sanity checks in case of grouping.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182385
138bc75d-0d04-0410-961f-
82ee72b054a4
toon [Thu, 15 Dec 2011 18:26:02 +0000 (18:26 +0000)]
2011-12-15 Toon Moene <toon@moene.org>
PR fortran/51310
* resolve.c (build_default_init_expr): Allow non-allocatable,
non-compile-time-constant-shape arrays to have a default
initializer.
* invoke.texi: Delete the restriction on automatic arrays not
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182384
138bc75d-0d04-0410-961f-
82ee72b054a4
andreast [Thu, 15 Dec 2011 17:52:02 +0000 (17:52 +0000)]
2011-12-15 Andreas Tobler <andreast@fgznet.ch>
* config/i386/freebsd.h (TARGET_ASM_FILE_END): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182382
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 17:29:25 +0000 (17:29 +0000)]
PR c/51360
* c-parser.c (c_parser_omp_clause_num_threads,
c_parser_omp_clause_schedule): Call mark_exp_read.
* semantics.c (finish_omp_clauses): For OMP_CLAUSE_NUM_THREADS_EXPR
and OMP_CLAUSE_SCHEDULE_CHUNK_EXPR call mark_rvalue_use.
* c-c++-common/gomp/pr51360.c: New test.
* g++.dg/gomp/pr51360.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182381
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 17:27:45 +0000 (17:27 +0000)]
PR middle-end/49806
* gcc.dg/tree-ssa-vrp47.c: Add -fdump-tree-dom2 to dg-options.
Check for x_? & y in dom2 dump and xfail the check in dom1 dump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182380
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 17:27:08 +0000 (17:27 +0000)]
PR tree-optimization/51117
* g++.dg/opt/pr51117.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182379
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 17:26:10 +0000 (17:26 +0000)]
* builtins.def (BUILT_IN_STPNCPY_CHK): New definition.
* builtins.c (expand_builtin, fold_builtin_4, maybe_emit_chk_warning):
Add BUILT_IN_STPNCPY_CHK case.
* gimple-fold.c (gimple_fold_builtin): Likewise.
* tree-object-size.c (pass_through_call): Likewise.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
call_may_clobber_ref_p_1): Likewise.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call,
find_func_clobbers): Likewise.
* tree.h (fold_builtin_strncpy_chk): Rename to fold_builtin_stxncpy_chk
* builtins.c (fold_builtin_strncpy_chk): Likewise.
Rewrite stpncpy_chk calls to strncpy_chk calls if returned value is
ignored.
* gcc.c-torture/execute/builtins/chk.h (stpncpy, stpncpy_disallowed):
New definitions.
* gcc.c-torture/execute/builtins/lib/chk.c (stpncpy_disallowed):
Likewise.
(stpncpy, __stpncpy_chk): New functions.
* gcc.c-torture/execute/builtins/stpncpy-chk-lib.c: New file.
* gcc.c-torture/execute/builtins/stpncpy-chk.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182378
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Dec 2011 16:38:08 +0000 (16:38 +0000)]
2011-12-15 Richard Guenther <rguenther@suse.de>
PR lto/51567
* gimple.c (compare_type_names_p): Also compare the TREE_CODE.
(iterative_hash_name): Also hash the TREE_CODE.
(gimple_types_compatible_p_1): For types with a TYPE_DECL
name and a type DECL_CONTEXT recurse to that type.
(iterative_hash_gimple_type): Likewise.
* g++.dg/lto/pr51567-1_0.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182377
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Thu, 15 Dec 2011 15:52:08 +0000 (15:52 +0000)]
gcc:
* config/rs6000/rs6000.c (rs6000_emit_prologue): Move update of
VRSave mask to save_world() when that is in use.
libgcc:
* config/rs6000/darwin-world.S (toplevel): Make it clear that this
function is not used for PPC64.
(save_world): Amend comments. Update the VRsave mask to reflect the
saved regs.
(rest_world): Update comments, do not clobber r10, do not use r8.
(eh_rest_world_r10): Amend comments, do not use r8.
(rest_world_eh_r7r8): Rename as local Lrest_world_eh_r7, since r8 is
no longer used, move restore of CR and target address to the end of
the routine.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182376
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Thu, 15 Dec 2011 15:40:25 +0000 (15:40 +0000)]
PR c++/51473 - ICE with invalid auto
gcc/cp/
PR c++/51473
* decl.c (check_tag_decl): Error out on auto specifier with no
declarator.
gcc/testsuite/
PR c++/51473
* g++.dg/cpp0x/auto30.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182375
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 15 Dec 2011 15:28:47 +0000 (15:28 +0000)]
2011-12-15 Arnaud Charlet <charlet@adacore.com>
* a-numaux-vms.ads, s-asthan-vms-ia64.adb, s-auxdec-vms-ia64.adb,
s-memory-vms_64.adb, s-memory-vms_64.ads, s-osinte-vms-ia64.adb,
s-osinte-vms-ia64.ads, s-tasdeb-vms.adb: New files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182374
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 15 Dec 2011 15:18:33 +0000 (15:18 +0000)]
2011-12-15 Tobias Burnus <burnus@net-b.de>
PR fortran/51550
PR fortran/47545
PR fortran/49050
PR fortran/51075
* resolve.c (resolve_fl_derived0): Print not-implemented error
for deferred-length character components.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182372
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 15 Dec 2011 14:53:55 +0000 (14:53 +0000)]
2011-12-15 Tobias Burnus <burnus@net-b.de>
* primary.c (gfc_match_varspec): Match array spec for
polymorphic coarrays.
(gfc_match_rvalue): If a symbol of unknown flavor has a
codimension, mark it as a variable.
* simplify.c (gfc_simplify_image_index): Directly call
simplify_cobound.
* trans-intrinsic.c (trans_this_image): Fix handling of
corank = 1 arrays.
2011-12-15 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray/poly_run_3.f90: New.
* gfortran.dg/coarray/poly_run_2.f90: Enable comment-out test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182371
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Dec 2011 14:50:25 +0000 (14:50 +0000)]
2011-12-15 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (run_gcc): In non-parallel mode remove
ltrans inputs immediately after processing them. In parallel
mode truncate the ltrans inputs in the make rule that processes
them if temporary files are not to be preserved.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182370
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Thu, 15 Dec 2011 14:43:02 +0000 (14:43 +0000)]
* config/arm/arm.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
* config/arm/arm.c (arm_memory_move_cost, arm_register_move_cost):
New functions.
(TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182369
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 15 Dec 2011 14:33:46 +0000 (14:33 +0000)]
2011-12-15 Vincent Pucci <pucci@adacore.com>
* aspects.adb, aspects.ads Aspect_Dimension and
Aspect_Dimension_System added
* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
case added
* gcc-interface/Make-lang.in: s-llflex, sem_dim added.
* impunit.adb :s-diflio and s-diinio defined as GNAT Defined
Additions to System.
* Makefile.rtl: s-diflio, s-diinio and s-llflex added
* par-prag.adb, sem_prag.adb: Pragma_Dimension removed
* rtsfind.ads: Expon_LLF added
* sem_aggr.adb (Resolve_Aggregate): handles aggregate for
Aspect_Dimension case
* sem_attr.adb (Resolve_Attribute): analyze dimension for
attribute
* sem_ch10.adb (Analyze_With_Clause): Avoid the warning messages
due to the use of a GNAT library for Dimension packages
* sem_ch13.adb (Analyze_Aspect_Specifications):
Aspect_Dimension and Aspect_Dimension_System cases added
(Check_Aspect_At_Freeze_Point): Aspect_Dimension and
Aspect_Dimension_System cases added
* sem_ch2.adb (Analyze_Identifier): analyze dimension for
identifier
* sem_ch3.adb (Analyze_Component_Declaration): analyze dimension
for component declaration (Analyze_Object_Declaration): analyze
dimension for object declaration (Analyze_Subtype_Declaration):
analyze dimension for subtype declaration
* sem_ch4.adb (Operator_Check): checks exponent is a rational
for dimensioned operand for a N_Op_Expon
* sem_ch5.adb (Analyze_Assignment): analyze dimension for
assignment (Analyze_Statements): removal of dimensions in all
statements
* sem_ch6.adb (Analyze_Return_Statement): analyze dimension for
return statement
* sem_ch8.adb (Analyze_Object_Renaming): analyze dimension for
object renaming
* sem_dim.adb, sem_dim.ads (Analyze_Aspect_Dimension):
analyze the expression for aspect dimension and store the
values in a Htable.
(Analyze_Aspect_Dimension_System): analyze
the expression for aspect dimension system and store the new
system in a Table.
(Analyze_Dimension): propagates dimension
(Expand_Put_Call_With_Dimension_String): add the dimension
string as a suffix of the numeric value in the output
(Has_Dimension): return True if the node has a dimension
(Remove_Dimension_In_Declaration): removal of dimension in the
expression of the declaration.
(Remove_Dimension_In_Statement): removal of dimension in statement
* sem_res.adb (Resolve): analyze dimension if the node
has already been analyzed.
(Resolve_Arithmetic_Op): analyze
dimension for arithmetic op.
(Resolve_Call): analyze dimension for function call.
(Resolve_Comparison_Op): analyze dimension for comparison op.
(Resolve_Equality_Op): analyze dimension for equality op.
(Resolve_Indexed_Component): analyze dimension for indexed component.
(Resolve_Op_Expon): analyze dimension for op expon.
(Resolve_Selected_Component): analyze dimension
for selected component.
(Resolve_Slice): analyze dimension for slice.
(Resolve_Unary_Op): analyze dimension for unary op
(Resolve_Type_Conversion): analyze dimension for type conversion
(Resolve_Unchecked_Type_Conversion): analyze dimension for
unchecked type conversion
* snames.ads-tmpl Name_Dimension, Name_Dimension_System,
Name_Dim_Float_IO, Name_Dim_Integer_IO,
Name_Generic_Elementary_Functions, Name_Sqrt added.
Pragma_Dimension removed
* s-diflio.adb, s-diflio.ads New GNAT library generic package
for dimensioned float type IO
* s-diinio.adb, s-diinio.ads New GNAT library generic package
for dimensioned integer type IO
* s-llflex.ads (Expon_LLF): exponentiation routine for long long
floats operand and exponent
2011-12-15 Robert Dewar <dewar@adacore.com>
* sem_aggr.adb: Minor comment addition.
2011-12-15 Bob Duff <duff@adacore.com>
* s-tasren.adb (Task_Count): Do not call Yield; E'Count is not a
task dispatching point.
* s-taprop-mingw.adb (Yield): Do not yield if Do_Yield is False.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182368
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Dec 2011 12:43:48 +0000 (12:43 +0000)]
2011-12-15 Richard Guenther <rguenther@suse.de>
PR lto/51564
* tree.h (REGISTER_DEFS_IN_THIS_STMT, NECESSARY,
STMT_IN_SSA_EDGE_WORKLIST): Remove no longer existing flag
uses documentation.
(TREE_ASM_WRITTEN): Update documentation to mention its use
on TYPE_DECLs from debug info generation.
* tree-streamer-out.c (pack_ts_base_value_fields): Stream
TREE_ASM_WRITTEN as always zero for TYPE_DECLs, similar to
all other types.
* g++.dg/lto/pr51564-1_0.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182367
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 15 Dec 2011 11:54:53 +0000 (11:54 +0000)]
2011-12-15 Robert Dewar <dewar@adacore.com>
* sigtramp-ppcvxw.c, sigtramp.h: Fix header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182366
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 15 Dec 2011 11:52:26 +0000 (11:52 +0000)]
2011-12-15 Javier Miranda <miranda@adacore.com>
* exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment
applied to a class-wide type under VM targets generate code which
invokes the function Get_Alignment to retrieve the value of the
alignment from the TSD.
* rtsfind.ads (RE_Get_Alignment): New entity.
2011-12-15 Robert Dewar <dewar@adacore.com>
* g-comlin.adb: Fix header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182365
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 15 Dec 2011 11:48:25 +0000 (11:48 +0000)]
2011-12-15 Tristan Gingold <gingold@adacore.com>
* gnatls.adb: Fix typo.
2011-12-15 Ed Falis <falis@adacore.com>
* s-tpopsp-vxworks.adb: Update comment.
2011-12-15 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb (Resolve_Array_Aggregate, Resolve_Aggr_Expr); If
the component type has predicates, generate corresponding check.
(Resolve_Record_Aggregate, Resolve_Aggr_Expr): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182364
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Thu, 15 Dec 2011 11:10:32 +0000 (11:10 +0000)]
PR target/51050
* config/avr/avr.c (expand_epilogue): Don't build SUBREG of fp.
(avr_prologue_setup_frame): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182363
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 15 Dec 2011 11:05:37 +0000 (11:05 +0000)]
PR debug/51517
* trans-decl.c (gfc_get_symbol_decl): Don't set DECL_INITAL on span.
(gfc_trans_deferred_vars): Instead add its runtime initialization
here.
* tree-ssa-coalesce.c (coalesce_ssa_name): For !optimize, test
!DECL_IGNORED_P instead of !DECL_ARTIFICIAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182362
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 15 Dec 2011 10:02:45 +0000 (10:02 +0000)]
c-family:
PR libstdc++/51365
* c-common.c (RID_IS_FINAL): Add.
* c-common.h (RID_IS_FINAL): Add.
cp:
PR libstdc++/51365
* cp-tree.h (CPTK_IS_FINAL): Add.
* parser.c (cp_parser_translation_unit): Handle RID_IS_FINAL.
(cp_parser_primary_expression, cp_parser_trait_expr): Likewise.
* semantics.c (trait_expr_value, finish_trait_expr): Handle
CPTK_IS_FINAL.
* cxx-pretty-print.c (pp_cxx_trait_expression): Likewise.
testsuite:
PR libstdc++/51365
* g++.dg/ext/is_final.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182360
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 15 Dec 2011 09:49:59 +0000 (09:49 +0000)]
PR libstdc++/51540
* include/bits/stl_numeric.h (partial_sum): Adjust doxygen comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182359
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Dec 2011 09:44:11 +0000 (09:44 +0000)]
2012-12-15 Richard Guenther <rguenther@suse.de>
Revert
PR lto/48437
* lto-streamer-out.c (tree_is_indexable): Exclude block-local
extern declarations.
PR lto/48508
PR lto/48437
* tree-streamer-out.c (streamer_write_chain): Stream DECL_EXTERNAL
VAR_DECLs and FUNCTION_DECLs locally.
* g++.dg/lto/pr48508-1_0.C: New testcase.
* g++.dg/lto/pr48508-1_1.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182358
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 15 Dec 2011 08:04:08 +0000 (08:04 +0000)]
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182357
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 15 Dec 2011 07:12:03 +0000 (07:12 +0000)]
syscall: Move Errno into its own file, for RTEMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182356
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 15 Dec 2011 03:24:05 +0000 (03:24 +0000)]
arm-linux: Add libitm support.
* config/arm/hwcap.h, config/arm/hwcap.cc: New files.
* config/arm/sjlj.S, config/arm/target.h: New files.
* config/generic/asmcfi.h (cfi_adjust_cfa_offset): New.
(cfi_rel_offset): New.
* config/linux/futex_bits.h: New file.
* config/linux/futex.cc: Include futex_bits.h here...
* config/linux/futex.h: ... not here.
* Makefile.am (libitm_la_SOURCES) <ARCH_ARM>: Add hwcap.cc.
* configure.ac (ARCH_AM): New conditional.
* Makefile.in, configure: Rebuild.
* configure.tgt: Handle ARM.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182355
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 15 Dec 2011 00:23:32 +0000 (00:23 +0000)]
arm: Set predicable on more instructions.
Make sure its set for all CMP, CMN, TST instructions,
which do work inside IT blocks.
* config/arm/arm.md (*addsi3_compare0_scratch): Set predicable.
(*compare_negsi_si, *compare_addsi2_op0): Likewise.
(*compare_addsi2_op1, *zeroextractsi_compare0_scratch): Likewise.
(*compareqi_eq0, *arm_cmpsi_insn, *arm_cmpsi_negshiftsi_si): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182353
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 15 Dec 2011 00:18:40 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182352
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 14 Dec 2011 22:27:04 +0000 (22:27 +0000)]
libgo: Update to weekly.2011-12-06.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182347
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 14 Dec 2011 22:26:24 +0000 (22:26 +0000)]
PR c++/51554
* semantics.c (cxx_eval_indirect_ref): Fix sanity check.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182346
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 14 Dec 2011 22:26:13 +0000 (22:26 +0000)]
PR c++/51248
* decl.c (copy_type_enum): Also update variants.
(finish_enum): Allow variants of complete enums.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182345
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Wed, 14 Dec 2011 21:49:52 +0000 (21:49 +0000)]
PR c++/51475 - ICE with invalid initializer-list
gcc/cp/
PR c++/51475
* call.c (struct conversion)<u.next>: Update comment.
(next_conversion): New static function.
(convert_like_real): Use it.
gcc/testsuite/
PR c++/51475
* g++.dg/cpp0x/initlist63.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182343
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 14 Dec 2011 18:49:16 +0000 (18:49 +0000)]
Check __GLIBC__ when using __SIGRTMIN
2011-12-14 H.J. Lu <hongjiu.lu@intel.com>
* generic-morestack.c (__generic_morestack_set_initial_sp): Check
__GLIBC__ instead of __linux__ when using __SIGRTMIN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182342
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 14 Dec 2011 15:41:54 +0000 (15:41 +0000)]
libgo: Update to weekly.2011-12-06.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182338
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Dec 2011 15:34:35 +0000 (15:34 +0000)]
2011-12-14 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (replace_uses_by): Fixup TREE_CONSTANT for
propagating all kinds of constants.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182337
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Dec 2011 15:31:24 +0000 (15:31 +0000)]
2011-12-14 Richard Guenther <rguenther@suse.de>
PR lto/51497
* lto-streamer-in.c (lto_read_body): Fixup local types
TYPE_CANONICAL and variant chain.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182336
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 14 Dec 2011 14:54:32 +0000 (14:54 +0000)]
runtime: Bump memory limit in gc_test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182332
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 14 Dec 2011 14:48:01 +0000 (14:48 +0000)]
compiler: Permit omitting &T in composite literal.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182331
138bc75d-0d04-0410-961f-
82ee72b054a4
hariharans [Wed, 14 Dec 2011 11:31:43 +0000 (11:31 +0000)]
* MAINTAINERS (picochip): Changed my email address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182330
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Dec 2011 11:26:13 +0000 (11:26 +0000)]
2011-12-14 Richard Guenther <rguenther@suse.de>
* tree.c (free_lang_data_in_type): Do not clear fields
dependent on debuginfo level setting.
(find_decls_types_r): Use TYPE_STUB_DECL rathern than TREE_CHAIN.
* tree.h (TYPE_STUB_DECL): Properly check that we access
a type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182329
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Wed, 14 Dec 2011 10:00:56 +0000 (10:00 +0000)]
libgcc/
PR target/50931
* config/avr/t-avr (LIB1ASMSRC): Add _mulpsi3, _mulsqipsi3.
* config/avr/lib1funcs.S (__mulpsi3, __mulsqipsi3): New functions.
gcc/
PR target/50931
* config/avr/avr.md (mulpsi3): New expander.
(*umulqihipsi3, *umulhiqipsi3): New insns.
(*mulsqipsi3.libgcc, *mulpsi3.libgcc): New insns.
(mulsqipsi3, *mulpsi3): New insn-and-splits.
(ashlpsi3): Turn to expander. Move insn code to...
(*ashlpsi3): ...this new insn.
testsuite/
PR target/50931
* gcc.target/avr/torture/int24-mul.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182328
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Dec 2011 09:50:38 +0000 (09:50 +0000)]
2011-12-14 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (replace_uses_by): Only mark blocks altered
that will make a difference. Only recompute ADDR_EXPR
invariantness if it could possibly have changed. Do so
before folding the statement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182327
138bc75d-0d04-0410-961f-
82ee72b054a4
dvyukov [Wed, 14 Dec 2011 09:28:05 +0000 (09:28 +0000)]
Revert the previous "Fix flags for edges from/to entry/exit basic blocks"
patch that caused regressions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182326
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Wed, 14 Dec 2011 08:46:13 +0000 (08:46 +0000)]
PR c++/51476 - ICE on PTRMEM_CST as template argument in c++11
gcc/cp/
PR c++/51476
* pt.c (convert_nontype_argument): Don't call maybe_constant_value
for PTRMEM_CST nodes.
gcc/testsuite/
PR c++/51476
* g++.dg/cpp0x/ptrmem-cst-arg1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182324
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 14 Dec 2011 05:18:39 +0000 (05:18 +0000)]
PR c++/51406
PR c++/51161
* typeck.c (build_static_cast_1): Fix cast of lvalue to
base rvalue reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182322
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 14 Dec 2011 01:36:11 +0000 (01:36 +0000)]
compiler: Move import of Go export data to gcc side of interface.
* go-backend.c: #include "simple-object.h" and "intl.h".
(GO_EXPORT_SEGMENT_NAME): Define if not defined.
(GO_EXPORT_SECTION_NAME): Likewise.
(go_write_export_data): Use GO_EXPORT_SECTION_NAME.
(go_read_export_data): New function.
* go-c.h (go_read_export_data): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182321
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 14 Dec 2011 00:36:15 +0000 (00:36 +0000)]
/cp
2011-12-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51464
* semantics.c (begin_lambda_type): Check begin_class_definition return
value for error_mark_node.
* parser.c (cp_parser_lambda_expression): Check begin_lambda_type
return value for error_mark_node.
/testsuite
2011-12-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51464
* g++.dg/cpp0x/lambda/lambda-ice6.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182320
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 14 Dec 2011 00:19:11 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182319
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 23:15:36 +0000 (23:15 +0000)]
runtime: Change gc_test to test only newly allocated memory.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182315
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 22:25:30 +0000 (22:25 +0000)]
mksysinfo.sh: Ensure that IPV6 constants and types are defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182314
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 22:07:25 +0000 (22:07 +0000)]
syscall: Don't build wait status functions on RTEMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182313
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 13 Dec 2011 21:59:39 +0000 (21:59 +0000)]
* lto-streamer-out.c (write_symbol): Use proper 64-bit host type.
* lto-cgraph.c (input_cgraph_opt_section): Use 'int' for offsets.
* lto-streamer-in.c (lto_read_body): Likewise.
(lto_input_toplevel_asms): Likewise.
* lto-section-in.c (lto_create_simple_input_block): Likewise.
* ipa-inline-analysis.c (inline_read_section): Likewise.
* ipa-prop.c (ipa_prop_read_section): Likewise.
* df.h (DF_NOTE): Fix typo in comment.
lto/
* lto.h (lto_parse_hex): Delete.
* lto.c (lto_read_decls): Use 'int' for offsets.
(lto_parse_hex): Make static and return proper 64-bit host type.
(lto_resolution_read): Use proper 64-bit host type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182310
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 21:59:26 +0000 (21:59 +0000)]
runtime: RTEMS build fixes.
From Joel Sherrill.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182309
138bc75d-0d04-0410-961f-
82ee72b054a4
fabien [Tue, 13 Dec 2011 21:18:03 +0000 (21:18 +0000)]
revert an unattended change about access declaration
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182308
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 13 Dec 2011 20:32:26 +0000 (20:32 +0000)]
* trans-mem.c (ipa_tm_create_version_alias): Set DECL_CONTEXT and
DECL_LANG_SPECIFIC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182307
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Tue, 13 Dec 2011 20:22:59 +0000 (20:22 +0000)]
2011-12-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* regmove.c (fixup_match_2): Only access call_used_regs with hard
regs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182306
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 20:10:36 +0000 (20:10 +0000)]
* config/posix/rwlock.cc (gtm_rwlock::write_lock_generic): Fix
signed/unsigned comparison werror.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182302
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 20:07:01 +0000 (20:07 +0000)]
Revert two unintended commits
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182301
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Tue, 13 Dec 2011 20:00:18 +0000 (20:00 +0000)]
2011-12-13 Andrew Pinski <apinski@cavium.com>
Adam Nemet <anemet@caviumnetworks.com>
* config/mips/mips-cpus.def: Add Octeon2.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.md (define_attr "cpu"): Add Octeon2.
* config/mips/driver-native.c (host_detect_local_cpu): Support Octeon2 also.
* config/mips/octeon.md (octeon_arith): Add Octeon2.
(octeon_condmove): Likewise.
(octeon_load): Rename to ..
(octeon_load_o1): this.
(octeon_load_o2): New reserve.
(octeon_cop_o2): New reserve.
(octeon_store): Match Octeon2 also.
(octeon_brj): Rename to ..
(octeon_brj_o1): this.
(octeon_brj_o2): New reserve.
(octeon_imul3): Rename to ...
(octeon_imul3_o1): this.
(octeon_imul3_o2): New reserve.
(octeon_imul): Rename to ...
(octeon_imul_o1): this.
(octeon_imul_o2): New reserve.
(octeon_mfhilo): Rename to ...
(octeon_mfhilo_o1): This.
(octeon_mfhilo_o2): New reserve.
(octeon_imadd): Rename to ...
(octeon_imadd_o1): this.
(octeon_imadd_o2): New reserve.
(octeon_idiv): Rename to ..
(octeon_idiv_o1): This.
(octeon_idiv_o2_si): New reserve.
(octeon_idiv_o2_di): Likewise.
(octeon_unknown): Match Octeon2 also.
* config/mips/mips.c (mips_rtx_cost_data): Add Octeon2 cost data.
(mips_issue_rate): Octeon2 can issue 2 at a time.
* config/mips/mips.h (TARGET_OCTEON): Match Octeon2 also.
(TARGET_OCTEON2): New define.
(TUNE_OCTEON): Match Octeon2 also.
2011-12-13 Andrew Pinski <apinski@cavium.com>
Adam Nemet <anemet@caviumnetworks.com>
* gcc.target/mips/mips.exp (mips_option_groups): Fix debug. Add
-fdump-* options.
* gcc.target/mips/octeon2-pipe-1.c: New testcase.
* gcc.target/mips/octeon-pipe-1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182300
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 19:58:56 +0000 (19:58 +0000)]
arm: Implement vec_perm and vec_perm_const for NEON.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182299
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 19:58:49 +0000 (19:58 +0000)]
Delete VEC_INTERLEAVE_*_EXPR.
* tree.def (VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): Remove.
* gimple-pretty-print.c (dump_binary_rhs): Don't handle
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
* expr.c (expand_expr_real_2): Likewise.
* tree-cfg.c (verify_gimple_assign_binary): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* fold-const.c (fold_binary_loc): Likewise.
* doc/generic.texi (VEC_INTERLEAVE_HIGH_EXPR,
VEC_INTERLEAVE_LOW_EXPR): Remove documentation.
* optabs.c (optab_for_tree_code): Don't handle
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
(expand_binop, init_optabs): Remove vec_interleave_high_optab
and vec_interleave_low_optab.
* genopinit.c (optabs): Likewise.
* optabs.h (OTI_vec_interleave_high, OTI_vec_interleave_low): Remove.
(vec_interleave_high_optab, vec_interleave_low_optab): Remove.
* doc/md.texi (vec_interleave_high, vec_interleave_low): Remove
documentation.
* tree-vect-stmts.c (gen_perm_mask): Renamed to...
(vect_gen_perm_mask): ... this. No longer static.
(perm_mask_for_reverse, vectorizable_load): Adjust callers.
* tree-vectorizer.h (vect_gen_perm_mask): New prototype.
* tree-vect-data-refs.c (vect_strided_store_supported): Don't try
VEC_INTERLEAVE_*_EXPR, use can_vec_perm_p instead of
can_vec_perm_for_code_p.
(vect_permute_store_chain): Generate VEC_PERM_EXPR with interleaving
masks instead of VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
* config/i386/i386.c (expand_vec_perm_interleave2): If
expand_vec_perm_interleave3 would handle it, return false.
(expand_vec_perm_broadcast_1): Don't use vec_interleave_*_optab.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182298
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 19:22:44 +0000 (19:22 +0000)]
sparc: Default memory model to TSO for Linux and Solaris.
* config/sparc/tso.h: New file.
* config.gcc (sparc-*-linux*, sparc*-*-solaris2*): Use it.
* config/sparc/sparc.c (sparc_option_override): Honor
SUBTARGET_DEFAULT_MEMORY_MODEL.
* config/sparc/sparc.h (SUBTARGET_DEFAULT_MEMORY_MODEL): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182297
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 19:18:34 +0000 (19:18 +0000)]
libgo: Solaris compatibility patches.
From Rainer Orth.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182296
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 19:16:27 +0000 (19:16 +0000)]
libgo: Update to weekly.2011-12-02.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182295
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Dec 2011 19:11:25 +0000 (19:11 +0000)]
libitm: Conversion to c++11 atomics.
* local_atomic: New file.
* libitm_i.h: Include it.
(gtm_thread::shared_state): Use atomic template.
* beginend.cc (GTM::gtm_clock): Use atomic template.
(global_tid): Use atomic template if 64-bit atomics available.
(gtm_thread::gtm_thread): Update shared_state access.
(gtm_thread::trycommit): Likewise.
(choose_code_path): Update global_tid access.
* method-gl.cc (gl_mg::orec): Use atomic template. Update all users.
* stmlock.h (GTM::gtm_clock): Use atomic template.
(gtm_get_clock, gtm_inc_clock): Update accesses.
* config/linux/rwlock.cc (gtm_rwlock::read_lock): Remove
redundant __sync_synchronize after atomic shared_state access.
* config/posix/rwlock.cc (gtm_rwlock::read_lock): Likewise.
(gtm_rwlock::write_lock_generic): Likewise.
(gtm_rwlock::read_unlock): Likewise.
* config/alpha/target.h (atomic_read_barrier): Remove.
(atomic_write_barrier): Remove.
* config/x86/target.h (atomic_read_barrier): Remove.
(atomic_write_barrier): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182294
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 18:52:19 +0000 (18:52 +0000)]
compiler: Fix multiple conversions to different named slices.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182293
138bc75d-0d04-0410-961f-
82ee72b054a4
fabien [Tue, 13 Dec 2011 18:46:58 +0000 (18:46 +0000)]
gcc/testsuite/ChangeLog
2011-12-11 Fabien Chene <fabien@gcc.gnu.org>
PR c++/14258
* g++.dg/template/using16.C: New.
* g++.dg/template/using17.C: New.
gcc/cp/ChangeLog
2011-12-11 Fabien Chene <fabien@gcc.gnu.org>
PR c++/14258
* cp-tree.h (USING_DECL_TYPENAME_P): New macro.
* parser.c (cp_parser_nonclass_name): Handle using declarations
that refer to a dependent type.
(cp_parser_using_declaration): Set USING_DECL_TYPENAME_P to 1 if
the using declaration refers to a dependent type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182292
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 13 Dec 2011 18:09:56 +0000 (18:09 +0000)]
compiler: Permit converting between string and named []byte/[]rune.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182291
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 13 Dec 2011 17:49:55 +0000 (17:49 +0000)]
PR/51443
* trans-mem.c (struct diagnose_tm): Remove saw_unsafe.
(diagnose_tm_1): Same.
(ipa_tm_execute): Do not test tm_may_enter_irr before we set it.
(ipa_tm_scan_irr_function): Return gracefully when no
DECL_STRUCT_FUNCTION.
(ipa_tm_scan_irr_block): Believe the user on TM attributes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182290
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Tue, 13 Dec 2011 16:08:14 +0000 (16:08 +0000)]
2011-12-13 Martin Jambor <mjambor@suse.cz>
PR middle-end/50628
* tree-sra.c (propagate_subaccesses_across_link): Do not propagate
sub-accesses of scalar accesses.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182289
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Tue, 13 Dec 2011 15:43:36 +0000 (15:43 +0000)]
2011-12-13 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/51362
* ipa-cp.c (estimate_local_effects): When estimated size of a
specialized clone is zero, bump it to one.
* testsuite/gcc.dg/ipa/pr51362.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182288
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 13 Dec 2011 15:00:09 +0000 (15:00 +0000)]
PR testsuite/51524
* gcc.target/i386/bmi2-mulx32-1.c (gen_mulx): Add attribute regparm(2).
* gcc.target/i386/bmi2-mulx32-2.c (calc_mulx_u32): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182287
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 13 Dec 2011 14:43:44 +0000 (14:43 +0000)]
2011-12-13 Richard Guenther <rguenther@suse.de>
PR lto/48354
* tree.c (find_decls_types_r): Also walk DECL_ORIGINAL_TYPE.
* tree-streamer-in.c (lto_input_ts_decl_non_common_tree_pointers):
Stream DECL_ORIGINAL_TYPE.
* tree-streamer-out.c (write_ts_decl_non_common_tree_pointers):
Likewise.
lto/
* lto.c (lto_ft_decl_non_common): When we merged DECL_ORIGINAL_TYPE
with the type of the TYPE_DECL clear DECL_ORIGINAL_TYPE.
* g++.dg/lto/pr48354-1_0.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182286
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Tue, 13 Dec 2011 14:07:26 +0000 (14:07 +0000)]
life -> live; one favourite typo of mine.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182285
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Dec 2011 14:00:58 +0000 (14:00 +0000)]
Revert
2011-12-12 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/51481
* gimple-fold.c (gimple_fold_call): Call
maybe_clean_or_replace_eh_stmt. Avoid optimization if stmt has EH
edges, but gimple_fold_builtin result can't throw.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182284
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Tue, 13 Dec 2011 13:59:35 +0000 (13:59 +0000)]
PR tree-optimization/51117
* tree-eh.c (sink_clobbers): New function.
(execute_lower_eh_dispatch): Call it for BBs ending with
internally throwing RESX.
* cfgexpand.c (add_scope_conflicts_1): Add all conflicts only
at the first real instruction.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182283
138bc75d-0d04-0410-961f-
82ee72b054a4