- 26 Sep, 2011 14 commits
-
-
re PR target/50465 ([avr] Use insn attribute to depict if and how instruction lengths have to be adjusted) PR target/50465 * config/avr/avr-protos.h (output_reload_insisf): Don't pass insn. * config/avr/avr.md (*reload_insi, *reload_insf): Change call to output_reload_insisf. (adjust_len): Set default to "no". Remove alternative "yes". Add alternatives: "mov8", "mov16", "mov32", "ashlqi", "ashrqi", "lshrqi", "ashlhi", "ashrhi", "lshrhi", "ashlsi, "ashrsi", "lshrsi". (*movqi, *movhi, *movsi, *ashlqi3, ashlhi3, ashlsi3, *ashlhi3_const, *ashlsi3_const, ashrqi3, ashrhi3, ashrsi3, *ashrhi3_const, *ashrsi3_const, *lshrqi3, lshrhi3, *lshrhi3_const, *lshrsi3_const): Set attribute "adjust_len". * config/avr/avr.c (output_reload_insisf): Remove parameter "insn". (output_movsisf): Don't pass insn to output_reload_insisf. (adjust_insn_length): Handle new alternatives to adjust_len. Remove handling of ADJUST_LEN_YES. Clean-up code. From-SVN: r179191
Georg-Johann Lay committed -
From-SVN: r179190
Eric Botcazou committed -
From-SVN: r179189
Rainer Orth committed -
ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of may_trap_p to detect loads that may trap of... * ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of may_trap_p to detect loads that may trap of fault. From-SVN: r179188
Eric Botcazou committed -
utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the dereference of the pointer to the storage area. * gcc-interface/utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the dereference of the pointer to the storage area. Remove useless type conversions and factor out common code. From-SVN: r179187
Eric Botcazou committed -
* gcc-interface/utils.c (maybe_unconstrained_array): Declare TYPE local variable and use it throughout. <UNCONSTRAINED_ARRAY_TYPE>: Add 'break' at the end. <RECORD_TYPE>: Do not unconditionally convert to the unpadded type as a first step. Also convert to the unpadded type as a last step. From-SVN: r179186
Eric Botcazou committed -
* gcc-interface/gigi.h (create_subprog_decl): Replace TREE_CHAIN with DECL_CHAIN in comment. * gcc-interface/trans.c (gigi): Likewise. (Attribute_to_gnu): Likewise. (build_function_stub): Likewise. (gnat_to_gnu): Likewise. * gcc-interface/utils.c (create_subprog_decl): Likewise. (convert_vms_descriptor64): Likewise. (convert_vms_descriptor32): Likewise. From-SVN: r179185
Eric Botcazou committed -
* gcc-interface/trans.c (assoc_to_constructor): Minor tweaks. * gcc-interface/utils2.c (build_simple_component_ref): Fix formatting issues. Use COMPLETE_TYPE_P in assertion. Also set TREE_READONLY if the type of the record is TYPE_READONLY. From-SVN: r179184
Eric Botcazou committed -
sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN OUT formal parameter which is of an... * sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN OUT formal parameter which is of an null-exclusion access subtype. Co-Authored-By: Robert Dewar <dewar@adacore.com> From-SVN: r179183
Eric Botcazou committed -
* gcc-interface/ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro. * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Set the flag. (gnat_to_gnu_param): Likewise. * gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Invoke maybe_unconstrained_array instead of doing the work manually. (maybe_unconstrained_array): Propagate the TREE_THIS_NOTRAP flag. * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: If operand is a DECL with the flag, set TREE_THIS_NOTRAP on the reference. (gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag. (gnat_stabilize_reference): Likewise. From-SVN: r179182
Eric Botcazou committed -
* config/avr/avr-protos.h (output_reload_inhi): Change prototype. * config/avr/avr.md (adjust_len): Add "reload_in16" alternative. (*reload_inhi): Use it. Adapt call to output_reload_inhi to new prototype. (*movhi): Split constraint alternative "r,rL" into "r,r" and "r,L". * config/avr/avr.c: Rename output_reload_insisf_1 to output_reload_in_const. (avr_popcount_each_byte): Handle SFmode, too. (output_reload_in_const): Change so it can handle HI loads, too. Use avr_popcount_each_byte to work out if scratch register must be created on the fly. (output_reload_inhi): Rewrite using output_reload_in_const and... (output_movhi): ...use it to print constants' loads. (adjust_insn_length): New case ADJUST_LEN_RELOAD_IN16. Cleanup code. From-SVN: r179181
Georg-Johann Lay committed -
* gcc-interface/ada-tree.h (TYPE_NULL_BOUNDS): New macro. (SET_TYPE_NULL_BOUNDS): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set again TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template. * gcc-interface/trans.c (Identifier_to_gnu): Return initializers of fat pointer types. * gcc-interface/utils.c (create_var_decl_1): If the object is external, check that the initializer is a valid constant expression for use in initializing a static variable. Add missing guard. (update_pointer_to): Adjust TYPE_NULL_BOUNDS if set. (convert_to_fat_pointer): In the null fat pointer case, build a valid pointer for the bounds. * gcc-interface/utils2.c (compare_fat_pointers): New function. (build_binary_op) <EQ_EXPR>: Call it to compare fat pointers. From-SVN: r179180
Eric Botcazou committed -
* parser.c (inject_this_parameter): Split out from cp_parser_late_return_type_opt. (cp_parser_class_specifier_1): Use it for NSDMIs. * tree.c (bot_replace): Replace NSDMI 'this' with real 'this'. From-SVN: r179179
Jason Merrill committed -
From-SVN: r179178
GCC Administrator committed
-
- 25 Sep, 2011 18 commits
-
-
* configure.ac: Add feature check to make sure the assembler supports the FMAF, HPC, and VIS 3.0 instructions found on Niagara-3 and later cpus. * configure: Rebuild. * config.in: Likewise. * config/sparc/sparc.opt: New option '-mfmaf'. * config/sparc/sparc.md: Add float fused multiply-add patterns. * config/sparc/sparc.h (AS_NIAGARA3_FLAG): New macro. (ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Use it, as needed. * config/sparc/sol2.h (ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Likewise. * config/sparc/sparc.c (sparc_option_override): Turn MASK_FMAF on by default for Niagara-3 and later. Turn it off if TARGET_FPU is disabled. (sparc_rtx_costs): Handle 'FMA'. * doc/invoke.texi: Document -mfmaf. From-SVN: r179174
David S. Miller committed -
* config/sparc/constraints.md (C, P, Z): New constraints for const_doube, const_int, and const_vector "all ones" values. Make unused constraint letters comment match reality. * config/sparc/predicates.md (const_all_ones_operand, register_or_zero_or_all_ones_operand): New predicates. * config/sparc/sparc.c (sparc_expand_move): Allow all ones as well as zero constants when VIS. (sparc_legitimate_constant_p): Likewise. * config/sparc/sparc.md (movsi_insn): Add fones alternative. (movsf_insn): Likewise (movdi_insn_sp64): Add fone alternative. (movdf_insn_sp32_v9): Likewise. (movdf_insn_sp64): Likewise. From-SVN: r179173
David S. Miller committed -
2011-09-25 Paolo Carlini <paolo.carlini@oracle.com> Revert (no longer necessary post r179130): 2010-04-27 Fabien Chêne <fabien.chene@gmail.com> * testsuite/util/testsuite_error.h: Add empty default constructor to __gnu_test::test_category and __gnu_test::test_derived_category. * src/future.cc: Add empty default constructor to future_error_category. * src/system_error.cc: Add default ctor to generic_error_category and system_error_category. From-SVN: r179172
Paolo Carlini committed -
* gcc-interface/ada-tree.h (TREE_THIS_NOTRAP): Redefine. * gcc-interface/trans.c (Identifier_to_gnu): Factor out common code in the by-ref case. Do not set TREE_READONLY on a renamed object. Set TREE_THIS_NOTRAP on UNCONSTRAINED_ARRAY_REF nodes. (Attribute_to_gnu) <Attr_Length>: Expand the use of the parameter cache to the indirect case. * gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Preserve the TREE_THIS_NOTRAP flag. From-SVN: r179171
Eric Botcazou committed -
* gcc-interface/trans.c (Loop_Statement_to_gnu): In the case of an iteration scheme, always generate the do-while form if optimization is enabled. Use more straightforward test at the end. From-SVN: r179169
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Subtype>: Use XNEW instead of xmalloc. Do not build useless pointer type. <E_Anonymous_Access_Subprogram_Type>: Use XNEW instead of xmalloc. * gcc-interface/trans.c (gnat_to_gnu) <N_Raise_Constraint_Error>: Tidy. * gcc-interface/utils2.c (build_unary_op): Remove local variable. From-SVN: r179168
Eric Botcazou committed -
decl.c (gnat_to_gnu_entity): Do not promote the alignment if this doesn't prevent BLKmode access to the object. * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not promote the alignment if this doesn't prevent BLKmode access to the object. From-SVN: r179167
Eric Botcazou committed -
tree-ssa-structalias.c (intra_create_variable_infos): Treat TYPE_RESTRICT REFERENCE_TYPE parameters like restricted DECL_BY_REFERENCE... * tree-ssa-structalias.c (intra_create_variable_infos): Treat TYPE_RESTRICT REFERENCE_TYPE parameters like restricted DECL_BY_REFERENCE parameters. * g++.dg/tree-ssa/restrict2.C: New test. From-SVN: r179166
Jakub Jelinek committed -
* tree-eh.c (cleanup_empty_eh): Allow a call to __builtin_stack_restore if there is no outgoing edge. * tree-scalar-evolution.c (simple_iv): Accept all kinds of pointer and integral types. From-SVN: r179165
Eric Botcazou committed -
* tree-vect-slp.c (vect_slp_analyze_bb_1): Split out core part of vect_analyze_bb here. (vect_analyze_bb): Loop over vector sizes calling vect_analyze_bb_1. From-SVN: r179164
Ira Rosen committed -
2011-09-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50280 * g++.dg/template/bitfield1.C: New. From-SVN: r179163
Paolo Carlini committed -
* tree-data-ref.c (dr_analyze_innermost): Add new argument. Allow not simple iv if analyzing basic block. (create_data_ref): Update call to dr_analyze_innermost. (stmt_with_adjacent_zero_store_dr_p, ref_base_address): Likewise. * tree-loop-distribution.c (generate_memset_zero): Likewise. * tree-predcom.c (find_looparound_phi): Likewise. * tree-data-ref.h (dr_analyze_innermost): Add new argument. From-SVN: r179161
Ira Rosen committed -
* config/sparc/sparc.h (FIRST_PSEUDO_REGISTER): Bump to 103. (SPARC_GSR_REG): Define. (FIXED_REGISTERS): Mark GSR as fixed. (CALL_USED_REGISTERS): Mark GSR as call used. (HARD_REGNO_NREGS): GSR is always 1 register. (REG_CLASS_CONTENTS): Add GSR to ALL_REGS. (REG_ALLOC_ORDER, REG_LEAF_ALLOC_ORDER): Add GSR to the end. (REGISTER_NAMES): Add "%gsr". * config/sparc/sparc.md (UNSPEC_ALIGNADDR, UNSPEC_ALIGNADDRL): Delete. (UNSPEC_WRGSR): New unspec. (GSR_REG): New constant. (type): Add new insn type 'gsr'. (fpack16_vis, fpackfix_vis, fpack32_vis, faligndata<V64I:MODE>_vis)): Add use of GSR_REG. (wrgsr_vis, *wrgsr_sp64, wrgsr_v8plus, rdgsr_vis, *rdgsr_sp64, rdgsr_v8plus): New expanders and insns. (alignaddr<P:mode>_vis, alignaddrl<P:mode>_vis): Reimplement using patterns which show that this is a plus in addition to a modification of GSR_REG, instead of an unspec. * config/sparc/ultra1_2.md: Handle 'gsr'. * config/sparc/ultra3.md: Likewise. * config/sparc/niagara.md: Likewise. * config/sparc/niagara2.md: Likewise. * config/sparc/sparc.c (leaf_reg_remap, sparc_leaf_regs): Fill out end of table. (sparc_option_override): Make -mvis imply -mv8plus. (hard_32bit_mode_classes, hard_64bit_mode_classes): Add entries for %gsr. (sparc_vis_init_builtins): Build __builtin_vis_write_gsr and __builtin_vis_read_gsr. (sparc_expand_buildin): Handle builtins that take one argument and return void. (sparc_fold_builtin): Never fold writes to %gsr. * config/sparc/visintrin.h (__vis_write_gsr, __vis_read_gsr): New. * doc/extend.texi: Document new VIS intrinsics. From-SVN: r179159
David S. Miller committed -
* except.c (expr_noexcept_p): Split out from finish_noexcept_expr. * cp-tree.h: Declare it. * method.c (walk_field_subobs): Use it. From-SVN: r179158
Jason Merrill committed -
* init.c (perform_member_init): Instantiate NSDMI here. * pt.c (tsubst_decl) [FIELD_DECL]: Not here. From-SVN: r179157
Jason Merrill committed -
* parser.h (cp_unparsed_functions_entry): Add nsdmis field. * parser.c (unparsed_nsdmis, cp_parser_save_nsdmi): New. (cp_parser_late_parse_one_default_arg): Split out from cp_parser_late_parsing_default_args. (cp_parser_late_parsing_nsdmi): New. (push_unparsed_function_queues): Set it. (cp_parser_parameter_declaration): Save the '=' token. (cp_parser_template_parameter): Likewise. (cp_parser_default_argument): Call cp_parser_initializer rather than cp_parser_initializer_clause. (cp_parser_class_specifier_1): Parse unparsed_nsdmis. (cp_parser_member_declaration): Handle nsdmis. * decl2.c (grokfield): Handle DEFAULT_ARG for a function. From-SVN: r179156
Jason Merrill committed -
* cp-tree.h (enum cpp_warn_str): Add CPP0X_NSDMI. * error.c (maybe_warn_cpp0x): Handle it. * call.c (convert_like_real) [ck_user]: Don't complain about using an explicit constructor for direct-initialization. * class.c (check_field_decl): Fix ancient typo. (check_field_decls): NSDMIs make the default ctor non-trivial. * decl.c (cp_finish_decl): Record NSDMI. (grokdeclarator): Allow NSDMI. * decl2.c (grokfield): Allow NSDMI. Correct LOOKUP flags. * init.c (perform_member_init): Use NSDMI. * method.c (walk_field_subobs): Check for NSDMI. * parser.c (cp_parser_member_declaration): Parse { } init. * semantics.c (register_constexpr_fundef): Don't talk about a return statement in a constexpr constructor. (cxx_eval_call_expression): Check DECL_INITIAL instead of DECL_SAVED_TREE. From-SVN: r179155
Jason Merrill committed -
From-SVN: r179154
GCC Administrator committed
-
- 24 Sep, 2011 7 commits
-
-
2011-09-24 John Salmon <john.salmon@deshaw.com> PR libstdc++/50510 * include/bits/random.tcc (seed_seq::generate): Fix computation. From-SVN: r179149
John Salmon committed -
* gcc-interface/Makefile.in (darwin): Do not issue the '-flat_namespace' linker flag during Ada build. * mlib-tgt-specific-darwin.adb: Remove '-flat_namespace' flag from the default shared library options. From-SVN: r179148
Iain Sandoe committed -
From-SVN: r179147
Basile Starynkevitch committed -
From-SVN: r179146
Jason Merrill committed -
2011-09-24 John Salmon <john.salmon@deshaw.com> PR libstdc++/50509 * include/bits/random.tcc (seed_seq::generate): Fix computation. From-SVN: r179144
John Salmon committed -
/cp 2011-09-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44267 * class.c (build_base_path): Add a tsubst_flags_t parameter. (convert_to_base): Adjust call. * typeck.c (build_class_member_access_expr, get_member_function_from_ptrfunc, build_static_cast_1): Likewise. * init.c (dfs_initialize_vtbl_ptrs, emit_mem_initializers): Likewise. * method.c (do_build_copy_constructor, do_build_copy_assign): Likewise. * rtti.c (build_dynamic_cast_1): Likewise. * typeck2.c (build_scoped_ref, build_m_component_ref): Likewise. * call.c (build_over_call, build_special_member_call): Likewise. * cvt.c (cp_convert_to_pointer, convert_to_pointer_force, build_up_reference): Likewise. * cp-tree.h (build_base_path): Adjust declaration. /testsuite 2011-09-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44267 * g++.dg/template/sfinae28.C: New. From-SVN: r179141
Paolo Carlini committed -
From-SVN: r179138
GCC Administrator committed
-
- 23 Sep, 2011 1 commit
-
-
* go.test/go-test.exp (errchk): Handle more cases of getting correct Tcl backslash quoting in regular expressions in test file. Also fix some tests to match gccgo error messages. From-SVN: r179134
Ian Lance Taylor committed
-