| Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r110945
|
|
execution at -O1, -O2 and -Os)
PR rtl-optimization/26235
* loop-invariant.c (hash_invariant_expr_1): Handle 'i' and 'n' formats.
(invariant_expr_equal_p): Handle 'i' and 'n' formats. Fail on unknown
format.
From-SVN: r110939
|
|
* tree-vrp.c (extract_range_from_binary_expr): Remove handling of
TRUTH_XOR_EPR.
From-SVN: r110938
|
|
* cp-tree.h (warn_hidden): Remove prototype.
* class.c (warn_hidden): Make static.
From-SVN: r110936
|
|
* cp-tree.h (build_type_conversion): Remove prototype.
* cvt.c (build_type_conversion): Add prototype, make static.
From-SVN: r110935
|
|
* cp-tree.h (push_tinst_level): Remove prototype.
(pop_tinst_level): Likewise.
* pt.c (push_tinst_level): Add prototype, make static.
(pop_tinst_level): Likewise.
From-SVN: r110934
|
|
* decl.c (grokdeclarator): Return NULL_TREE instead of 0.
* typeck.c (unary_complex_lvalue): Likewise.
From-SVN: r110933
|
|
to indicate failure.
* lex.c (parse_strconst_pragma): Return error_mark_node instead of
"(tree)-1" to indicate failure. Simplify.
(handle_pragma_interface): Test for error_mark_node instead of
"(tree)-1".
(handle_pragma_implementation): Likewise.
From-SVN: r110932
|
|
TREE_PUBLIC)
2006-02-13 Andrew Pinski <pinskia@physics.uc.edu>
Jakub Jelinek <jakub@redhat.com>
PR fortran/26246
* trans-decl.c (gfc_get_symbol_decl, gfc_get_fake_result_decl): Use
gfc_add_decl_to_function rather than gfc_finish_var_decl on length.
* gfortran.dg/pr26246_1.f90: New test.
* gfortran.dg/pr26246_2.f90: New test.
From-SVN: r110929
|
|
function)
PR middle-end/26092
* gimplify.c (gimplify_call_expr): Don't call get_callee_fndecl
twice if decl is a builtin. When trying again, call get_callee_fndecl
first to verify it is still a builtin.
* gcc.c-torture/compile/20060208-1.c: New test.
From-SVN: r110927
|
|
2006-02-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26074
PR fortran/25103
* resolve.c (resolve_symbol): Extend the requirement that module
arrays have constant bounds to those in the main program. At the
same time simplify the array bounds, to avoiding trapping parameter
array references, and exclude automatic character length from main
and modules. Rearrange resolve_symbol and resolve_derived to put as
each flavor together, as much as is possible and move all specific
code for flavors FL_VARIABLE, FL_PROCEDURE and FL_PARAMETER into new
functions.
(resolve_fl_var_and_proc, resolve_fl_variable, resolve_fl_procedure):
New functions to do work of resolve_symbol.
(resolve_index_expr): New function that is called from resolved_symbol
and is extracted from resolve_charlen.
(resolve_charlen): Call this new function.
(resolve_fl_derived): Renamed resolve_derived to be consistent with
the naming of the new functions for the other flavours. Change the
charlen checking so that the style is consistent with other similar
checks. Add the generation of the gfc_dt_list, removed from resolve_
symbol.
PR fortran/20861
* resolve.c (resolve_actual_arglist): Prevent internal procedures
from being dummy arguments.
PR fortran/20871
* resolve.c (resolve_actual_arglist): Prevent pure but non-intrinsic
procedures from being dummy arguments.
PR fortran/25083
* resolve.c (check_data_variable): Add test that data variable is in
COMMON.
PR fortran/25088
* resolve.c (resolve_call): Add test that the subroutine does not
have a type.
2006-02-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26074
PR fortran/25103
* gfortran.dg/module_parameter_array_refs_1.f90: New test.
* gfortran.dg/bad_automatic_objects_1.f90: New test.
* gfortran.dg/automatic_module_variable.f90: Change error message.
PR fortran/20861
* gfortran.dg/internal_dummy_1.f90: New test.
PR fortran/20871
* gfortran.dg/elemental_non_intrinsic_dummy_1.f90: New test.
PR fortran/25083
* gfortran.dg/uncommon_block_data_1.f90: New test.
* gfortran.dg/equiv_constraint_7.f90: Correct non-compliance of test
with standard.
PR fortran/25088
* gfortran.dg/typed_subroutine_1.f90: New test.
From-SVN: r110926
|
|
2006-02-13 Geoffrey Keating <geoffk@apple.com>
* dwarf2out.c (base_type_die): Don't add AT_name here.
(subrange_type_die): Don't add AT_name here.
(modified_type_die): Rearrange code flow. Do add AT_name here.
Index: gcc/testsuite/ChangeLog
2006-02-13 Geoffrey Keating <geoffk@apple.com>
* objc.dg/dwarf-1.m: New.
From-SVN: r110925
|
|
int_mode_for_mode ICE strict_low_part loop-invariant)
PR rtl-optimization/26247
PR rtl-optimization/26248
* loop-invariant.c (may_assign_reg_p): Do not allow VOIDmode.
From-SVN: r110924
|
|
* config/floatunditf.c: Use if __LDBL_MANT_DIG__ == 113.
* config/fixtfdi.c: Likewise.
* config/fixunstfdi.c: Likewise.
* config/floatditf.c: Likewise.
From-SVN: r110923
|
|
PR middle-end/24427
* fold-const.c (fold_binary) <BIT_IOR_EXPR>: Transform (X&C1)|C2
into (X,C2) if C1 is a subset of the bits of C2. Transform
(X&C1)|C2 into X|C2 if C1|C2 == ~0. Canonicalize (X&C1)|C2 as
(X&(C1&~C2))|C2.
<BIT_AND_EXPR>: Canonicalize (X|C1)&C2 as (X&C2)|(C1&C2).
* gcc.dg/tree-ssa/andor-1.c: New test case.
From-SVN: r110918
|
|
PR target/25376
* varasm.c (function_section): Check for section name before
calling select_section on targets that define
USE_SELECT_SECTION_FOR_FUNCTIONS. On other targets, use
unlikely_text_section instead of hot_function_section if
first_function_block_is_cold.
* gcc.dg/pr25376.c: New test.
* gcc.c-torture/compile/pr23237.c: Only compile test -- don't
assemble.
* lib/target-supports.exp (check_named_sections_available):
Only compile named-sections test -- don't assemble.
From-SVN: r110917
|
|
PR middle-end/25335
* reload1.c (gen_reload): Also use find_replacement in UNARY_P case.
From-SVN: r110916
|
|
From-SVN: r110915
|
|
PR rtl-optimization/26222
* function.c (assign_stack_temp_for_type): Do not reuse stack slots
after tree->rtl expansion.
* loop-invariant.c (move_invariant_reg): Use force_operand on rhs
before passing it to emit_move_insn.
From-SVN: r110912
|
|
PR c++/26151
* parser.c (cp_parser_decl_specifier_seq): Check for duplicate
decl-specifiers. Remove extra check for duplicate 'friend'.
* decl.c (grokdeclarator): Remove check for duplicate
decl-specifiers. Set longlong together with long_p.
From-SVN: r110911
|
|
2006-02-12 Gabriel Dos Reis <gdr@integrable-solutions.net>
* doc/invoke.texi (-Write-strings): Document that it is
enabled by
default.
* c.opt (-Wwrite-strings): Declare variable
warn_write_strings.
Clarify documentation.
* c-common.h (warn_write_strings): Remove.
* c-common.c (warn_write_strings): Likewise.
* c-opts.c (c_common_init_options): Enable -Wwrite-strings by
default for C++.
testsuite/
2006-02-12 Gabriel Dos Reis <gdr@integrable-solutions.net>
* g++.dg/warn/no-write-strings.C: New test.
* g++.dg/warn/write-strings.C: Likewise.
* g++.dg/warn/write-strings-default.C: Likewise.
From-SVN: r110907
|
|
switches)
PR middle-end/25724
* dojump.c (do_jump): Call do_compare_rtx_and_jump.
(do_jump_parts_zero_rtx): New function renamed from
do_jump_parts_equality_rtx. Made static. Add a mode argument.
(do_jump_parts_equality_rtx): New function split out from
do_jump_parts_equality. Old implementation renamed as above.
Call do_jump_parts_zero_rtx if either operand is zero.
(do_jump_parts_equality): Call do_jump_parts_equality_rtx to
do all of the heavy lifting.
(do_compare_rtx_and_jump): Handle multi-word comparisons by
calling either do_jump_by_parts_greater_rtx or
do_jump_by_parts_equality_rtx.
* expr.h (do_jump_by_parts_equality_rtx): Remove prototype.
* expmed.c (do_cmp_and_jump): Now multi-word optimization has
moved to do_compare_rtx_and_jump, call it directly.
* stmt.c (do_jump_if_equal): Remove static prototype. Add a
mode argument. Call do_compare_rtx_and_jump.
(emit_case_nodes): Update calls to do_jump_if_equal.
From-SVN: r110906
|
|
From-SVN: r110904
|
|
expr.c:3053)
PR rtl-optimization/26225
* loop-invariant.c (may_assign_reg_p): Do not allow BLKmode operands.
From-SVN: r110898
|
|
doesn't handle cc0.)
PR rtl-optimization/26232
* loop-invariant.c (find_invariant_insn): Ignore insns that set CC0.
From-SVN: r110897
|
|
fortran/
2006-02-12 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/25806
* trans-array.c (gfc_trans_allocate_array_storage): New argument
dealloc; free the temporary only if dealloc is true.
(gfc_trans_allocate_temp_array): New argument bool dealloc, to be
passed onwards to gfc_trans_allocate_array_storage.
(gfc_trans_array_constructor, gfc_conv_loop_setup): Update call to
gfc_trans_allocate_temp_array.
* trans-array.h (gfc_trans_allocate_temp_array): Update function
prototype.
* trans-expr.c (gfc_conv_function_call): Set new argument 'dealloc'
to gfc_trans_allocate_temp_array to false in case of functions
returning pointers.
(gfc_trans_arrayfunc_assign): Return NULL for functions returning
pointers.
testsuite/
2006-02-12 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/25806
* gfortran.dg/ret_pointer_2.f90: New test.
From-SVN: r110893
|
|
PR c++/24996
* except.c (build_throw): Add a CLEANUP_POINT_EXPR inside the
TRY_CATCH_EXPR or MUST_NOT_THROW_EXPR.
From-SVN: r110889
|
|
PR tree-opt/24365
* tree-inline.c (declare_return_variable): Just don't use the
modify target if it's a gimple complex reg and the return slot
isn't.
From-SVN: r110888
|
|
From-SVN: r110885
|
|
* doc/contrib.texi: Update my entry.
From-SVN: r110874
|
|
From-SVN: r110865
|
|
From-SVN: r110862
|
|
* tree-inline.c (estimate_num_insns_1): Make OpenMP directives
expensive.
From-SVN: r110853
|
|
* doc/invoke.texi (-floop-optimize2): Removed.
* toplev.c (process_options): Remove handling of flag_loop_optimize2.
* loop-init.c (gate_handle_loop2): Do not test flag_loop_optimize2.
Test flag_branch_on_count_reg only if HAVE_doloop_end.
* common.opt (floop-optimize2): Removed.
(fmove-loop-invariants): Enabled by default.
* gcc.dg/20050105-1.c: Do not use -floop-optimize2.
From-SVN: r110852
|
|
* tree-if-conv.c (combine_blocks): Free the result of
get_loop_exit_edges.
From-SVN: r110850
|
|
* fold-const.c (tree_expr_nonzero_p): Fix thinko.
From-SVN: r110849
|
|
-O1)
PR tree-optimization/26213
* tree-ssa-threadedge.c (simplify_control_stmt_condition): Do not
loop trying to follow SSA_NAME_VALUE chains.
* gcc.c-torture/compile/pr26213.c: New test.
From-SVN: r110846
|
|
2006-02-05 Steven G. Kargl <kargls@comcast.net>
PR fortran/20858
*decl.c (variable_decl): Improve error message. Remove initialization
typespec. Wrap long line.
*expr.c (gfc_check_pointer_assign): Permit checking of type, kind type,
and rank.
*simplify.c (gfc_simplify_null): Ensure type, kind type, and rank are set.
gfortran.dg/null_1.f90: New test.
From-SVN: r110845
|
|
fortran/
PR fortran/14771
* arith.c (eval_intrinsic): Accept INTRINSIC_PARENTHESES.
* expr.c (check_intrinsic_op): Likewise.
* module.c (mio_expr): Likewise.
testsuite/
PR fortran/14771
* gfortran.dg/parens_4.f90: New.
* gfortran.dg/parens_5.f90: New.
From-SVN: r110840
|
|
* class.c (debug_class): Remove extern.
(debug_thunks): Likewise.
From-SVN: r110836
|
|
structures that end in implicitly variable...
2006-02-10 Richard Guenther <rguenther@suse.de>
* tree-dfa.c (get_ref_base_and_extent): When computing maxsize
deal with structures that end in implicitly variable sized arrays.
From-SVN: r110834
|
|
2006-02-10 Richard Guenther <rguenther@suse.de>
* testsuite/gcc.dg/pr23372-1.c: Remove empty file.
From-SVN: r110833
|
|
From-SVN: r110826
|
|
* dump-parse-tree.c: Update copyright years.
* matchexp.c: Likewise.
* module.c: Likewise.
From-SVN: r110820
|
|
fortran/
2006-02-09 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/14771
* gfortran.h (gfc_intrinsic_op): Add INTRINSIC_PARENTHESES.
* dump-parse-tree (gfc_show_expr): Handle INTRINSIC_PARENTHESES.
* expr.c (simplify_intrinsic_op): Treat INTRINSIC_PARENTHESES as
if it were INTRINSIC_UPLUS.
* resolve.c (resolve_operator): Handle INTRINSIC_PARENTHESES.
* match.c (intrinsic_operators): Add INTRINSIC_PARENTHESES.
* matchexp.c (match_primary): Record parentheses surrounding
numeric expressions.
* module.c (intrinsics): Add INTRINSIC_PARENTHESES for module
dumping.
* trans-expr.c (gfc_conv_expr_op): Handle INTRINSIC_PARENTHESES.
testsuite/
2006-02-09 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Paul Thomas <pault@gcc.gnu.org>
PR fortran/14771
* gfortran.dg/parens_1.f90: New.
* gfortran.dg/parens_2.f90: New.
* gfortran.dg/parens_3.f90: New.
From-SVN: r110819
|
|
2006-02-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26038
* trans-stmt.c (gfc_trans_allocate): Provide assumed character length
scalar with missing backend_decl for the hidden dummy charlen.
PR fortran/25059
* interface.c (gfc_extend_assign): Remove detection of non-PURE
subroutine in assignment interface, with gfc_error, and put it in
* resolve.c (resolve_code).
PR fortran/25070
* interface.c (gfc_procedure_use): Flag rank checking for non-
elemental, contained or interface procedures in call to
(compare_actual_formal), where ranks are checked for assumed
shape arrays..
2006-02-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26038
* gfortran.dg/allocate_char_star_scalar_1.f90: New test.
PR fortran/25059
* gfortran.dg/impure_assignment_1.f90: New test.
PR fortran/25070
* gfortran.dg/assumed_shape_ranks_1.f90: New test.
From-SVN: r110816
|
|
expressions with hard registers.)
PR rtl-optimization/24762
* df-scan.c (df_bb_refs_record): Record correct registers defined on
eh edges.
From-SVN: r110815
|
|
* tree-ssa-loop-ivopts.c (struct loop_data, loop_data): Removed.
(struct ivopts_data): Add regs_used field.
(tree_ssa_iv_optimize_init): Do not allocate aux fields for loops.
(ivopts_global_cost_for_size, determine_set_costs): Use data->regs_used
instead of loop_data->regs_used;
(free_loop_data): Do not free aux fields for loops.
(tree_ssa_iv_optimize): Do not pass loops to tree_ssa_iv_optimize_init
and tree_ssa_iv_optimize_finalize.
From-SVN: r110813
|
|
2006-02-09 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.h (FUNCTION_VALUE): Don't handle CHAR_TYPE.
From-SVN: r110812
|
|
PR target/26141
gcc:
* sh.c (sh_gimplify_va_arg_expr): Don't change the result type when
computing the effective result type.
gcc/testsuite:
* g++.dg/expr/stdarg2.C: New test.
From-SVN: r110811
|