Age | Commit message (Collapse) | Author | Files | Lines |
|
libgcc/:
* generic-morestack.c: Include <string.h>.
(uintptr_type): Define.
(struct initial_sp): Add dont_block_signals field. Reduce size of
extra array by 1.
(allocate_segment): Set prev field to NULL. Don't set
__morestack_current_segment or __morestack_segments.
(__generic_morestack): Update current->prev and *pp after calling
allocate_segment.
(__morestack_block_signals): Don't do anything if
dont_block_signals is set.
(__morestack_unblock_signals): Likewise.
(__generic_findstack): Check for initial_sp == NULL. Add casts to
uintptr_type.
(__splitstack_block_signals): New function.
(enum __splitstack_content_offsets): Define.
(__splitstack_getcontext, __splitstack_setcontext): New functions.
(__splitstack_makecontext): New function.
(__splitstack_block_signals_context): New function.
(__splitstack_find_context): New function.
* config/i386/morestack.S (__morestack_get_guard): New function.
(__morestack_set_guard, __morestack_make_guard): New functions.
* libgcc-std.ver.in: Add new functions to GCC_4.7.0.
gcc/testsuite/:
* lib/target-supports.exp (check_effective_target_ucontext_h): New
procedure.
* gcc.dg/split-5.c: New test.
From-SVN: r181234
|
|
2011-11-09 Tobias Burnus <burnus@net-b.de>
* symbol.c (clear_sym_mark, traverse_ns): Remove functions.
(count_st_nodes, do_traverse_symtree, fill_st_vector): New functions.
(gfc_traverse_symtree, gfc_traverse_ns): Call do_traverse_symtree.
From-SVN: r181232
|
|
* cp-tree.h (TYPE_ALIAS_P, TYPE_TEMPLATE_INFO): Don't crash on
NULL TYPE_NAME.
From-SVN: r181231
|
|
From-SVN: r181226
|
|
PR c++/51029
* class.c (build_base_path): Don't ICE in fold_non_dependent_expr.
From-SVN: r181225
|
|
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_c++11): New.
(check_effective_target_c++98): New.
* lib/g++-dg.exp (g++-dg-runtest): New.
* [various.exp]: Use g++-dg-runtest.
* [various.C]: Fix for C++11 mode.
gcc/cp/
* Make-lang.in (check_g++_parallelize): Add dg-torture.exp.
(check-c++0x): Obsolete.
/
* Makefile.def (language=c++): Remove check-c++0x.
* Makefile.in (check-gcc-c++): Regenerate.
From-SVN: r181222
|
|
From-SVN: r181221
|
|
From-SVN: r181220
|
|
* pt.c (convert_nontype_argument): Only integral arguments
get early folding.
From-SVN: r181219
|
|
parsing failed.
* parser.c (cp_parser_alias_declaration): Don't do semantic
processing if parsing failed.
From-SVN: r181218
|
|
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR preprocessor/51061
* incpath.c (merge_include_chains): Make sure to not pass null
pointers to free_path.
From-SVN: r181216
|
|
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* init.c (build_new_1, build_vec_delete_1, build_delete):
Use nullptr_node.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New.
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Option Summary, C++ Language Options]):
Add -Wzero-as-null-pointer-constant.
From-SVN: r181215
|
|
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* init.c (build_new_1, build_vec_delete_1, build_delete):
Use nullptr_node.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51045
* g++.dg/warn/Wzero-as-null-pointer-constant-2.C: New.
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Option Summary, C++ Language Options]):
Add -Wzero-as-null-pointer-constant.
From-SVN: r181214
|
|
members)
/cp
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51047
* search.c (lookup_member): Change to take also a tsubst_flags_t
parameter.
(lookup_field, lookup_fnfields): Adjust calls.
* typeck.c (lookup_destructor, finish_class_member_access_expr,
build_ptrmemfunc_access_expr): Likewise.
* class.c (handle_using_decl, maybe_note_name_used_in_class):
Likewise.
* pt.c (resolve_typename_type): Likewise.
* semantics.c (lambda_function): Likewise.
* parser.c (cp_parser_perform_range_for_lookup,
cp_parser_lookup_name): Likewise.
* friend.c (make_friend_class): Likewise.
* name-lookup.c (pushdecl_maybe_friend_1, get_class_binding,
do_class_using_decl, lookup_qualified_name): Likewise.
* cp-tree.h (lookup_member): Adjust declaration.
/testsuite
2011-11-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51047
* g++.dg/cpp0x/sfinae29.C: New.
From-SVN: r181213
|
|
comment.
* config/sparc/sparc.c (output_v8plus_shift): Take INSN parameter first
and adjust head comment.
(output_v8plus_mult): Change NAME into OPCODE and adjust throughout.
(vector_init_bshuffle): Add head comment.
(vector_init_move_words): Likewise.
(vector_init_prepare_elts): Likewise. Take LOCS parameter first.
(sparc_expand_vector_init): Likewise. Adjust call to above function.
(sparc_expand_vector_init_vis2): Likewise.
(sparc_expand_vector_init_vis1): Likewise.
(sparc_expand_conditional_move): Likewise.
(sparc_expand_vcond): Likewise.
* config/sparc/sparc-protos.h (output_v8plus_shift): Adjust.
* config/sparc/sparc.md (ashldi3_v8plus): Adjust call to
output_v8plus_shift.
(ashrdi3_v8plus): Likewise.
(lshrdi3_v8plus): Likewise.
From-SVN: r181211
|
|
* config/arm/arm-cores.def: Add -mcpu=cortex-a7.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Likewise.
* config/arm/bpabi.h (BE8_LINK_SPEC): Add Cortex A-7.
* doc/invoke.texi: Document -mcpu=cortex-a7.
From-SVN: r181210
|
|
2011-11-09 Janus Weil <janus@gcc.gnu.org>
PR fortran/50960
* gfortran.dg/typebound_call_22.f03: New test case.
From-SVN: r181208
|
|
frontend ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* gfortran.texi (Data consistency and durability): New section.
testsuite ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* gfortran.dg/inquire_size.f90: Don't flush the unit.
libgfortran ChangeLog:
2011-11-09 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/50016
* io/inquire.c (inquire_via_unit): Flush the unit and use ssize.
* io/unix.c (buf_flush): Don't call _commit.
From-SVN: r181207
|
|
gimple_call_cannot_inline_p is returning a conservative correct...
2011-11-09 Richard Guenther <rguenther@suse.de>
Revert
2011-11-09 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_call): Verify that
gimple_call_cannot_inline_p is returning a conservative
correct result according to gimple_check_call_matching_types.
From-SVN: r181206
|
|
ipa-inline-analysis.c:1977 with -finline-small-functions -fno-ipa-pure-const and passing incompatible function ptr)
2011-11-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51039
* tree-cfg.c (verify_gimple_call): Verify that
gimple_call_cannot_inline_p is returning a conservative
correct result according to gimple_check_call_matching_types.
* ipa-inline-analysis.c (estimate_function_body_sizes): Remove
code dealing with un-inlinablility.
* gimple-streamer-in.c (input_gimple_stmt): Update the
non-inlinable flag.
* gcc.dg/pr51039.c: New testcase.
From-SVN: r181205
|
|
ipa-inline-analysis.c:1977 with -finline-small-functions -fno-ipa-pure-const and passing incompatible function ptr)
2011-11-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51039
* gimple-low.c (gimple_check_call_args): Remove.
(gimple_check_call_matching_types): Always return true.
* tree-inline.c (setup_one_parameter): Always perform a
valid gimple type change.
(declare_return_variable): Likewise.
From-SVN: r181204
|
|
* config/rs6000/vector.md (vcondv4sfv4si, vcondv4siv4sf,
vconduv4sfv4si): New patterns.
* config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Handle
different dest_mode from comparison mode.
* lib/target-supports.exp (check_effective_target_vect_cond_mixed):
Enable also for powerpc*-*-*.
From-SVN: r181202
|
|
(r178939))
PR fortran/50540
* resolve.c (resolve_forall_iterators): Transform internal errors
to normal errors.
* gfortran.dg/forall_16.f90: New test.
From-SVN: r181200
|
|
2011-11-09 Janus Weil <janus@gcc.gnu.org>
PR fortran/50960
* class.c (gfc_find_derived_vtab): Make the vtab symbols FL_PARAMETER.
* expr.c (gfc_simplify_expr): Prevent vtabs from being replaced with
their value.
* resolve.c (resolve_values): Use-associated symbols do not need to
be resolved again.
(resolve_fl_parameter): Make sure the symbol has a value.
From-SVN: r181199
|
|
required for init expressions)
PR fortran/38718
* intrinsic.c (add_functions): Add gfc_simplify_dreal.
* intrinsic.h (gfc_simplify_dreal): New proto.
* simplify.c (gfc_simplify_dreal): New function.
* gfortran.dg/initialization_29.f90: Expand test.
From-SVN: r181198
|
|
addressable.
2011-11-09 Richard Guenther <rguenther@suse.de>
* gimple-fold.c (canonicalize_constructor_val): Mark
address-taken variables addressable.
From-SVN: r181197
|
|
gcc/cp/
* parser.c (cp_parser_alias_declaration): Require ';' at the end
of the declaration.
libstdc++-v3/
* include/ext/pointer.h (rebind): Append missing ';'.
gcc/testsuite
* g++.dg/cpp0x/alias-decl-12.C: New test.
* g++.dg/ext/alias-decl-attr4.C: Append missing ';'.
From-SVN: r181195
|
|
From-SVN: r181194
|
|
gcc/cp/
* decl2.c (check_member_template): Accept alias templates and ...
* parser.c (cp_parser_alias_declaration): ... use it here.
gcc/testsuite/
* g++.dg/cpp0x/alias-decl-debug-0.C: New test.
From-SVN: r181193
|
|
PR fortran/21881
* trans-types.c (gfc_get_dtype): Issue a fatal error instead of
an internal error.
From-SVN: r181192
|
|
with -O3)
PR tree-optimization/51015
* tree-vect-loop.c (vect_determine_vectorization_factor): Expect
vectype to be set for pattern def stmts.
From-SVN: r181191
|
|
* lib/target-supports.exp (check_effective_target_sparc_vis): New.
(check_effective_target_vect_cmdline_needed): Use it when sparc*-*-*
From-SVN: r181190
|
|
* function.c (bb_active_p): Delete.
(dup_block_and_redirect, active_insn_between): New functions.
(convert_jumps_to_returns, emit_return_for_exit): New functions,
split out from..
(thread_prologue_and_epilogue_insns): ..here. Delete
shadowing variables. Don't do prologue register clobber tests
when shrink wrapping already failed. Delete all last_bb_active
code. Instead compute tail block candidates for duplicating
exit path. Remove these from antic set. Duplicate tails when
reached from both blocks needing a prologue/epilogue and
blocks not needing such.
* ifcvt.c (dead_or_predicable): Test both flag_shrink_wrap and
HAVE_simple_return.
* bb-reorder.c (get_uncond_jump_length): Make global.
* bb-reorder.h (get_uncond_jump_length): Declare.
* cfgrtl.c (rtl_create_basic_block): Comment typo fix.
(rtl_split_edge): Likewise. Warning fix.
(rtl_duplicate_bb): New function.
(rtl_cfg_hooks): Enable can_duplicate_block_p and duplicate_block.
* Makefile.in (function.o): Update dependencies.
From-SVN: r181188
|
|
From-SVN: r181187
|
|
PR fortran/50404
* io.c (gfc_resolve_close): CLOSE requires a UNIT.
* gfortran.dg/io_constraints_3.f90: Improve testcase.
From-SVN: r181183
|
|
PR fortran/50409
* expr.c (gfc_simplify_expr): Substrings can't have negative
length.
* gcc/testsuite/gfortran.dg/string_5.f90: Improve testcase.
From-SVN: r181181
|
|
* doc/tm.texi.in (MODE_CODE_BASE_REG_CLASS): Add address space
argument.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
* doc/tm.texi: Regenerate.
* config/cris/cris.h (MODE_CODE_BASE_REG_CLASS): Add address
space argument.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
* config/bfin/bfin.h (MODE_CODE_BASE_REG_CLASS): Likewise.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
* config/avr/avr.h (MODE_CODE_BASE_REG_CLASS): Add address space
argument.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Ditto.
* config/avr/avr-protos.h (avr_mode_code_base_reg_class): Ditto.
(avr_regno_mode_code_ok_for_base_p): Ditto.
* config/avr/avr.c (avr_mode_code_base_reg_class): Ditto.
(avr_regno_mode_code_ok_for_base_p): Ditto.
(avr_reg_ok_for_addr_p): Pass AS down to
avr_regno_mode_code_ok_for_base_p.
* addresses.h (base_reg_class): Add address space argument.
Pass to MODE_CODE_BASE_REG_CLASS.
(ok_for_base_p_1): Add address space argument. Pass to
REGNO_MODE_CODE_OK_FOR_BASE_P.
(regno_ok_for_base_p): Add address space argument. Pass to
ok_for_base_p_1.
* regrename.c (scan_rtx_address): Add address space argument.
Pass address space to regno_ok_for_base_p and base_reg_class.
Update recursive calls.
(scan_rtx): Pass address space to scan_rtx_address.
(build_def_use): Likewise.
* regcprop.c (replace_oldest_value_addr): Add address space
argument. Pass to regno_ok_for_base_p and base_reg_class.
Update recursive calls.
(replace_oldest_value_mem): Pass address space to
replace_oldest_value_addr.
(copyprop_hardreg_forward_1): Likewise.
* reload.c (find_reloads_address_1): Add address space argument.
Pass address space to base_reg_class and regno_ok_for_base_p.
Update recursive calls.
(find_reloads_address): Pass address space to base_reg_class,
regno_ok_for_base_p, and find_reloads_address_1.
(find_reloads): Pass address space to base_reg_class.
(find_reloads_subreg_address): Likewise.
* ira-costs.c (record_reg_classes): Update calls to base_reg_class.
(ok_for_base_p_nonstrict): Add address space argument. Pass to
ok_for_base_p_1.
(record_address_regs): Add address space argument. Pass to
base_reg_class and ok_for_base_p_nonstrict. Update recursive calls.
(record_operand_costs): Pass address space to record_address_regs.
(scan_one_insn): Likewise.
* caller-save.c (init_caller_save): Update call to base_reg_class.
* ira-conflicts.c (ira_build_conflicts): Likewise.
* reload1.c (maybe_fix_stack_asms): Likewise.
Co-Authored-By: Georg-Johann Lay <avr@gjlay.de>
From-SVN: r181175
|
|
a function template)
PR c++/50835
* typeck.c (build_x_conditional_expr): Preserve lvalue/xvalueness.
* tree.c (lvalue_kind) [NON_DEPENDENT_EXPR]: Return clk_ordinary
in C++98.
From-SVN: r181174
|
|
* gengtype.c (write_field_root): Avoid out-of-scope access of newv.
* tree-stdarg.c (execute_optimize_stdarg): Accept clobbers.
* tree.h (TREE_CLOBBER_P): New macro.
* gimple.h (gimple_clobber_p): New inline function.
* gimplify.c (gimplify_bind_expr): Add clobbers for all variables
that go out of scope and live in memory.
* tree-ssa-operands.c (get_expr_operands): Transfer volatility also
for constructors.
* cfgexpand.c (decl_to_stack_part): New static variable.
(add_stack_var): Allocate it, and remember mapping.
(fini_vars_expansion): Deallocate it.
(stack_var_conflict_p): Add early outs.
(visit_op, visit_conflict, add_scope_conflicts_1,
add_scope_conflicts): New static functions.
(expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy.
(expand_used_vars): Add scope conflicts.
(expand_gimple_stmt_1): Expand clobbers to nothing.
(expand_debug_expr): Ditto.
* tree-pretty-print.c (dump_generic_node): Dump clobbers nicely.
* tree-ssa-live.c (remove_unused_locals): Remove clobbers that
refer to otherwise unused locals.
* tree-sra.c (build_accesses_from_assign): Ignore clobbers.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Clobbers of
SSA names aren't necessary.
(propagate_necessity): Accept and ignore constructors on the rhs,
tidy.
* gimple.c (walk_gimple_op): Accept constructors like mem_rhs.
* tree-ssa-structalias.c (find_func_aliases): Clobbers don't store
any known value.
* tree-ssa-sccvn.c (vn_reference_lookup_3): Ditto, in particular they
don't zero-initialize something.
* tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Ignore
clobber RHS, we don't want PHI nodes with those.
testsuite/
* gcc.dg/tree-ssa/20031015-1.c: Adjust.
* g++.dg/tree-ssa/ehcleanup-1.C: Ditto.
* g++.dg/eh/builtin1.C: Rewrite to not use local variables.
* g++.dg/eh/builtin2.C: Ditto.
* g++.dg/eh/builtin3.C: Ditto.
From-SVN: r181172
|
|
TARGET_PREFER_AVX128 return 32-byte integer vectors.
* config/i386/i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX
if not TARGET_PREFER_AVX128 return 32-byte integer vectors.
* gcc.target/i386/avx-cvt-2.c: Adjust for 32-byte integer vectors
being prefered even for -mavx.
* gcc.target/i386/avx-cvt-3.c: New test.
From-SVN: r181170
|
|
fold-const.c:1897 with -fno-early-inlining and passing incompatible function ptr)
2011-11-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/51012
* ipa-prop.c (update_indirect_edges_after_inlining): Fixup
non-inlinable state.
* cgraph.c (cgraph_make_edge_direct): Likewise.
* gcc.dg/pr51012-1.c: New testcase.
* gcc.dg/pr51012-2.c: Likewise.
From-SVN: r181166
|
|
pp_c_expression#]')
2011-11-08 Richard Guenther <rguenther@suse.de>
PR middle-end/51010
c-family/
* c-pretty-print.c (pp_c_expression): Handle SSA_NAMEs.
cp/
* error.c (dump_expr): Handle SSA_NAMEs.
* c-c++-common/uninit-pr51010.c: New testcase.
From-SVN: r181165
|
|
effect)
PR rtl-optimization/47698
* ifcvt.c (noce_operand_ok): Move around comment.
From-SVN: r181161
|
|
-flto-partition=1to1 -fno-use-linker-plugin)
2011-11-08 Richard Guenther <rguenther@suse.de>
PR lto/50999
* lto-opts.c (append_to_collect_gcc_options): Split out from...
(lto_write_options): ... here. Prepend frontend specific flags.
From-SVN: r181160
|
|
vinsert[fi]128 instead of vperm2[fi]128.
* config/i386/sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask
0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128.
From-SVN: r181158
|
|
* tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument.
Handle vectorization of SLP calls.
(vect_analyze_stmt): Adjust caller, add call to it for SLP too.
(vect_transform_stmt): Adjust vectorizable_call caller, remove
assertion.
* tree-vect-slp.c (vect_get_and_check_slp_defs): For calls start
with op_idx 3.
(vect_build_slp_tree): Allow CALL_EXPR.
* lib/target-supports.exp (check_effective_target_vect_call_sqrtf,
check_effective_target_vect_call_copysignf,
check_effective_target_vect_call_lrint): New procedures.
* gcc.dg/vect/vect.exp: Run fast-math-bb-slp* tests using
$VECT_SLP_CFLAGS with -ffast-math.
* gcc.dg/vect/fast-math-vect-call-1.c: New test.
* gcc.dg/vect/fast-math-vect-call-2.c: New test.
* gcc.dg/vect/fast-math-bb-slp-call-1.c: New test.
* gcc.dg/vect/fast-math-bb-slp-call-2.c: New test.
From-SVN: r181157
|
|
vars setup before adding to them.
2011-11-08 Richard Guenther <rguenther@suse.de>
* gimple-fold.c (canonicalize_constructor_val): Make sure
we have referenced vars setup before adding to them.
From-SVN: r181155
|
|
From-SVN: r181154
|
|
gcc/cp/
* decl.c (start_decl): Update comment.
* error.c (dump_alias_template_specialization): Dump the context
of the specialization.
* parser.c (cp_parser_alias_declaration): Call pop_scope on the
pushed scope yielded by start_decl.
gcc/testsuite
* g++.dg/cpp0x/alias-decl-11.C: New test.
From-SVN: r181152
|
|
/cp
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50864
* parser.c (cp_parser_postfix_dot_deref_expression): Reject invalid
uses of '->' and '.' as postfix-expression in namespace scope.
/testsuite
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50864
* g++.dg/parse/template26.C: New.
* g++.dg/template/crash45.C: Adjust dg-error string.
From-SVN: r181151
|